2012-07-16 3 views
7

Ab # io2012 und JellyBean doc gibt es jetzt eine Möglichkeit, Bluetooth-Geräte über NFC zu koppeln.Verwenden Sie Jelly Bean's Simple Secure Pairing (Bluetooth) zum Koppeln mit NFC

Das klingt wirklich nett, aber ich kann keine Dokumentation darüber finden.

Ich bin besonders interessiert zu wissen, ob das mit SPP-Modulen funktioniert, die SDP nicht unterstützen - kann ich einfach ein NFC-Tag mit der PIN-Info schreiben und das Gerät wird gepaart? Es würde sehr vielen Benutzern helfen, die Probleme mit dem PIN-Pairing-Prozess haben.

Antwort

6

Es gibt zwei Arten der Bluetooth-Kopplung von NDEF-Nachrichten, die von JellyBean unterstützt werden. Die standardisierte, die von der Bluetooth SIG together with the NFC Forum definiert ist und die (ältere) proprietäre, die von Nokia definiert wurde (siehe "Was ist das Tag-Format, um das Nokia 6131 NFC mit einem Bluetooth-Imaging-Gerät zu verbinden?" Unter http://www.developer.nokia.com/Community/Wiki/Nokia_6131_NFC_-_FAQs#SDK_APIs für einige Details).

Der standardisierte bietet keine Unterstützung für PIN. Es unterstützt nur die neue Simple-Pairing-Methode. Die Nachricht vom Nokia-Typ unterstützt PIN. Beim Lesen des entsprechenden Quellcodes von Android, der solche Bluetooth-NDEF-Nachrichten analysiert (parseNokia() in HandoverManager), können Sie jedoch sehen, dass die PIN nicht einmal aus der NDEF-Nachricht ausgelesen wird. Also werden am Ende nur die eingebauten PINs im Android Bluetooth Manager versucht (Standard wie zB 0000 und 1234), eine Verbindung aufzubauen, wenn das Gerät nicht bereits bekannt ist und vor dem Lesen des Tags gepaart wurde (in diesem Fall die NFC-Tag fungiert lediglich als eine Möglichkeit, die Verbindung zu aktivieren).

Ich habe auch den Eindruck, dass diese neue Funktionalität in Android erstens mit Audiogeräten wie Headsets funktionieren soll. Ich kann nicht sagen, ob es auch mit SSP-Geräten funktioniert (kein Gerät zum Testen mit mir selbst).

+0

danke für die Antwort! Kennen Sie eine App, die solche Tags schreiben könnte? – ligi

+0

[NFC TagWriter von NXP] (https://play.google.com/store/apps/details?id=com.nxp.nfc.tagwriter) wie in der anderen Antwort erwähnt (aktivieren Sie die Professional Edition als UI-Modus in der Einstellungen, um es sichtbar zu machen). Vielleicht möchten Sie mit der Byte-Reihenfolge der MAC-Adresse experimentieren; Es scheint einige Verwirrung darüber zu geben, was die richtige Reihenfolge ist. –

+0

Dank und genießen Sie die Prämie - Ich war mit dieser Funktion innerhalb NFC TagWriter von NXP übersehen, wie ich nicht wusste, dass Sie erst zur Professional Edition wechseln müssen – ligi

2

Ja, Sie können ganz einfach ein NFC-Tag mit Bluetooth-Kopplungsinformationen erstellen. Wie auch immer, es wird nur für den Moment funktionieren, wenn das Gerät einen Standard-Pin verwendet, da Android nur den Standard Pin 0000 nach dem was ich weiß versuchen wird. Sie können ein solches Tag mit dem NFC TagWriter von NXP programmieren.

2

Vielleicht möchten Sie sich Stanfords EasyNFC library on GitHub ansehen.

Vor allem die BluetoothConnector scheint interessant, da es "hilft Entwicklern, dauerhafte Bluetooth-Verbindungen zwischen Geräten einzurichten".

+0

Hm sieht aus wie diese Lösung nur behandelt Telefon <> Telefon - mein Anwendungsfall ist Telefon <-> SPP-Modul - danke trotzdem - wird durch den Code graben - vielleicht finde ich einen Weg, wie dies zu meinem Anwendungsfall zu übernehmen - wenn Ich finde dort einen Hinweis und es gibt keine bessere Antwort bis du das Kopfgeld bekommst ;-) – ligi

Verwandte Themen