3

我正在开发一个Android应用程序,用户可以在手机丢失后找到手机,我打算实现远程响铃功能,我想做一些事情,比如闹钟响起时,无论音量增大或减小键是按下时,警报响起时音量仍将保持最大...但我不知道如何实现这一点...我只能检测到按下音量键的事件...请为此提供帮助..谢谢...

@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);
}
4

1 回答 1

3

你的代码对我来说很好。我把它扔进了一个基本的应用程序,它成功地拦截了按键而不改变我设备上的音量。

您是否尝试过覆盖onKeyUp以及onKeyDown

编辑:请注意,这在服务中不起作用您根本无法拦截服务中的硬件音量按钮按下。

于 2012-11-08T03:47:41.693 回答