首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >信标上的循环

信标上的循环
EN

Stack Overflow用户
提问于 2019-03-22 07:24:44
回答 1查看 100关注 0票数 0
代码语言:javascript
运行
复制
@Override
public void onBeaconServiceConnect() {
    BeaconManager beaconManager = BeaconManager.getInstanceForApplication(this);
    beaconManager.setRangeNotifier(new RangeNotifier() {
        @Override
        public void didRangeBeaconsInRegion(Collection<Beacon> beacons, Region region) {
            for (Beacon beacon : beacons) {

                Beacon.setHardwareEqualityEnforced(true);

                Log.i("MainActivity", "I see a beacon that is about "+ beacon.getDistance() +" meters away. ");
            }
        }
    });

    try {
        beaconManager.startRangingBeaconsInRegion(new Region("myRangingUniqueId", null, null, null));
    } catch (RemoteException e) {    }
}

我试图在我的信标上循环并得到所有信标的距离,但我想跟踪每个信标的距离,我想知道我和信标之间的最大距离和最小距离,我想说的是,例如,如果我和beacon1之间的距离小于我和beacon2之间的距离,或者如果我和beacon2之间的距离大于我和beacon3之间的距离,我想问的是,例如,如果我和beacon2之间的距离小于我和beacon3之间的距离,

我知道我可以通过mac地址跟踪每个信标,但我如何才能掌握并知道我与所有信标之间的距离。

我想做的是“如果mac地址为1的信标".getDistance() >”mac地址为2的信标“.getDistance(){做点什么}

我怎样才能保持信标的稳定呢?

EN

Stack Overflow用户

发布于 2019-03-22 09:01:38

我经常在应用程序中使用BeaconTracker单例类,在这些应用程序中,我希望跟踪到每个信标的最后一次看到的距离。你可以在这里看到一个这样的例子:

https://github.com/davidgyoung/ningo-android/blob/master/app/src/main/java/com/davidgyoungtech/beaconscanner/BeaconTracker.java

您可以通过从didRangeBeaconsInRegion(...)调用该类来使用它类似这样的回调:

代码语言:javascript
运行
复制
BeaconTracker.getInstance(context).updateTrackedBeacons(beacons);

然后,您可以访问跟踪的信标,以便与以下内容进行距离比较:

代码语言:javascript
运行
复制
List<TrackedBeacon> trackedBeacons = BeaconTracker.getInstance(context).getTrackedBeacons();
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55290697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档