Launch android app on screen unlock

后端 未结 2 1653
无人共我
无人共我 2021-01-01 05:49

I want to build a lock screen replacement application. Is there any way to create a listener/service that would launch my app whenever the user wakes up/unlocks the screen?

相关标签:
2条回答
  • 2021-01-01 06:15

    See source code of mylockforandroid and you will need use DeviceAdminReceiver for disableing default android screenlock.

    for starting your activity when user unlock screen register an Intent.ACTION_SCREEN_ON and Intent.ACTION_SCREEN_OFF as:

    add this code in manifast.xml register ScreenReceiver as:

    <receiver android:name=".ScreenReceiver">
     <intent-filter>
     <action android:name="android.intent.action.SCREEN_OFF"/>
     <action android:name="android.intent.action.SCREEN_ON"/>
     </intent-filter>
     </receiver>
    

    and add an ScreenReceiver.java as:

     public class ScreenReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
             if (intent.getAction().equals(Intent.ACTION_SCREEN_ON))
             {
                Intent intent = new Intent();  
                intent.setClass(context, ScreenLockActivity.class);
                startActivity(intent);          
             }
        }
    }
    
    0 讨论(0)
  • 2021-01-01 06:20

    I believe you are looking for the ACTION_USER_PRESENT intent action.

    public static final String ACTION_USER_PRESENT

    Since: API Level 3 Broadcast Action: Sent when the user is present after device wakes up (e.g when the keyguard is gone).

    That said, Android does not support replacing the lock screen at this time. Any apps on the market that claim to do this make use of security loop holes and are not secure. You can read this thread for more information. (in particular, you should read Mark Murphy's posts). Sorry.

    0 讨论(0)
提交回复
热议问题