Androidのユーザーのバックグラウンドで永久に実行されるサービスを作成して、画面のオン/オフなどを確認する方法はありますか?Androidサービスがオンまたはオフになっているかどうかを確認する
アナリティクスを作成しようとしています。そのため、ユーザーが画面をオンまたはオフにするタイミングを知る必要があります。
おかげで、私はあなたがオンとオフスクリーンを検出するために、Androidの放送受信機を使用することができ、すべての入力
Androidのユーザーのバックグラウンドで永久に実行されるサービスを作成して、画面のオン/オフなどを確認する方法はありますか?Androidサービスがオンまたはオフになっているかどうかを確認する
アナリティクスを作成しようとしています。そのため、ユーザーが画面をオンまたはオフにするタイミングを知る必要があります。
おかげで、私はあなたがオンとオフスクリーンを検出するために、Androidの放送受信機を使用することができ、すべての入力
に感謝します。ここで が
https://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/
それの良い例です、あなたはまた、あなたが放送受信機を作成し、ステータスをオンまたはオフスクリーンを管理する必要があり、このスレッド https://stackoverflow.com/a/9478013/2784838
に従うことができます。
Declare receiver in manifest:
<receiver android:name=".DeviceWakeUpReceiver" />
public class DeviceWakeUpReceiver extends BroadcastReceiver {
private static final String TAG = "DeviceWakeUpService";
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "onReceive() called");
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
//End service when user phone screen off
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
//Start service when user phone screen on
}
}
}
画面のオフ/オンイベントを受信するためにBroadcastReceiverを使用することはできません。 ブートリッスナー経由で開始され、Intent.ACTION_SCREEN_OFFおよびIntent.ACTION_SCREEN_ONを登録するインテントサービスを作成します。
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF);
registerReceiver(new ScreenOffOnReceiver(), filter);
class ScreenOffOnReiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
// Screen OFF
else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
// Screen ON
}
}
}
の可能性のある重複[アンドロイド:放送の画面のための受信機とオフ画面](http://stackoverflow.com/questions/9477922/android-broadcast-receiver-for-screen-on-and-screen-オフ) – X3Btel