2016-05-17 10 views
0

データフラグ付きのアンドロイド携帯からiBeaconデータパケットを送信したい。Androidデバイスはフラグ付きのiBeaconとして動作できますか?

Data Flag(0x01)は、ビーコンの機能を表すBluetooth GAP仕様です。

マイ状況:

現在は、私がBluetoothLeAdvertiserを使って宣伝しようとしています。しかし、私は思ったとおりに動作しません。私はそれが、私は "メーカー固有のデータ"を広告することができることがわかった。

BluetoothManager manager = (BluetoothManager) getSystemService(BLUETOOTH_SERVICE); 
mBluetoothAdapter = manager.getAdapter(); 
mBluetoothLeAdvertiser = mBluetoothAdapter.getBluetoothLeAdvertiser(); 

// Settings here 

mBluetoothLeAdvertiser.startAdvertising(settings, getAdvertiseData(), mAdvertiseCallback); 


私の現在の結果:

enter image description here


私が欲しいもの:

共通iBeaconデータパケット(下の画像)は、データフラグを持っています、タイプ0x01。そして私はこのフラグを私のiBeacon広告パケットに加えたいと思う。
つまり、パケットの先頭部分にRawデータ「0x020106」を追加します。
これをどのようにアーカイブできますか?

その他、各種

enter image description here




私はすでに以下の質問については読んだことがあるが、それは私の問題のためには役立ちません。
Can an Android device act as an iBeacon?


また、私はすでにアンドロイドBLE APIは、データフラグをサポートしていないことを読みました。
しかし、コメントは2015年に行われました。

https://github.com/AltBeacon/android-beacon-library/issues/141

残念ながら、これは現在、AndroidのBLE APIで許可されていないので、ライブラリは、このことはできません。


すべてのヘルプは理解されるであろう。ありがとうございました。

+0

iBeaconはApple独自のBLEの一部です。 AltBeaconサポートライブラリとAppleの間では、メモリーが正しく機能するかどうかは、ずっと前のことではありませんでした。 – t0mm13b

+0

コメントありがとうございました、t0mm13b。わかりました。私のポイントは、私の "ビーコンパケット"に "Manufacturer specific data(0xFF)"というデータフラグ(0x01)を追加することができますか? –

+0

実際に試してみましたか? – t0mm13b

答えて

1

残念なことに、AndroidのJava BLE APIはこれを行う方法を公開していません。私はあなたが参照したAndroid Beacon Library Issueに答えるためにこのトピックを研究しました。 Java APIは、サービスデータまたは製造元データのいずれかを宣伝するだけです。彼らは他の宣伝用PDUを指定できるだけの柔軟性がありません。これは2016年5月現在では変更されていません。

低レベルに落としてCのBlueDroid APIに話しかけることで、あなたが望むことができるかもしれません。しかし、これを行うには根っこのデバイスが必要で、おそらくあなたにアクセスできるようにカスタムAndroid OSイメージをインストールする必要があります。

関連する問題