Je souhaite lancer Mon application lorsque nous tapons sur la balise NFC même Le téléphone est verrouillé comme dans Application Google Wallet .
J'ai essayé des manières suivantes:
1) Appuyez sur la balise NFC pour lancer mon application après avoir appuyé sur le bouton d'alimentation - Erreur :
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) Appuyez sur la balise NFC après avoir appuyé sur le bouton d'alimentation. Je peux maintenant voir l'écran Verrouiller/Déverrouiller - Erreur :
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
Si je déverrouille l'écran et tape sur la balise NFC tout fonctionne correctement
Comment gérer le bouton d'alimentation et verrouiller/déverrouiller l'écran afin de lancer mon application lorsque le téléphone est verrouillé?
Ceci n'est pas supporté. Je ne pense pas que même Google Wallet fonctionne de cette façon, êtes-vous sûr de cela? Il s’agit en fait d’une fonctionnalité de sécurité: vous ne voulez pas que quelqu'un qui a volé votre téléphone puisse effectuer des paiements avec celui-ci sans pouvoir le déverrouiller.
Selon Google, les appareils Android doivent être déverrouillés pour pouvoir analyser une balise NFC [1]. Le Google Wallet concerne également la confidentialité et la sécurité et ne fonctionne que dans l'état déverrouillé [2 ].
[1] http://developer.Android.com/guide/topics/connectivity/nfc/nfc.html
Je cherchais à mettre en œuvre la même fonctionnalité sur l'une de mes applications. Après quelques recherches, j'ai découvert ces liens:
http://www.xda-developers.com/Android/use-nfc-with-screen-off-or-in-lock-screen-on-galaxy-nexus/
Notez également que le nouveau Moto X était une fonctionnalité appelée "Skip" qui permet le même comportement. Vous pouvez voir une démonstration sur cette vidéo:
https://www.youtube.com/watch?v=-JUgspIGxcE
J'espère que ça peut aider
D'accord avec Nikolay Elenkov , comme vous ne pouvez pas vous arrêter sur le bouton Alimentation pour discuter ici vous ne pouvez pas déverrouiller le téléphone pour lancer votre application lors du lancement de votre application.
Cela pourrait probablement fonctionner si vous utilisez:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);