Androidアプリ「ロック解除」を検知する

なんか話題になってるけども。

imgres

Android端末のロック解除時にフルスクリーン広告 cciとDOMが共同開発 - ITmedia ニュース Android端末のロック解除時にフルスクリーン広告 cciとDOMが共同開発 - ITmedia ニュース

スマホのロック解除時にフルスクリーン広告──その開発意図を聞く - ITmedia ニュース スマホのロック解除時にフルスクリーン広告──その開発意図を聞く - ITmedia ニュース

非root で、そんなことできるのかなあ、と。

調べてみる。

android.intent.action.USER_PRESENTを使用します。


    private UnLockReceiver receiver = new UnLockReceiver();

    private class UnLockReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            Log.d("app", "スクリーンロックが解除された!");

            // レシーバー登録を解除
            unregisterReceiver(receiver);
        }
    }

スクリーンロック解除の検知 : テモテズ スクリーンロック解除の検知 : テモテズ

broadcast で受けるんだ。。。

で、こいつをを端末起動と同時に常駐させる、ってのは、


public class BootReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        String action = intent.getAction();
        if (action.equals(Intent.ACTION_BOOT_COMPLETED)) {
            context.startService(new Intent(context, MyService.class));
        }
    }
}


<receiver
    android:name=".BootReceiver"
    android:enabled="true">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>


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

Android端末の起動と同時に常駐開始するアプリ | 言葉の海のプログラマー Android端末の起動と同時に常駐開始するアプリ | 言葉の海のプログラマー

こんなかんじ?
あと他になんかあるのかなあ。。。

android - How to show a message when the phone is unlocked - Stack Overflow android - How to show a message when the phone is unlocked - Stack Overflow
android - BroadcastReceiver not receiving BOOT_COMPLETED - Stack Overflow android - BroadcastReceiver not receiving BOOT_COMPLETED - Stack Overflow


関連ワード:  Androidツール評判開発