【发布时间】:2012-10-17 14:04:50
【问题描述】:
我已经构建了一个小应用程序,它使用 AudioManager 类将音乐流静音/取消静音。
事实上,它一直有效,直到我关闭应用程序。即我已经静音了流,我关闭了应用程序,我重新启动了应用程序并且按钮不再取消静音流。我在网上搜索过,但似乎没有人遇到过这个问题。
这是我的代码:
public class ControlloVolume extends Activity {
ToggleButton tb_mute;
Button btn_mute;
AudioManager mAudioManager;
boolean mute;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_controllo_volume);
tb_mute = (ToggleButton) findViewById(R.id.tb_mute);
btn_mute = (Button) findViewById(R.id.btn_mute);
mAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
if(mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC)==0){
mute = true;
tb_mute.setChecked(mute);
}else{
mute = false;
tb_mute.setChecked(mute);
}
}
public void onButtonClicked(View view){
if(!mute){
mAudioManager.setStreamMute(AudioManager.STREAM_MUSIC, true);
tb_mute.setChecked(true);
mute = true;
}else{
mAudioManager.setStreamMute(AudioManager.STREAM_MUSIC, false);
tb_mute.setChecked(false);
mute = false;
}
}
【问题讨论】:
-
当您说“关闭”时,您的意思是您的应用程序被销毁还是只是被放到了后台?重启应用时getStreamVolume是否返回0?