XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XX 作 者:ZHS(文化人)
XX 联系方式:文章末尾Chat快问(或进群:471144274联系我)
XX 版权声明:原创文章,欢迎评论和转载~转载时能告诉我一声就最好了
XX 要说的话:作者水平有限,难免有不足之处,恳请指正!
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
写在前面:在开发蓝牙音箱时,遇到一个问题,修改BLE的设备名称匹配用户的APP(指定蓝牙名称连接),但是BLE设备名称改变之后不会立即变化,要连接一次才会变化。
问题描述:修改BLE的设备名称,复位后发现IOS设备搜索到的还是之前的名称,优化了代码后还是存在问题,用一部安卓手机和一部IOS手机同时搜索,安卓手机搜索到的设备名称确实是修改之后的,说明广播数据是没问题的,推测应该是IOS手机的缓存问题。
研究发现,还有一个服务Generic Access可以获取设备名称,尝试把该服务去掉,如图:
然后修改了设备的地址,确保不会受之前缓存的影响(不改地址的话,最好还是清除掉iphone的BLE cache),再次验证修改名称正常。