次のビーコン レイアウトを使用して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);
}
}
BLE パケットの内部は初めてなので、これが正しいレイアウトであるかどうかはわかりません。このライブラリはAltBeacon標準を支持しており、そのドキュメントには iBeacon デバイスの検出方法が記載されていません。
- このコードはすべてのiBeacon デバイスを検出しますか? つまり、
m:
接頭辞が制限的すぎるか、それとも iBeacon 仕様に一致する正しいバイト シーケンスですか? - 同様に、残りのレイアウトは iBeacon の仕様と完全に一致していますか?
参照: