1

私はアンドロイドとBLEデバイスの接続に取り組んでいます。私は同じ時間に複数のBLEデバイスを接続したい。これを達成する方法は?アンドロイドアプリケーション経由で複数のBLEデバイスを接続する方法は?

+0

https://developers.google.com/nearby/messages/overviewこれが役立つ可能性があります –

+0

これは少し曖昧な質問です。 1つのデバイスは周辺機器(広告主)である必要があり、もう1つは周辺機器に接続できるクライアントである必要があります。これまでに何を試しましたか? – Emil

答えて

1

あなたのAndroidアプリケーションから複数のBLEデバイスに接続することができます。

接続:各BLEデバイスにこのコードを呼び出します。mBluetoothGatt = device.connectGatt(this, false, mGattCallback);mBluetoothGattをすべて一覧に保存します。

読み込み:mGattCallbackの方法onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic)またはonCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status)は、gattパラメータを持ちます。 gatt.getDevice().getAddress()は、データを受け取ったBLEデバイスのMACアドレスを提供します。

書き込み:mBluetoothGatt.getDevice().getAddress()を使用すると、指しているデバイスが常にわかります。あなたはそれにコマンドを書くことができます。 mGattCallbackメソッドonCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status)では、パラメータgattは、書き込みコマンドを確認するためのMACアドレスを提供します。

すべての接続で単一のmGattCallbackを使用できます。差別化すべきものがあり、常にMACアドレスを比較したくない場合は、接続ごとに単一のコールバックが必要です。

Thisは、あなたのAndroidデバイスがサポートできる接続数を教えてくれます。

まだ疑問がある場合はお気軽にお問い合わせください。

+0

大丈夫、私はこれを試します.. ..ありがとう。私が何か困ったことを見つけたら、あなたに伝えます。 –

+0

あなたはそれのためのソースコードを提供できますか? –

+0

@ j.prashantこれは単発通信と非常によく似ています。実際に例が必要な場合は、数日を私に与えてください。私はgithubでそれをホストします。 – Sundeep1501

関連する問題