我正在为我的应用程序设置警报功能,在某个时间,警报活动开始,随后启动振动或铃声。我遇到的问题是,如果用户按下主页按钮,振动或铃声不会停止。
我已覆盖onKeyDown
,以便在按下按钮时停止闹钟,但不拦截主页按钮代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (mVibrator != null)
mVibrator.cancel();
if (mPlayer != null) {
mPlayer.stop();
mPlayer.release();
}
return super.onKeyDown(keyCode, event);
}
当发生这种情况时,如何停止振动/铃声?
答案 0 :(得分:1)
我建议在onPause()
停止闹钟。只要另一个应用程序到达前台(包括主屏幕),就会调用它。
答案 1 :(得分:0)
你不能拦截主页按钮 - 因为任何应用程序应该允许用户按回家立即进入主屏幕。如果你想要相同的效果,你应该考虑在onStop()中停止闹钟。
答案 2 :(得分:-1)