如果可以打开应用程序,我该如何制作,不允许用户更改设备的音量?
我发现您可以使用AudioManger将音量设置为静音:
AudioManager volumeControl = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
volumeControl.setStreamMute(AudioManager.STREAM_MUSIC, true);
然而,这不是我想要的。我希望当用户进入应用程序以锁定其当前音量并且不允许更改它时,我在后台播放旋律时增加音量。 (这就是为什么我不想让用户控制音量的原因)
我在想是否有可能覆盖音量增大,音量减小键?就像我们可以覆盖后退按钮一样。
答案 0 :(得分:5)
我在想是否有可能覆盖音量增大,音量减小键?就像我们可以覆盖后退按钮一样。
是的,你可以用同样的方式处理它。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)){
//Nothing
}
return true;
}
@sarnold如果它是一个闹钟,我可以看到用例。许多人希望闹钟中的这个功能能够阻止他们在想要唤醒时关闭声音。
无论哪种方式,请注意您可能会惹恼您的用户做这样的事情。如果可能的话应该避免。
编辑:设置音量
AudioManager am = (AudioManager) getSystemService(AUDIO_SERVICE);
am.setStreamVolume(AudioManager.STREAM_MUSIC,6,0);