我成功地发现了一个 Peripheral 并检索了它的本地名称:
[advertisementData objectForKey:CBAdvertisementDataLocalNameKey]
但是,如果 Peripheral 停止并使用不同的本地名称重新开始广播,则 Client 无法识别更改。我猜
- (void)peripheralDidUpdateName:(CBPeripheral *)peripheral
仅当两个设备配对时才有效。有没有办法在不配对的情况下获取更新?
最佳答案
Apple 的错误。仍然存在于 iOS 6.1 中。以下是如何重置 CB 缓存的技巧:
- 将设备备份到 iCloud。
- 重置网络设置。
- 删除您的应用并通过 Xode 安装回来
- 此时,您的外围设备将以新名称出现。
- 手动恢复您的网络设置或从 iCloud 恢复。
对不起。
关于ios - 核心蓝牙 : Refreshing local name of an already discovered Peripheral,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13180134/