android - 如何通过单击手机侧面的上下按钮来禁用关闭声音?

标签 android audio

我想在某些情况下启动警报。警报启动后,必须禁止使用上下按钮关闭警报。
我找到了一些代码,但是没有用。

AudioManager am =(AudioManager) ctxt.getSystemService(ctxt.AUDIO_SERVICE);
        am.setStreamVolume(
                AudioManager.STREAM_MUSIC,
                am.getStreamMaxVolume(AudioManager.STREAM_MUSIC),
                0);
        am.setStreamMute(AudioManager.STREAM_MUSIC, false);

编辑:仅setStremMute部分无效,没有错误。

最佳答案

您可以捕获 Activity 中的音量调高和调低关键事件:

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    int keyCode = event.getKeyCode();
        switch (keyCode) {
        case KeyEvent.KEYCODE_VOLUME_UP:
            // Ignore
            return true;
        case KeyEvent.KEYCODE_VOLUME_DOWN:
            // Ignore
            return true;
        default:
            return super.dispatchKeyEvent(event);
        }
    }

关于android - 如何通过单击手机侧面的上下按钮来禁用关闭声音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32481162/

相关文章:

iphone - 在 iPhone 上将音频文件与 NSData 正确组合为一个

unix - 添加/叠加两个wav文件

android - 使用录音机录制音频,然后将其上传到服务器android

android - 带 AppCompatActivity 的 ActionBarDrawerToggle 和带 fragment 的工具栏后退按钮

java - 如何返回 DocumentSnapShot 作为方法的结果?

android - 是否有 Rest API 来验证应用内购买?

android - 当我在上面打字时,EditText 会变大

javascript - 在表单中使用多个按钮时如何防止触发提交/ng-提交事件

macos - 我可以在应用程序中使用Apple内置的AU吗?

javascript - 如何在 JavaScript 中检测源文件类型