从#io2012和JellyBean doc开始,现在有一种通过NFC配对蓝牙设备的方法。
这听起来很不错,但我找不到任何关于它的文档。
我特别想知道它是否适用于不支持SDP的SPP模块 - 我可以简单地用PIN信息写一些NFC标签并且设备配对吗?对于很多用户来说,这会对PIN配对过程有所帮助。
答案 0 :(得分:6)
JellyBean支持两种蓝牙配对NDEF消息。一些由诺基亚定义的Bluetooth SIG together with the NFC Forum和(较旧的)专有定义的标准化版本(请参阅http://www.developer.nokia.com/Community/Wiki/Nokia_6131_NFC_-_FAQs#SDK_APIs在HandoverManager处查看“将诺基亚6131 NFC与蓝牙成像设备连接的标签格式是什么?”详情)。
标准化版本不支持PIN。它仅支持新的简单配对方法。诺基亚类型的消息支持PIN。但是,当从Android中读取相关的源代码来解析此类蓝牙配对NDEF消息({{3}}中的parseNokia()
)时,您可以看到甚至没有从NDEF消息中读取PIN。因此,最终只会尝试使用Android蓝牙管理器中的内置PIN(默认值为0000和1234)来设置连接,如果设备尚未知道并在读取标签之前配对(在这种情况下, NFC标签仅用作激活连接的方式。
我还有一种印象,即Android中的这一新功能首先应该适用于头戴式设备等音频设备。我不知道它是否也适用于SSP设备(没有设备可以自己测试)。
答案 1 :(得分:2)
是的,你可以简单地创建一个带有蓝牙配对信息的NFC标签。无论如何它只会在设备使用默认引脚时才能工作,因为Android只会尝试默认引脚0000。您可以使用恩智浦的NFC TagWriter编程这样的标签。
答案 2 :(得分:2)
您可能想看看斯坦福大学的EasyNFC library on GitHub。
特别是BluetoothConnector似乎很有意思,因为它“帮助开发人员跨设备建立持久的蓝牙连接”。