我正在使用petermetz/cordova-plugin-ibeacon检测移动设备周围的信标。而且我可以看到插件提供了有关beacon的以下信息,例如


uuidmajorminorrssitxaccuracy


我想知道的实际上是rssitxaccuracy
如何使用这三个值(rssitxaccuracy)计算到信标的距离?

我已经经历过documentation : What are Broadcasting Power, RSSI and other characteristics of beacon's signal?了,但是没有得到我想要的信息,或者它太高级了以至于我无法理解。

非常感谢您的反馈。

最佳答案

cordova-plugin-ibeacon是iOS上的CoreLocation框架和该平台上的Android Beacon Library的包装。两个平台都使用RSSI(接收信号强度指示器)来估计到信标的距离。在CoreLocation中,术语“准确性”用于表示此估计距离(以米为单位)。使用Android信标库,等效字段称为距离,也提供以米为单位的估算值。

这些字段含义的摘要如下:

Cordova    iOS        Android    Description
-------    --------   --------   ---------------
accuracy   accuracy   distance   Estimated distance in meters
tx         N/A        txPower    Calibrated measured transmitter power at 1 meter in dBm
rssi       rssi       rssi       Received signal strength in dBm


在iOS上,内部使用txPower字段,但是在信标读数中不可用。

由于距离估算是直接可用的,因此没有理由自己计算。但是,如果好奇,请继续阅读。

用于计算距离的实际计算在iOS和Android之间有所不同,但使用表中的变量。 iOS计算是封闭源且未发布。 Androd Beacon库使用我写here的博客文章中描述的计算。

全面披露:我是Android Beacon Library项目的首席开发人员。

09-25 14:19