Android蓝牙配对

时间:2011-03-23 06:06:46

标签: android bluetooth


任何人都可以告诉我如何找到连接到其他设备时使用哪种配对技术手机? 我有一台Nexus S(Android 2.3.3)和一台BT设备(Bluetooth2.1 + EDR) 当我尝试配对它们时,我不必提供任何输入(密码)。由于两种设备都有蓝牙2.1,我想知道他们使用的是哪种配对技术 我们可以指定电话配对技术吗?

2 个答案:

答案 0 :(得分:18)

当两个设备均为2.1及以上时,使用安全简单配对(SSP)而不是传统配对(传统配对是要求用户在两个设备上输入相同PIN以进行连接且大多数情况下使用PIN的配对众所周知的0000或1234的常见组合

安全的简单配对简化了流程并且无需输入PIN,而是在配对过程中自动生成6位数的密码,用户可能只需要验证/输入一个或多个密码的设备。

安全简单配对(SSP)进一步具有很少的不同关联模式,并且要使用的关联模型由尝试配对的设备上的显示和输入功能决定。

如果没有显示或输入在其中一个设备上输入6位数,则“Just works”关联模型将被使用,在此配对期间不需要用户输入。在Android中,可以在使用createInsecureRfcommSocketToServiceRecord()API时强制此模型是SPP应用程序。当与耳机配对时,此模型会被普遍使用,其他小型设备没有任何显示或输入功能

其他关联模型是:

  • 数字比较 - 如果两个设备上都显示一个6位数字,并要求用户确认它们是否相同。当两个设备都显示并且能够输入是/否时使用

  • 密码输入 - 当其中一个设备只具有输入功能且没有输出显示功能而另一个设备具有输出/显示功能时,将要求用户在仅输入设备上输入6位数字如显示功能设备所示。

  • 带外 - 设备通过不同的渠道(蓝牙除外)交换配对信息示例NFC或其他一些安全机制。

答案 1 :(得分:4)

您可以嗅探蓝牙流量或记录日志以确定使用的是哪种技术。在Nexus-S $ adb shell上,hcidump -XVt将显示日志。如果正在交换I / O功能而不是蓝牙2.1配对。

另一种选择是在init.herring.rc文件中启用蓝牙日志,你可以找出使用的配对方法。

在您的情况下,它绝对是蓝牙2.1配对,问题出在其他地方。