如何在电源按钮上接收广播

时间:2014-05-25 12:07:38

标签: android broadcastreceiver android-notifications

我正在制作一个应用程序,如果按两次电源键,该应用程序将执行一些任务。请给我一些帮助。我已经做到但它不起作用。 我在这里包括我的班级文件,如果我走向错误的方向,请纠正我。
Broadcaster
Listener
我不知道如何在这里插入代码它会给出一些错误,所以我在这里包含链接。我很抱歉。请帮帮我。

2 个答案:

答案 0 :(得分:0)

Android建议避免双击并使用常规点击之外的长按。 长按一下就可以使用:

@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_POWER) {
    // Do something here...
    return true;
}
return super.onKeyLongPress(keyCode, event);
}

您还需要将其添加到清单

   <uses-permission android:name="android.permission.PREVENT_POWER_KEY" />

如果这在onKeyDown上无法正常工作 但我从来没有真正使用过它。

我个人的意见是,如果你打算发布你的应用程序,你不应该挂上电源键,因为除非它正在做某事,否则应用程序不应该阻止用户关闭屏幕

答案 1 :(得分:0)

通过在ACTION_SCREEN_ON / OFF上接收广播来解决问题。 当按下电源按钮时,根据按下电源按钮时屏幕是打开还是关闭的情况,屏幕打开/关闭。 我使用了这个工具并将逻辑放在代码中,这样如果用户按下电源按钮超过5次,则会向受信任的联系人发送短信。