问题
I want to launch My Application when we taps on NFC tag even Phone is Locked same as did in Google Wallet Application.
I tried in following ways :
1) Tap NFC tag to launch my application after pressing Power button - Error :
05-23 22:00:22.949: D/NfcService(32443): EnableDisableDiscoveryTask: enable = false
05-23 22:00:22.964: D/NfcService(32443): NFC-C polling OFF
05-23 22:00:22.996: D/PhoneStatusBar(273): disable: < EXPAND icons alerts TICKER
system_info BACK* HOME* RECENT CLOCK* >
05-23 22:00:23.988: D/NfcService(32443): NFC-EE routing OFF
[10:33:22 AM IST]
2)Tap NFC tag after pressing Power button and now i am able to see Lock/Unlock screen - Error :
05-23 22:03:59.714: D/NfcService(32443): EnableDisableDiscoveryTask: enable = true
05-23 22:03:59.730: D/NfcService(32443): NFC-EE routing OFF
05-23 22:04:03.238: D/NfcService(32443): NFC-C polling ON
If i unlock the screen and Taps on NFC tag everything works fine
How to handle power button and lock/unlock screen in order to Launch my application when phone is Locked?
回答1:
This is not supported. I don't think even Google Wallet works this way, are you sure about this? It is actually a security feature -- you don't want someone who stole your phone to be able to make payments with it without being able to unlock it.
回答2:
According to Google, Android-powered devices must be unlocked in order to scan an NFC tag [1]. Also the Google Wallet concerns privacy and security, and works only in unlocked state [2].
[1] http://developer.android.com/guide/topics/connectivity/nfc/nfc.html
[2] http://www.google.com/wallet/faq.html
回答3:
I was looking to implement the same feature on one of my applications. After some search i discovered these links:
http://www.xda-developers.com/android/use-nfc-with-screen-off-or-in-lock-screen-on-galaxy-nexus/
Also note that the new Moto X was a feature called "Skip" that allow the same behaviour. You can see a demonstration on this video:
https://www.youtube.com/watch?v=-JUgspIGxcE
Hope it can help
回答4:
Agreed with Nikolay Elenkov, As you are not able to get hold on Power button as discuss here same way you can't unlock the phone to launch your application while launching your application.
回答5:
Probably it could work if you use:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html#FLAG_SHOW_WHEN_LOCKED
来源:https://stackoverflow.com/questions/10733723/launching-nfc-when-screen-is-locked-in-android