BLE接口-系统蓝牙信息更新缓存问题
- 需求的场景描述
存在问题:蓝牙连接后修改设备名。修改成功后重新搜索蓝牙发现设备名没改。
问题分析:蓝牙模块对设备名进行缓存,广播中收到设备信息后,匹配到DeviceID与模块中缓存的DeviceID一致,就不更新该ID对应对内容。
解决方法:
Android:重启蓝牙再搜索;(改名后disconnect,重启蓝牙,再discovery)
IOS:第二次连接该蓝牙之后断开再搜索。(改名后disconnect,再connect,再disconnect,再discovery)
体验极差,而且不同系统的解决方法还不同。
- 希望提供的能力
在执行打开适配器、或者连接(openBluetoothAdapter || openBLEconnection)之前,对蓝牙模块缓存进行更新。或者有没有其他的解决方法。