Estimote和Gimbal beacon的正确BeaconLayout是什么?

dav*_*ung 7 android ibeacon-android altbeacon

我希望Android Beacon Library的2.0版本能够正确检测旧式Estimote信标(不支持iBeacon技术的2013年之前的型号)和Gimbal信标.我知道万向节信标有加密的标识符,因此无法直接读取.但我至少想分享可以检测出一个存在的代码.

这是我有的:

用于检测万向节信标的代码(不读取加密标识符):

BeaconManager beaconManager = BeaconManager.getInstanceForApplication(this);
BeaconManager.getBeaconParsers().add(new BeaconParser().
       setBeaconLayout("m:0-3=ad7700c6"));
beaconManager.bind(this);
Run Code Online (Sandbox Code Playgroud)

用于检测2013年中期Estimote信标的代码(不读取标识符,因为我不知道如何):

BeaconManager beaconManager = BeaconManager.getInstanceForApplication(this);
BeaconManager.getBeaconParsers().add(new BeaconParser().
       setBeaconLayout(""m:0-3=2d24bf16""));
beaconManager.bind(this);
Run Code Online (Sandbox Code Playgroud)

是否有任何人(特别是来自Estimote或Gimbal的人)有关于上述字节偏移的任何附加信息,这将允许尽可能多地从传输中解码信息?在每种情况下,我认为我们需要关闭蓝牙服务UUID,它可能用比上面例子中更多的字节正确表示.我很想知道完整的服务UUID以及广告中发送的任何其他可读字段.

Joh*_*ohn 17

对于estimote

beaconManager.getBeaconParsers().
      add(new BeaconParser().
      setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));
Run Code Online (Sandbox Code Playgroud)