私は現在、Bluetooth Low Energyを使用してBLEデバイスと通信するアプリケーションを開発しています。問題は、プロジェクトが作業のために高いデータの連続交換を必要としていることです。BLE、同じデバイスからの書き込みと読み取り、スループットと時間の損失なし
現在、私は同じBluetoothGatt機能と同じデータ配列を共有する4つのフラグメントを開発しました。私は、BLEデバイスに接続するとき、私は接続の優先順位を高く設定し、次にデータを書き込みループを開始、通常わずか4バイト、50 mlsごとに書き込みます。
同時に私は読書を開始し、自分のインターフェースを更新します。 私は書き込みを停止すると50mlごとにデータパケットを受け取るが、書き込みループが読み取り時間を50mlから100に増やすようにすると気づいた。 これは本当に大きな問題ではありませんが、すべてのシステムのパフォーマンスを低下させます。
私は解決策を探していましたが、すでに多くの助けをしていた接続優先度を除いて、何も見つかりませんでした。誰かがこのような問題を管理していないかどうか、ありがとう
「特性」に「書込み」と「読取り」を使用するのは、データ転送を確認するために複数の無線信号交換が必要なため、何らかの形で重い作業です**。データを頻繁に送信する必要がある場合や、大量のデータを送信する必要がある場合は、**特性通知システムを使用する必要があります。非常に時折の交換のために読み書きするのではなく、データを転送することを意図しています。温度計のビーコンを:手動で読み取るのではなく温度の変化を通知したいと思うでしょうが、F°とC°の間で切り替える特性に書きたいとします。それでおしまい ! – Mackovich
ドキュメントを探した後、使用する方法は次のとおりです:[BluetoothGattServer#notifyCharacteristicChanged](https://developer.android.com/reference/android/bluetooth/BluetoothGattServer.html) – Mackovich
あなたは、 Characteristic値を設定し、値を設定する代わりに変更を通知し、書き込みを呼び出しますか?申し訳ありませんが私はちょうど誤解したくない、あなたの助けをありがとう! –