我有一个iOS应用程序作为外设,和一个OS X应用程序作为中心,使用CoreBluetooth框架。OS X应用程序连接到iOS应用程序并通过读取加密特征和输入随机代码来进行绑定。一切都运行良好,直到iOS应用程序重新启动。从那时起,每次我连接到iOS设备并尝试读取其任何特征时,它都会返回“句柄无效”错误。修复此问题的唯一方法是从OS X的蓝牙首选项中删除设备并重新启动绑定过程。
我怀疑这个问题是由于OS X缓存了我的设备的服务和特征,因为当我在重启一个iOS设备后使用两个iOS设备相互连接时,问题不会出现。
我正在寻找的是清除OS X缓存我的服务和特征的方法。我熟悉删除com.apple.Bluetooth.plist并重新启动blued进程/打开关闭蓝牙的方法。(blued是否缓存ATT值,如何清除缓存?和如何在MacOS上清除CoreBluetooth缓存?)
然而,删除com.apple.Bluetooth.plist需要我再次与iOS设备进行绑定并输入代码。有没有办法只清除与我的应用程序相关的服务/特征的缓存?
我怀疑这个问题是由于OS X缓存了我的设备的服务和特征,因为当我在重启一个iOS设备后使用两个iOS设备相互连接时,问题不会出现。
我正在寻找的是清除OS X缓存我的服务和特征的方法。我熟悉删除com.apple.Bluetooth.plist并重新启动blued进程/打开关闭蓝牙的方法。(blued是否缓存ATT值,如何清除缓存?和如何在MacOS上清除CoreBluetooth缓存?)
然而,删除com.apple.Bluetooth.plist需要我再次与iOS设备进行绑定并输入代码。有没有办法只清除与我的应用程序相关的服务/特征的缓存?