D'après ce que j'ai compris jusqu'à présent, un téléphone NFC agira comme un lecteur NFC qui lira les données d'une balise NFC. Maintenant, ma question est la suivante: pouvons-nous changer cela? Pouvons-nous faire en sorte qu'un téléphone Android NFC se comporte comme la balise à partir de laquelle un lecteur NFC obtiendra des données?
Merci pour votre aide.
À ce stade, je répondrais «non» ou «difficilement», mais cela pourrait changer avec le temps, à mesure que l'API Android NFC évolue.
Il existe trois modes d'interaction NFC:
Lecteur-Écrivain: le téléphone lit les étiquettes et leur écrit. Il ne s'agit pas d'émuler une carte à la place d'un lecteur/graveur NFC. Par conséquent, vous ne pouvez pas émuler une balise dans ce mode.
Peer-to-peer: le téléphone peut lire et transmettre des messages NDEF. Si le lecteur d'étiquettes prend en charge le mode poste à poste, le téléphone pourrait alors jouer le rôle d'étiquette. Cependant, je ne sais pas si Android utilise son propre protocole par-dessus le protocole LLCP (protocole de liaison logique NFC), ce qui empêcherait alors la plupart des lecteurs de traiter le téléphone comme une balise NFC.
Mode d'émulation de carte: le téléphone utilise un élément sécurisé pour émuler une carte à puce ou un autre périphérique sans contact. Je ne suis pas sûr que cela soit lancé pour le moment, mais cela pourrait être prometteur. Cependant, l'utilisation de l'élément sécurisé peut nécessiter que le fournisseur de matériel ou une autre personne vérifie votre application/lui donne les autorisations nécessaires pour accéder à l'élément sécurisé. Ce n'est pas aussi simple que de créer une application Android NFC classique.
Plus de détails ici: http://www.mail-archive.com/[email protected]/msg152222.html
Une vraie question serait: pourquoi essayez-vous d’émuler une simple vieille étiquette nfc? Y a-t-il une application à laquelle je ne pense pas? Habituellement, vous voudriez émuler quelque chose comme une carte de transit, une clé d'accès ou une carte de crédit qui nécessiterait un élément sécurisé (je pense, mais pas certain).
Pouvons-nous créer un Android NFC comme balise à partir duquel un lecteur NFC obtiendra des données?
Le Nexus S prend en charge le mode d'égal à égal , qui, comme son nom l'indique, permet à un téléphone d'agir en tant qu'étiquette qu'un autre téléphone peut lire. Il y a eu une très bonne session Google I/O sur NFC cette année. Je vous recommande de le regarder si vous êtes intéressé par la technologie NFC.
Vérifiez le mode d'émulation de carte basée sur l'hôte (HCE) NFC disponible dans Android 4.4.
Guide de l'API: https://developer.Android.com/guide/topics/connectivity/nfc/hce.html
oui, vous pouvez. Android KitKat booste cette fonctionnalité ici
Je n'ai pas vérifié cela moi-même, mais il semble que les gens aient réussi à inclure le code caché dans Android à nouveau. Ils semblent pouvoir émuler une carte Mifare Classic (iso-14443). Je vais bientôt tester moi-même, ça a l'air très intéressant.
Si vous souhaitez le faire pour une application commerciale/gratuite, vous aurez du mal à vous aider, vos utilisateurs n'aimeront pas changer leur noyau pour prendre en charge votre application.
Mise à jour: il y aurait une astuce simple pour que votre téléphone émule un ticket:
Vous pouvez obtenir un autocollant NFC et le mettre dans ou sur le téléphone. De cette façon, vous êtes capable de le lire et de l'écrire à tout moment et d'autres appareils peuvent également le lire et l'écrire.
C’est juste une idée que j’avais jamais vue, utilisée nulle part;)
Dans la session de Google io sur NFC, une section. Il y avait une telle question:
émulation de carte? Pas de support API pour l'émulation de carte Aucune expérience utilisateur cohérente lors de l'émulation de carte et aucune histoire convaincante
Oui, jetez un œil à Push NDEF dans NFCManager. Avec Android 4, vous pouvez même créer le message NDEF à envoyer au périphérique actif au moment de l’interaction.
Si vous voulez qu'un périphérique NFC alimenté prétende être passif (par exemple, une balise)… vous ne savez pas à quel point cela fonctionne, mais l'application Android NFCClassic prétend enregistrer le contenu de la balise, puis permettre son activation et semblent être la balise copiée pour les lecteurs NFC. Crée une bibliothèque de balises enregistrées.
Vous pouvez certainement faire écrire un téléphone Android sur un lecteur de tags en utilisant la fonctionnalité NDEFPush du support peer-to-peer - mais vous aurez besoin d'écrire le code côté lecteur de tags pour utiliser également le peer-to-peer .
Oui, vous pouvez utiliser le mode pair à pair.
Mode peer-to-peer
Connexion P2P bidirectionnelle pour échanger des données entre appareils
–Interactions déclenchées par la proximité
–Nexus S: les appareils doivent être placés dos à dos
Exemple d'applications
–Échange de vCards
–Transfert de billets et paiement P2P
–Partage de pages Web, partage de vidéos Youtube
–Partage d'application
Oui! vous pouvez simplement télécharger cette application!
Et si vous voulez savoir comment vous utilisez cette application, regardez cette vidéo Comment utiliser NFC outils pour émuler NFC en tant qu'application de tag
Merci! S'il vous plaît marque ma réponse si cela vous aide!
Non, pas en ce moment. Google a souligné lors de Google IO 2011 que l'émulation de carte n'était pas prise en charge et qu'elle ne le serait pas avant un moment. Problème principal (et facile à comprendre): quelle application devrait avoir le droit au téléphone d'émuler une carte à puce?
Pour NFC tech, c'est facile. Pour Google, il ne le supportera pas comme un portefeuille Google.