【问题标题】:Beacon scans not consistent信标扫描不一致
【发布时间】:2014-05-26 11:43:40
【问题描述】:

我正在使用半径网络 iBeacon Api。我每秒钟在后台模式下扫描信标。我有两个信标。有时扫描信标并不一致。我该如何解决这个问题?

假设有两个信标

第一次间隔扫描

找到信标 1、信标 2

第二次间隔扫描

只有 Beacon 1 或 Beacon 2 来了

第三次间隔扫描

找到信标 1 和信标 2

在第四个间隔

再次单灯塔来了..

我是这样的

【问题讨论】:

  • 需要正确描述,“不一致”的意思吗?您是否检查了频率和/或 RSSI 信号,它还取决于信标以什么频率发出数据
  • 我已经更新了问题..请看这个
  • 还取决于信标发出数据的频率

标签: android ibeacon ibeacon-android android-ibeacon


【解决方案1】:

最可能的解释是您使用的信标传输频率不够高。为了获得最佳性能,信标应每秒至少发送 10 次广告。充当 iBeacon 的 iOS 设备每秒发送 30 次广告。

在对信标进行测距时,默认情况下,Android iBeacon 库每 1100 毫秒发送一次更新,其中包含在此期间发现的每个信标的列表。如果在此间隔中没有检测到特定信标的传输,则该信标将不会包含在该扫描间隔的列表中。

无需更改硬件即可解决信标间歇性地不包含在回调中的情况。只需在软件中维护一个最近五秒左右看到的信标列表即可。

或者,您也可以简单地延长扫描周期,但这会降低您获取回调的频率:

iBeaconManager.setBackgroundScanPeriod(5000l); // 5 secs      
iBeaconManager.setForegroundScanPeriod(5000l); // 5 secs
iBeaconManager.updateScanIntervals();

【讨论】:

【解决方案2】:

这是正常情况。

由于多径效应,信标间隔不一致。

每个无线信号都具有多径效应。

参考以下链接:

因此,无法估计信号到达您的智能手机的时间。

如果你想监控你的信标信号,这个应用对你很有用。

使用此应用查看信标的图表视图。

这是了解您的信标如何运作的最快方式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-24
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 2019-08-24
    • 2020-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多