我正在使用Lollipop 5.1.1_r6 bluedroid堆栈并且与HID设备有奇怪的情况。我做的第一步是通过Android设置 - >蓝牙菜单将对等方与主机配对。
好吧,如果我先重新启动蓝牙服务然后从对等方删除配对密钥,主机就不能再与对等方重新连接并保留旧的配对密钥。但是,如果我在擦除对等体上的密钥之前没有重新启动蓝牙服务,则主机会成功重新连接到对等体。
我注意到这些情况之间的唯一区别是,如果从NVRAM加载密钥并且
,则安全掩码为0tBTA_SEC sec_mask = BTUI_HH_SECURITY; //0x0036
在
之后制作钥匙时bt_status_t btif_hh_connect(bt_bdaddr_t *bd_addr)
功能
我的问题是,即使对等方删除其配对密钥并且用户在新尝试之前没有忘记主机的设置 - >蓝牙菜单中的对等,主机是否有可能再次与同一对等方重新连接? / p>
这是Lollipop标准bt堆栈的一个特性吗?
我的理解是,如果主机有绑定数据,它会尝试与同一个对等方建立新的连接,但是如果SMP失败或它是否由堆栈版本决定,它应该放弃?
一句话,同伴在连接成功后被列入白名单。