CoreBluetooth:独特UUID的寿命是多less?

在这个问题之后,

连接到外设后,我可以检索其唯一的CFUUIDRef ,并可以通过retrievePeripherals重新连接。 但是,我发现在closures应用程序之后我不能使用它来重新连接。

连接之后生成的唯一UUID是否仅在应用程序的生命周期中有效,或者是否应该能够保存以备后用? 我试图让我的应用程序记住一个特定的外设,但除了peripheral.UUID ,我不知道任何其他唯一标识符。

长话短说,是的,即使在closures应用程序之后,也可以使用UUID重新连接到同一设备(完全按照您的说法)。 我已经完成了每一个我的核心蓝牙应用程序,我保证你100%,这正是你应该这样做。

然而,我认为,你不是与外设配对? 这是一个很大的问题。 你需要真正的build立配对请求,并让外设出现在蓝牙表中。 UUID随后将在iOS设备上固化,并保持到您刷新iOS设备的networking设置。 (这当然是依赖于芯片组。虽然这对于业界最常见的设备来说是正确的,但是它可以在没有它的情况下完成。请指出你的芯片组,然后我会确认是否知道这种方式)

另一种可能性是您的BLE设备有固件问题,在您断开连接后,它会将自己强制进入广告模式或其他事情。 这也会影响你重新连接的能力。 让我知道如果你有任何问题!