Bluetooth UUID の意味がわかりません。UUID はプロトコルを示しますか (例: RFCOMM )? もしそうなら、なぜcreateRfcommSocketToServiceRecord()
メソッドは名前に rfcomm を指定するのに UUID を必要とするのですか? BluetoothChat サンプル コードの UUID が一見恣意的でハードコードされているのはなぜですか?
この質問に従って、4.0.4 を実行しているデバイスがリフレクションを使用して (Android 以外の外部デバイスに) 接続しようとすると、null ポインター例外が発生するため、私の質問が発生します。ただし、その質問に対する解決策は私にはうまくいきません。UUID muuid = device.getUuids()[0].getUuid();
例外を発生させます。
編集:この回答に従って(を使用して)シリアルポートサービスのUUIDをハードコーディングすることで、この問題を解決しましたUUID.fromString("00001101-0000-1000-8000-00805f9b34fb");
。
createInsecureRfcommSocketToServiceRecord(),
さらに、リフレクション メソッドを使用せずに使用して、セキュリティで保護されていないrfcomm ソケットを作成するために UUID を指定する必要がある理由に困惑しています。
誰かが私をまっすぐにすることができますか?