NFC Peer 2 Le mode Peer n'est pas la même chose que le mode Lecteur de carte NFC.
Si vous souhaitez envoyer des données entre deux applications Android, vous devez utiliser Android Beam pour fonctionner en mode Peer 2 Peer.
Commencez par ici pour en savoir plus sur LLCP
and SNEP
protocols.
Fondamentalement, ce dont vous avez besoin est d'envoyer NDEFMessage
d'un appareil à l'autre en utilisant les méthodes de rappel Android.
Pour envoyer un NDEFMessage
avec Android Beam vous devez implémenter ces deux interfaces:
CreateNdefMessageCallback
OnNdefPushCompleteCallback
Dans createNdefMessage()
méthode, vous devez créer et renvoyer un NDEFMessage
à envoyer (here vous pouvez trouver une description).
Dans onNdefPushComplete()
méthode que vous pouvez faire quelque chose sur NDEFMessage
envoi terminé.
Ce dont vous avez besoin est d'identifier quel périphérique agira en tant qu'initiateur, puis en createNdefMessage()
vous devriez retourner un message NDEF à envoyer à l'autre périphérique.
Sur le périphérique de réception (dans le périphérique cible NFC appelé), vous devez recevoir NDEFMessage
dans Activity.onNewIntent(Intent intent)
et gérer cela.
Ensuite, vous pouvez faire la même chose de l'autre côté.
En théorie, en utilisant le protocole SNEP, vous devriez être en mesure d'envoyer des requêtes SNEP GET, mais sur Android, cette fonctionnalité a été désactivée. Vous pouvez lire ici une discussion sur Android SNEP implementation
Gardez à l'esprit que pour pouvoir recevoir un message NDEF, vous devez définir un IntentFilter dans yout manifest.xml en spécifiant quel NDEFMessage votre activité doit "intercepter".Ceci est un exemple pour attraper AndroidApplicationRecord NDEFMessage:
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/com.example.android.beam" />
</intent-filter>
Cocher cette Android Beam Example
espoir qui aide
avez-vous résolu de la même façon? – firegloves
Que voulez-vous dire? Je ne l'ai pas résolu. Maintenant, je peux seulement envoyer dans une direction (en lisant la carte émulée). – Han
Je sais que vous avez essayé et trouvé une solution avec les commandes apdu, si oui faites le moi savoir s'il vous plaît – firegloves