BLE在Android上没有绑定的配对

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BLE在Android上没有绑定的配对相关的知识,希望对你有一定的参考价值。

我有几个外围设备,我的android手机应该可以连接到。为了保护链路,我在外围设备上实现了BLE-Secure Connections。因为我唯一想要的是加密链接,我不希望用户将所有外围设备都放在他们的绑定设备列表中,我不想粘合。

那么是否可以与设备配对并在断开连接后忘记它(并且不必担心某些Bonding-Request对话框)?


Some background informations:

蓝牙规范(v4.2和v5)告诉我,Bonding或者只是Paring(在连接后扔掉密钥)应该像一个可以设置和请求Bonding的Flag一样简单。 (在我的外围设备上就是这么简单)。

我已经知道了,我可以将我的设备与BluetoothDevice.createBond()绑定+绑定,qazxswpoi在背景中很好地粘合,没有任何讨厌的对话。

答案

如果在外围设备上将绑定标志设置为0,并且io功能设置为无输入无输出,则将完成Just Works配对(无对话框)。我还猜测Android会尊重您在外围设备上设置的绑定标志,并且不会将设备信息存储在绑定列表中,因为否则它不符合规范。 createBond方法仍然是你应该调用的方法。

在这种情况下你得到的安全只是一个简单的Diffie-Hellman交换,即对抗窃听者而不是中间人。

以上是关于BLE在Android上没有绑定的配对的主要内容,如果未能解决你的问题,请参考以下文章

在 Android 中自动删除 BLE 设备绑定

蓝牙服务器重启后 BLE 配对出现问题

设备配对时,Android BLE 读取数据速率很慢

NRF51822配对绑定要点

适用于Android的蓝牙低功耗(BLE)外设应用程序

配对蓝牙设备有优势吗?