2012-03-17 169 views

回答

3

照照AudioManager class並嘗試要麼這個

AudioManager volumeControl = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 
volumeControl.setStreamVolume(AudioManager.STREAM_MUSIC, 20, 0); 

OR

AudioManager volumeControl = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 
volumeControl.setStreamMute(AudioManager.STREAM_MUSIC, true); 
+0

我看到這已被標記爲正確的答案,但我不同意。我不相信這種技術會讓你做你所要求的。 – Tom 2012-03-17 15:56:02

1

如果要禁用更改音量:

不可能。這些應用程序創建一個服務,不斷監視音量,並將其重置爲它一旦你改變它。

如果你想改變音量: AudioManager.adjustVolume()

開啓/關閉音量: AudioManager.setStreamMute()

+0

是的,我知道他們創建一個服務。但是如何啓用和禁用該服務中的音量? – sajjoo 2012-03-17 12:15:46

+0

啓用禁用音量是什麼意思?你想把音量降到零還是你想阻止人們改變音量? – zapl 2012-03-17 12:19:54

+0

我想讓鈴聲靜音。 – sajjoo 2012-03-17 12:24:00

2

在android中有四種聲音設置1)鬧鐘2)音樂3)鈴聲4)通知 首先創建AudioManager amanager的對象; 如果你想設置的音量使用此代碼

通知

AudioManager amanager=(AudioManager)getSystemService(Context.AUDIO_SERVICE); 
amanager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, AudioManager.FLAG_SHOW_UI + AudioManager.FLAG_PLAY_SOUND); 

對於Alerm

amanager.setStreamVolume(AudioManager.STREAM_ALARM,AudioManager.FLAG_SHOW_UI + AudioManager.FLAG_PLAY_SOUND); 

音樂

amanager.setStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.FLAG_SHOW_UI + AudioManager.FLAG_PLAY_SOUND); 

對於鈴聲

amanager.setStreamVolume(AudioManager.STREAM_RING,AudioManager.FLAG_SHOW_UI + AudioManager.FLAG_PLAY_SOUND);