3

Bluetooth SPP を使用して、リモートの Bluetooth デバイスから 1.15k の速度で Bluetooth データを収集する必要があります。次のようにリモートデバイスに接続します。

try {
  tmp = device.createRfcommSocketToServiceRecord(MY_UUID);
} catch (IOException e) {
  Log.e(TAG, "create() failed", e);
}
mmSocket = tmp;
}

public void run() {
  Log.i(TAG, "BEGIN mConnectThread");
  setName("ConnectThread");
  // Always cancel discovery because it will slow down a connection
  mAdapter.cancelDiscovery();
  // Make a connection to the BluetoothSocket
  try {
    // This is a blocking call and will only return on a
    // successful connection or an exception
    mmSocket.connect();
  } catch (IOException e) {
    connectionFailed();
    // Close the socket
    try {
      mmSocket.close();
    } catch (IOException e2) {
      Log.e(TAG, "unable to close() socket during connection failure", e2);
    }

リモート デバイスへの接続要求は成功し、デフォルトのボー レート 9600bps でデータを受信できます。

しかし、リモート bluetooth アダプタ デバイスの送信ボー レートを 1.15kbps に変更すると、アプリケーションは bluetooth でパケットを受信しません。上で述べたように、この投稿の提案を試しました。

私が見逃しているものはありますか?ボーレートを変更するためにアプリケーションで何もする必要がないというのは本当ですか? RFComm チャネルはボーレートを自動的に調整しますか?

Android 2.1-update1 プラットフォームを使用しています。

よろしく、ジャグミート

4

1 に答える 1

5

私は自分の質問に対する答えを見つけました。

ボーレートを変更するためにアプリケーションで何もする必要がないというのは本当ですか?

回答: いいえ、ボーレートを変更するためにクライアント側で何もする必要はありません。RFComm チャネルは、ボーレートを自動的に調整します。

于 2012-06-06T03:58:34.017 に答える