問題タブ [android-ble]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
186 参照

android - デバイスがまだ接続されている間に Android BLE が STATE_DISCONNECTED を受信する

ネイティブ BLE API を使用して BLE デバイスと接続する Android アプリを開発しています。Bluetooth デバイスがまだ接続されていて、そこからデータを読み取ることができるときに、BluetoothGattCallback で STATE_DISCONNECTED を何度も受け取ります。

この問題は主に Android 5.0 以降で発生し、以前のバージョン (4.4 など) では発生しません。以前のバージョンでは、STATE_DISCONNECTED を受信すると、実際に切断されました。

0 投票する
0 に答える
1871 参照

android - BluetoothGattCharacteristic 値のフォーマット タイプを取得するには?

IOT用のアプリを開発しながらBLE周辺機器と通信してみました。BLE Lollipop API を使用します。

各 BluetoothGattService は異なる BluetoothGattCharacteristic を提供でき、それぞれが読み取り、書き込み、または通知される特定の値を表します。

価値はさまざまな形で伝えられます。ただし、特定の Characteristic がどの形式でエンコードされているかを知る方法はありません。

この mKeySize は解決策になると思いましたが、値の出力を決定するために BluetoothGattCharacteristic 内でアクセスしたり使用したりすることはできません。

次の関数を利用して、目的の出力をチェックしました。

しかし、通信データが複雑でない特定の場合にのみ有用でした。

デバイス名-> (getStringValue)

BatteryLevel ->(getIntValue(BluetoothGattCharacteristic.FORMAT_UINT8,0))

それらは簡単な餌でしたが、 Peripheral Preferred Connection Parametersのような特性はどこにも認識されませんでした。

私はすでに静的ハッシュマップを使用して、割り当てられた番号に基づいて仕様名を取得しました。これは、適応されたすべての BLE プロファイルを含めるためにサイズが大きくなるようです。

BluetoothGattCharacteristics 値を適切に取得するためのより良い方法があるかどうか知りたいですか?

また、特性値と特定の場所での特定の値を記述するさまざまな方法がありますが、この不確実性にどのようにアプローチすればよいですか?

この Android アプリケーションBLEScannerをチェックしてください。大部分は読み取りと書き込みを実行できます。

0 投票する
1 に答える
1340 参照

android - Android SDK を使用して Bluetooth デバイスからアクティブな接続を検出する方法

Bluetooth 接続を使用する Android アプリで作業しています。デバイスからアプリにデータを読み取りたいのですが、データを読み取る前にデバイスに接続されているかどうかを知る必要があります。

以下は、デバイスをペアリングできるBluetooth設定を起動するコードです。ペアリングしたデバイスがアプリにアクティブに接続されており、データを送信する準備ができていることを確認するにはどうすればよいですか?