このBroadcastReceiverを使用すると、デバイス画面がオフになるたびにアクティビティを起動できます。唯一の問題は、同じアクティビティが2回開始されることです。私は、あなたが効果的にあなたScreenReceiver
の2つのインスタンスを登録するため、二回応答、および作成している活動のOnCreateのAndroid BroadcastReceiver開始アクティビティ
IntentFilter intentFilter = new IntentFilter(Intent.ACTION_SCREEN_ON);
intentFilter.addAction(Intent.ACTION_SCREEN_OFF);
mReceiver = new ScreenReceiver();
registerReceiver(mReceiver, intentFilter);
マニフェスト
<receiver android:name="utils.ScreenReceiver"
android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.SCREEN_OFF" />
<action android:name="android.intent.action.SCREEN_ON" />
</intent-filter>
</receiver>
アクティビティのライフサイクルで受信機を登録/登録解除していますか? – denispyr