2017-09-10 74 views
1

我想通过BLE获取我的iOS设备连接到的设备的MAC地址,但我只能看到UUID。iOS - 从CBPeripheral对象获取外设的MAC地址

我已经通过在网络上搜索问题了解到这是不可能获得MAC,但仅在UUID中。我也明白,UUID是由iOS生成的,并且设备不“知道”它,但是我发现的帖子旧(2-3岁),所以我想知道是否有任何东西改变了吗?有没有办法获得MAC而不是UUID,或者至少重现iOS将UUID转换回MAC地址的过程?

在此先感谢

+0

不,没有什么改变。核心蓝牙是建立在BLE之上的抽象层。没有办法从标识符中获得MAC地址,并且没有记录生成标识符的过程。 – Paulw11

+0

如果您与设备配对,则UUID不应更改。一个解决办法是提供MAC地址的特征(如果你有控制设备软件的话)。但是这是围绕iOS构建的保护和高级别。 – Larme

回答

1

在iOS中不可能获取CBPeripheral对象的mac地址。如果“kCBAdvDataServiceData”值中的CBPeripheral对象通告mac地址转换为mac地址,否则不可能。在iOS中,唯一ID是CBPeripheral的UUID。每一个差异。 iOS设备显示差异。相同CBPeripheral的UUID。如果区分两个或多个CBPeripheral对象,则使用RSSI范围/值。