创建一个不安全的RFCOMM插槽仍然需要配对

时间:2011-12-29 19:15:04

标签: android sockets bluetooth rfcomm insecure-connection

我正在使用listenUsingInsecureRfcommWithServiceRecord和 createInsecureRfcommSocketToServiceRecord调用以进行连接 一个Android设备到另一个。

在第一个设置中,我有一个Nexus One和一个Nexus S都在运行 Android 2.3.6 - 在此设置下,连接没有弹出“配对 请求“对话。

在第二个设置中,我尝试了与三星Galaxy相同的Nexus One S2运行Android 2.3.3 - 在此设置“配对请求” 对话框在两台设备上都弹出这两个设备都打开了,这很奇怪 API级别10,应该支持不安全的连接。

有没有其他人碰到这种奇怪的行为?有人可以验证 这是2.3.3中的问题,或者可能是特定模型中的问题 测试?有没有解决方法?

如有必要,我可以从logcat发布相关部分。

1 个答案:

答案 0 :(得分:3)

根据蓝牙v2.1,GAP,第5.2.2节:

  

当两个设备都支持安全简单配对时,GAP默认需要   未经身份验证的链接密钥并启用加密。

因此要启用加密蓝牙需要创建链接密钥......因此需要进行SSP配对。

不知道是否可以在Android中避免这种情况。

否则处理身份验证事件并确认该对 - 该对很可能是“Just Works”表单,只需要确认(没有密码等)。