アプリケーションの起動後も常にブロードキャストレシーバーを稼働させておく必要があります。アプリケーションが終了した後もブロードキャストレシーバーを稼働させ続ける
ここでは、サービスを停止/メインアプリ起動でサービス
を使用できるアプリケーションで受信
public class ScreenEventsReceiver extends BroadcastReceiver {
public static boolean wasScreenOn = true;
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
wasScreenOn = false;
Log.d("ScreenEventReceiver", "ON");
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
wasScreenOn = true;
Log.d("ScreenEventReceiver", "ON");
}
}
}
[サービス](https://developer.android.com/reference/android/app/Service.html) –
を作成することもできますが、イベントの受信はどうですか? –
画面のオン/オフイベントを本当に監視する必要がありますか?彼らがマニフェストに含まれていないレシーバを登録するように強制する理由は、人々が常にこれらのイベントを監視してデバイスを減速させたくないからです。 – natez0r