简体   繁体   中英

Android Service Listener for the wakelock screen

Hii all,

Im developing an emergency calling application. What i want is when some person uses this specific code the phone will unlock and then only my application would be running. Im juz thinking i need a reciever for it and just wondering wether i will have to create my own Home screen and a lock screen for my application. any ideas on this please???

many thanks in advance:)

There's some caveats in just doing SCREEN_OFF and USER_PRESENT 1) Phone isn't locked right after screen off if the screen timed out by itself, there's a few second delay 2) If screen goes off for other reasons (phone call) it might not be locked at all. 3) You'd have to be monitoring them the whole time, if you're started when the phone is locked you wouldn't know

You can use the KeyguardManager http://developer.android.com/reference/android/app/KeyguardManager.html and check inKeyguardRestrictedInputMode()

Another option would be to use the PowerManager http://developer.android.com/reference/android/os/PowerManager.html and check isScreenOn() if you actually just care about screen state and not keyguard state.

You can create a BroadcastReceiver and register it with your application to listen for Intent.ACTION_SCREEN_OFF , Intent.ACTION_SCREEN_ON , and Intent.ACTION_USER_PRESENT . Between SCREEN_OFF and USER_PRESENT, the phone is locked.

There is no sanctioned way to replace the lock screen. See Is there a way to override the lock pattern screen?

The previous answer was to another question that got merged with this one:

I would look into ACTION_NEW_OUTGOING_CALL , and also at this Android Developers blog post about receiver priority.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM