Android activity over default lock screen

android, android-activity, android-windowmanager, dialog, lockscreen

Solution

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON|
            WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD|
            WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED|
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);

try using this flags to disable lock screen when the activity is started.

After API level 17 you can use

<activity
        android:name=".yourActivityName"
        android:showOnLockScreen="true"
        android:screenOrientation="sensorPortrait" >

showOnLockScreen like in the example...

Problem

How can I display an `Activity` or `Dialog` to be visible over the lock screen? I have already tried displaying my lock activity when screen turns on by setting various window type in `Activity.onCreate()` method: `TYPE_PRIORITY_PHONE` `TYPE_SYSTEM_ALERT` `TYPE_KEYGUARD` and others together with `SYSTEM_ALERT_WINDOW` and `INTERNAL_SYSTEM_WINDOW` permissions. My activity is visible after I unlock the device. UPDATE: I actually already managed to display my own Activity instead of default lock screen. It work perfectly unless you use HOME button.

Original source