【问题标题】:Sensitivity of monitoring AltBeacon监控 AltBeacon 的灵敏度
【发布时间】:2014-12-28 11:01:19
【问题描述】:

我正在为 iBeacon 开发移动应用程序。 我们的产品适用于 iOS 和 Android 平台。在 iOS 上,监控 iBeacon 是默认功能,因此它们使用默认方法。为了在 Android 上实现 iBeacon,我使用 AltBeacon。但我们发现我们的平台之间存在 1 个巨大差异。必须在 1 米半径范围内工作的信标(在 iOS 上),我的应用程序可以在 3 米范围内看到。这对我们的产品来说是个大问题,因为信标必须在两个平台上以相同的距离工作。因此,在 iOS 上,他们无法更改监控逻辑中的任何内容。我可以更改监控的灵敏度吗?

【问题讨论】:

  • 不,想法,但一个有趣的问题。这里有一些有趣的答案,说明为什么使用蓝牙三角测量很难获得优于约 5M 的精度:stackoverflow.com/questions/20332856/…
  • 你是说 iOS CoreLocation 监控 API 首先在 1m 外检测到你的信标,而在 Android 上你首先在 3m 外检测到它们?或者您是在谈论测距 API,您在 Android 上获得的距离估算与您在 iOS 上获得的距离估算不同?
  • @davidgyoung 是的,我说的是监控 API(我不是要计算距离)。案例是在 Android 上检测到区域的入口为 3m(较早),而在 iOS 上为 1m 距离(较晚)。目标是进入区域的距离相同或最近

标签: android monitoring ibeacon ibeacon-android altbeacon


【解决方案1】:

很难让不同的设备以完全相同的距离检测信标。主要问题是不同的移动设备可能具有完全不同的蓝牙无线电和天线,它们具有非常不同的增益。虽然检测到的信号水平在 iOS 设备上相当一致(除了 iPod touch 设备具有更高增益的接收器并进一步检测信标),但 Android 设备却无处不在。

尝试使其更加一致的一种方法是将监控与测距相结合。不要在监视回调上触发动作,而是在检测到信标后立即开始测距,然后获取距离估计,并且仅在距离估计足够近时触发动作。我写了一个blog post 来描述这个过程。

上述技术仍然存在问题,尤其是在 Android 上,因为准确的距离估计需要一个与特定 Android 设备型号上的蓝牙接收器匹配的公式。 Android 信标库默认使用 Nexus 5 计算,但这可能会大大高估或低估其他模型的距离。出于这个原因,我们使库支持基于每个设备的可扩展距离公式数据库,并且我们为其他设备提供了instructions for calculating the proper formula 并将它们添加到数据库中。如果您知道您的目标是特定设备,那么这可能是您的一个选择。

但是,如果您想让所有 Android 设备在非常特定的距离处检测到信标,则不太可能成功。大量的 Android 设备使您不可能对所有设备都获得准确的距离估计,因此您必须愿意接受某些设备上的不准确估计,或者调整您的用例,这样就没有必要了。

【讨论】:

    猜你喜欢
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-23
    • 2011-01-30
    相关资源
    最近更新 更多