Android 程式獲取、設置鈴聲和音量
通過程式獲取android系統手機的鈴聲和音量。同樣,設置鈴聲和音量的方法也很簡單!

 

AudioManagermAudioManager = (AudioManager) getSystemService(CoNtext.AUDIO_SERVICE);
通話音量

 

int max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_VOICE_CALL);
int current = mAudioManager.getStreamVolume( AudioManager.STREAM_VOICE_CALL);
Log.d(」VIOCE_CALL」, 「max : 」 + max + 」 current : 」 + current);
系統音量

 

max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_SYSTEM );
current = mAudioManager.getStreamVolume( AudioManager.STREAM_SYSTEM );
Log.d(」SYSTEM」, 「max : 」 + max + 」 current : 」 + current);
鈴聲音量

 

max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_RING );
current = mAudioManager.getStreamVolume( AudioManager.STREAM_RING );
Log.d(」RING」, 「max : 」 + max + 」 current : 」 + current);
音樂音量

 

max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_MUSIC );
current = mAudioManager.getStreamVolume( AudioManager.STREAM_MUSIC );
Log.d(」MUSIC」, 「max : 」 + max + 」 current : 」 + current);
提示聲音音量
設置音量的方法也很簡單,AudioManager提供了方法:
public void setStreamVolume(int streamType, int index, int flags)
streamType為鈴聲類型,例如:AudioManager.STREAM_VOICE_CALL、AudioManager.STREAM_SYSTEM等,index為音量大小
falgs為標誌位。



設置振動:
mVibrator = (Vibrator)mCoNtext.getSystemService(Service.VIBRATOR_SERVICE);
long[] pattern = {150,100}; OFF/ON/OFF/ON...
mVibrator.vibrate(pattern, -1);
靜音:
設置系統聲音為0就行

 

通話時設置靜音
System.out.println("isMicrophoneMute =" +audioManager.isMicrophoneMute());
audioManager.setMicrophoneMute(!audioManager.isMicrophoneMute());

 

通話時設置免提
System.out.println("isSpeakerphoneOn =" +audioManager.isSpeakerphoneOn());
audioManager.setSpeakerphoneOn(!audioManager.isSpeakerphoneOn());
別忘了修改的許可權<uses-permissionandroid:name="android.permission.MODIFY_AUDIO_SETTINGS"/>



max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_ALARM );
current = mAudioManager.getStreamVolume( AudioManager.STREAM_ALARM );
Log.d(」ALARM」, 「max : 」 + max + 」 current : 」 + current);
創作者介紹

資訊園

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()