gpt4 book ai didi

iOS 6 重置所有设置问题与保存的 BLE 外设 UUID

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:06:12 26 4
gpt4 key购买 nike

我正在 iOS 上开发一个 BLE 应用程序,在与 BLE 配件建立连接后,我将 CBPeripheral UUID 保存到 NSUSerDefaults。这样,如果稍后重新启动应用程序,并且 BLE 配件未打开或超出范围,我可以在应用程序的用户界面中将 BLE 配件显示为“未找到”。如果 BLE 配件随后打开或用户进入 BLE 范围内,应用程序将自动连接到 BLE 配件。

我面临的问题是,在 iOS 6 中,如果用户执行设置 -> 常规 -> 重置 -> 重置所有设置,下次启动该应用程序时,BLE 配件将具有不同的 CBPeripheral UUID。这会导致我的应用程序和 UI 出现问题,因为随后将显示两个 BLE 配件:一个用于新 UUID,一个用于旧 UUID(用户过去连接过但不再存在)。

应用程序是否有办法判断用户是否执行了“重置所有设置”,以便我可以清除已保存到首选项中的已连接 BLE 配件 (UUID) 列表?

或者关于如何处理这种情况的任何其他想法?

谢谢,

最佳答案

将 UUID 存储在 Keychain 而不是 NSUserDefaults 中。当用户执行重置所有设置时,应用程序的钥匙串(keychain)将被删除,因此您的 UUID 将消失。

如果你真的想为 UUID 使用 NSUserDefaults,你也可以在 Keychain 中存储一些任意标志。在这种情况下,您只需在应用程序启动时检查该标志是否存在于钥匙串(keychain)中。如果不是,则丢弃 UUID 并创建一个新标志。

关于iOS 6 重置所有设置问题与保存的 BLE 外设 UUID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23163652/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com