【问题标题】:How to test equality on two CBPeripherals in CoreBluetooth?如何在 CoreBluetooth 中测试两个 CBPeripheral 的相等性?
【发布时间】:2023-03-12 23:38:01
【问题描述】:

所以基本上我在扫描设备期间保留了一个外围设备池。当我发现一个外围设备时,我想首先检查该外围设备是否已经在我的池中。如果它已经在池中,那么我只想更新我已经拥有的那个外围设备的句柄。如果它还没有在池中,我想将它添加到池中。

问题是 CoreBluetooth 不再允许访问外围设备的 UUID。用于访问设备 UUID 的两种方法在 iOS 7.1 中均已弃用。

那么在CoreBluetooth中测试外设是否相等的正确方法是什么?

【问题讨论】:

    标签: ios core-bluetooth equality cbperipheral


    【解决方案1】:

    是的,它已被 CBPeripheral 类弃用。但是新的“标识符”属性被添加到 CBPeer 超类中,CBCentralCBPeripheral 都从该超类继承。

    所以现在你应该使用:

    peripheral.identifier.UUIDString
    

    您可以在此处查看 AP 的变化: https://developer.apple.com/library/ios/releasenotes/General/iOS80APIDiffs/frameworks/CoreBluetooth.html

    【讨论】:

      猜你喜欢
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多