2015-11-06 33 views
0

我使用下面的代碼靜音我的應用程序:我可以重設音量嗎?

  AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
     userVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_ALARM); 


     AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
     audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0); 
     Toast.makeText(Main_Menu.this, "MUTED", Toast.LENGTH_SHORT).show(); 

的事情是,我希望能夠取消靜音應用到同一個卷,用戶是上原本。現在,我只能控制音量的用戶重置爲:

AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
     audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 4, 4); 
     Toast.makeText(Main_Menu.this, "UNMUTED", Toast.LENGTH_SHORT).show(); 

我看到某處獲得起動時的音量,然後使用該值後復位。這對我來說不起作用,因爲用戶不斷地切換回活動,並且我不能進行一次性變量重置。

有沒有什麼方法可以將用戶音量重新設置爲通過我的應用更改之前的音量?

感謝,

{Rich} 
+1

儲存在SharedPreferences音量。 –

回答

0
AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 

    userVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_ALARM); 


    AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
    audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0); 
    Toast.makeText(Main_Menu.this, "MUTED", Toast.LENGTH_SHORT).show(); 

你已經做了你所需要的只是做在上面的代碼如下修改..

audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,userVolume, 0); 
    Toast.makeText(Main_Menu.this, "MUTED", Toast.LENGTH_SHORT).show(); //user volume you will get by getStreamVolume() 
+0

出於某種原因,這是行不通的...可能是因爲userVolume正在重置或其他...任何其他想法?謝謝! –

+0

另外,它爲什麼在柔和吐司之上,它不應該在非靜音吐司之上? –

+0

是的,它應該是UNMUTED烤麪包..你有沒有試過打印userVolume的值...以及它是如何得到重置的。 – Ali786

相關問題