ent*_*nto 92 ibeacon-android altbeacon
我已成功修改了参考实现应用程序的的Android的信标库使用以下信标布局,使得它检测到我手边的iBeacon显示设备:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
BeaconManager beaconManager = BeaconManager.getInstanceForApplication(this);
beaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout("m:0-3=4c000215,i:4-19,i:20-21,i:22-23,p:24-24"));
beaconManager.bind(this);
}
}
Run Code Online (Sandbox Code Playgroud)
作为BLE数据包内部的新手,我不确定这是否是正确的布局.该库赞同AltBeacon标准,其文档未提及如何检测iBeacon设备.
m:
前缀是否过于严格,或者是与iBeacon规范匹配的正确字节序列?参考:
mob*_*ick 62
这对我也有用!
我不认为你需要匹配4c00部分,因为那是制造商ID,所以你可以把它关掉并从m开始:2-3 = 0215其他一切看起来都正确,它似乎有用.
您可以下载iBeacon 规范(单击“下载图稿和规范”)。
在当前版本中,公司 ID必须是0x4C00
,信标类型必须是0x0215
。所有其他字段都是必需的,正如您指定的那样。
所以是的,你是完全正确的,它会检测所有兼容的 iBeacon。
OT:它还指定广告间隔必须为 100 毫秒,但我严重怀疑所有 iBeacon 都坚持这一点。
归档时间: |
|
查看次数: |
30738 次 |
最近记录: |