gpt4 book ai didi

ios - CBPeripheral,获取本地外设标识符

转载 作者:可可西里 更新时间:2023-11-01 05:12:01 24 4
gpt4 key购买 nike

我遇到了有关 CoreBluetooth 框架的问题。

例如,我有两台设备,每台设备都执行广告和扫描。因此,我在每个上都使用了 CBCentralManagerCBPeripheralManager

因此,为了简化问题,我们假设 Device1 正在广播而 Device2 正在扫描。

Device2 上的 CBCentralManager 发现 Device1 时,回调centralManager:didDiscoverPeripheral:advertisementData:RSSI:被调用,我可以通过调用 [peripheral.identifier UUIDString] 获取 Device1 标识符。

我如何才能获得我的本地设备 (Device2) 标识符?我的意思是如果两个设备都在做广告,Device1 也会发现 Device2 并获得它的外围标识符,但是我怎样才能在 Device2 上获得这个标识符(某种 self 地址)?

附言我知道这个标识符对于每个设备来说并不是唯一的,并且会随着时间的推移而改变,这不是问题。

最佳答案

很遗憾,您不能这样做。 [peripheral.identifier UUIDString] 返回的标识符是由 iOS 在接收设备上自动生成的。它由发射器 Mac 地址(不会改变)和设备开始被 iOS 识别的时间(会改变)播种。

因为第二个因素是不可预测的,而且id生成算法没有公布,所以你无法预测这个id在发送端会是什么。

底线,如果你想要一个可预测的唯一id,你不能使用这个字段

关于ios - CBPeripheral,获取本地外设标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26930742/

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