iBeacons:如何获得广播信标功率(txPower)
iBeacons似乎在计算beacon.accuracy
和beacon.proximity
属性(在这里可以find关于iBeacon通告数据包的详细信息)中使用它们的txPower参数(报告1米距离的RSSI功率)。
但是, CLBeacon
类似乎没有txPower的属性。 有没有一种方法可以使用Core Location框架获得txPower,还是需要我去核心蓝牙? 我需要这个的原因是,我想试验自定义信标准确度/接近度计算,以实现非常快的信标立即范围发现。 在这种情况下,从accuracy
反向计算txPower不是帮手。
不幸的是,你不能用CoreLocation
或CoreBluetooth
以编程方式获得这个值。 Apple使用CoreBluetooth阻止对所有iBeacon数据的CoreBluetooth
(请参见此处的 CoreLocation
)。与CoreLocation
类似,它不会像CLBeacon
类中那样暴露。
既然你说你不能做一个逆向计算,那么我唯一能想到的其他办法就是:
- 使用Android,OSX Mavericks或Linux设备,在阅读此字段时不提供此类限制。
- 在iOS应用程序中创build所有iBeacons的查找表(具有唯一的UUID /主要/次要值与其txPower值)
上面的选项2显然要求您为testing中的所有iBeacon指定唯一的标识符。