如何在Android上禁用物理卷按钮?

use*_*267 3 android

我正在开发一个Android应用程序,我的应用程序一旦启动就会发出警报,但我想禁用外部音量按钮,这样当手机发出警报时,用户无法调低警报音量.我已经在Android手机上测试了Android版本2.3.5,但它无法正常工作.以下是我的编码.希望有人可以帮助我...谢谢.

@Override
public boolean onKeyDown(int keyCode, KeyEvent event){

    if (keyCode == KeyEvent.KEYCODE_VOLUME_UP){
        Toast.makeText(this, "Volume Up", Toast.LENGTH_LONG).show();
        return true;
    }

    if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){
        Toast.makeText(this, "Volume Down", Toast.LENGTH_LONG).show();
        return true;
    }

    return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)

Mar*_*ski 10

尝试覆盖dispatchKeyEvent(KeyEvent event):

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    boolean result;
     switch( event.getKeyCode() ) {
        case KeyEvent.KEYCODE_VOLUME_UP:
        case KeyEvent.KEYCODE_VOLUME_DOWN:
            result = true;
            break;

         default:
            result= super.dispatchKeyEvent(event);
            break;
     }

     return result;
}
Run Code Online (Sandbox Code Playgroud)

看到这篇文章.