Kann ein Android-NFC-Telefon als NFC-Tag fungieren?
Lesezeit: 6 Minuten
Joshua Partogi
Nach dem, was ich bisher verstanden habe, fungiert ein NFC-Telefon als NFC-Lesegerät, das Daten von einem NFC-Tag liest. Nun meine Frage, können wir das umstellen? Können wir ein Android-NFC-Telefon dazu bringen, sich wie das Tag zu verhalten, von dem ein NFC-Lesegerät Daten erhält?
Danke für deine Hilfe.
Zu diesem Zeitpunkt würde ich mit „nein“ oder „mit Schwierigkeiten“ antworten, aber das könnte sich im Laufe der Zeit ändern, wenn sich die Android-NFC-API weiterentwickelt.
Es gibt drei Modi der NFC-Interaktion:
Reader-Writer: Das Telefon liest Tags und schreibt darauf. Es emuliert keine Karte, sondern ein NFC-Lese-/Schreibgerät. Daher können Sie in diesem Modus kein Tag emulieren.
Peer-to-Peer: Das Telefon kann ndef-Nachrichten lesen und zurücksenden. Wenn das Tag-Lesegerät den Peer-to-Peer-Modus unterstützt, könnte das Telefon möglicherweise als Tag fungieren. Ich bin mir jedoch nicht sicher, ob Android sein eigenes Protokoll zusätzlich zum LLCP-Protokoll (NFC Logical Link Protocol) verwendet, was die meisten Leser daran hindern würde, das Telefon als NFC-Tag zu behandeln.
Kartenemulationsmodus: Das Telefon verwendet ein sicheres Element, um eine Smartcard oder ein anderes kontaktloses Gerät zu emulieren. Ich bin mir nicht sicher, ob dies noch gestartet wird, könnte aber vielversprechend sein. Die Verwendung des sicheren Elements erfordert jedoch möglicherweise, dass der Hardwareanbieter oder eine andere Person Ihre App verifiziert / ihr Berechtigungen für den Zugriff auf das sichere Element erteilt. Es ist nicht so einfach wie das Erstellen einer regulären NFC-Android-App.
Eine echte Frage wäre: Warum versuchen Sie, ein einfaches altes NFC-Tag zu emulieren? Gibt es eine Anwendung, an die ich nicht denke? Normalerweise möchten Sie so etwas wie eine Transitkarte, einen Zugangsschlüssel oder eine Kreditkarte emulieren, die ein sicheres Element erfordern würden (glaube ich, bin mir aber nicht sicher).
OK. Google hat heute google.com/wallet angekündigt. Würde das Telefon in diesem Szenario nicht als Tag fungieren?
– Joshua Partogi
27. Mai 2011 um 4:29 Uhr
Wie @erich-douglass oben betonte: nicht unbedingt. Wenn das Leseterminal ein Peer-to-Peer-Terminal ist, müsste es nicht als Tag fungieren.
– denbec
27. September 2011 um 13:50 Uhr
Wie oben beschrieben, können Sie mit NDEF-Push und Peer-to-Peer-Unterstützung in Android 2.3+ vom Telefon aus auf ein Lesegerät schreiben, aber Sie müssen sicherstellen, dass der Code des Lesegeräts Peer-to-Peer ist. (muss ein Telefon sein, das einen NFC-Chip hat, z. B. Galaxy Nexus, Nexus S.)
– gamozzi
31. Januar 2012 um 13:12 Uhr
Das Problem ist, dass derzeit die meisten NFC-Kartenleser von passiven Tags ausgehen. Es ist viel komplexer, aktiven LLCP-Austausch zu unterstützen und natürlich immer noch passives Kartenlesen zu unterstützen. Es ist möglich, aber ich habe noch nichts von einer Zahlungsoption gehört, die mit LLCP implementiert wurde …
Können wir ein Android-NFC als Tag erstellen, von dem ein NFC-Lesegerät Daten erhält?
Das Nexus S unterstützt Peer-To-Peer Modus, der, wie der Name schon sagt, bewirkt, dass ein Telefon als Tag fungiert, den ein anderes Telefon lesen kann. Es war eine wirklich gute Google I/O-Sitzung auf NFC in diesem Jahr. Ich würde empfehlen, es anzuschauen, wenn Sie überhaupt an NFC interessiert sind.
Vielen Dank. Das macht es mir klar. Aber kann ein NFC-Lesegerät vom Telefon lesen?
– Joshua Partogi
26. Mai 2011 um 13:01 Uhr
@jpartogi Ich bin mir nicht ganz sicher, aber ich denke, der Leser müsste den Peer-to-Peer-Modus explizit unterstützen, damit er funktioniert.
– Erich Douglas
26. Mai 2011 um 13:56 Uhr
Peer-to-Peer-Modus ist, wenn BEIDE Telefone oder Geräte als Lesegeräte fungieren. Informationen werden nicht so sehr gelesen, sondern hin und her geschoben (geschrieben).
Ja, du kannst. Android Kitkat verstärkt diese Funktionalität hier
Es ist möglich damit sich das Android-Gerät wie ein NFC-Tag verhält. Ein solches Verhalten nennt man Kartenemulation.
Die Kartenemulation kann Host-basiert (HCE) oder Secure-Element-basiert (CE) sein.
In HCE antwortet eine Anwendung, die auf dem Android-Hauptprozessor läuft, auf das Lesegerät. Das Telefon muss also eingeschaltet sein.
In CE antwortet ein Applet, das sich im Secure-Element befindet, auf den Leser. Hier reicht es aus, den NFC-Controller mit Strom zu versorgen, während der Rest des Geräts ausgesetzt ist.
Einer dieser oder beide Ansätze können gleichzeitig aktiv sein.
Eine Routing-Tabelle weist den NFC-Controller an, wohin die Befehle des Lesegeräts geleitet werden.
Können Sie einige Referenzen oder Anwendungsfälle angeben?
– AbhinayMe
15. November 2019 um 2:31 Uhr
Gibt es dafür bekannte Android-Apps? Um eine Zugangskarte zu lesen und sie dann vom Telefon selbst zu emulieren?
Ich habe das nicht selbst verifiziert, aber es sieht so aus, als ob es den Leuten gelungen ist, den versteckten Code wieder in Android einzufügen. Sie scheinen in der Lage zu sein, eine Mifare Classic-Karte (iso-14443) zu emulieren. Das werde ich demnächst selbst testen, sieht sehr interessant aus.
Wenn Sie dies für eine kommerzielle/kostenlose App tun möchten, werden Sie es schwer haben, Ihre Benutzer werden ihren Kernel nicht gerne ändern, um Ihre App zu unterstützen.
Update: Es gäbe einen einfachen Trick, um Ihr Telefon dazu zu bringen, ein Ticket zu emulieren:
Sie können einen NFC-Sticker erhalten und ihn in oder auf das Telefon stecken. Auf diese Weise können Sie es jederzeit lesen und schreiben und andere Geräte können es auch lesen und schreiben.
Es ist nur eine Idee, die ich hatte, natürlich noch nie gesehen, dass sie irgendwo verwendet wurde;)
Können Sie einige Referenzen oder Anwendungsfälle angeben?
– AbhinayMe
15. November 2019 um 2:31 Uhr
Gibt es dafür bekannte Android-Apps? Um eine Zugangskarte zu lesen und sie dann vom Telefon selbst zu emulieren?
– nl-x
10. Juni um 11:04 Uhr
Sven Haiges
Ja, werfen Sie einen Blick auf NDEF Push in NFCManager – mit Android 4 können Sie jetzt sogar die NDEFMessage erstellen, um sie zum Zeitpunkt der Interaktion an das aktive Gerät zu senden.
Das ist der P2P-Modus, nicht wahr? Nicht vom NFC-Forum vorgeschriebene Tag-Emulation.
– STeN
26. Juli 2012 um 12:15 Uhr
13295200cookie-checkKann ein Android-NFC-Telefon als NFC-Tag fungieren?yes