2017-07-26 6 views
0

Androidで複数のEddystoneパケットをブロードキャストしたいと思います。私はそれを同時に行うことはできませんが、私たちはタイマーを作成し、複数のパケットをブロードキャストする必要があることをお読みください。どのくらいのユニークなeddystoneパケットをブロードキャストできるかといった制限があるかどうかを知りたいですか? 1秒で異なるパケットと複数のパケットをブロードキャストできますか?Androidで異なるEddystoneパケットをブロードキャストする

答えて

1

一部のAndroid搭載端末と同時に複数の広告を送信できます。それはすべて電話のチップセットに依存します。これを事前に知る方法はありませんが、エラーメッセージが表示されるまで、別の標識識別子で広告を開始しようと繰り返し試みることができます。ここではAndroidのビーコンライブラリとコードは次のとおりです。

Beacon beacon = new Beacon.Builder() 
    .setId1("2f234454-cf6d-4a0f-adf2-f4911ba9ffa6") 
    .setId2("1") 
    .setId3("2") 
    .setManufacturer(0x0118) 
    .setTxPower(-59) 
    .setDataFields(Arrays.asList(new Long[] {0l})) 
    .build(); 
BeaconParser beaconParser = new BeaconParser() 
    .setBeaconLayout("m:2-3=beac,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25"); 
BeaconTransmitter beaconTransmitter = new BeaconTransmitter(getApplicationContext(), beaconParser); 
beaconTransmitter.startAdvertising(beacon beacon, new AdvertiseCallback() { 
    public void onStartFailure(int errorCode) { 
     // Called when failed 
    } 
    public void onStartSuccess(AdvertiseSettings settingsInEffect) { 
    } 

}); 

識別子ごとに100ミリ秒かそこらを変更することで、複数のビーコンをシミュレートするためにタイマーを使用することも可能です。送信機は各ビーコン識別子に対して同じMACアドレスを有するので、異なるタイプの受信機がこれを別々に処理する。 iOSはそれらを複数のビーコンとして追跡し、Androidビーコンライブラリを使用するデバイスも同様に追跡します。

関連する問題