私は、LE と Classic の Bluetooth モジュールを持っています。これは、アドバタイズと同時に検出可能になるように設定されています。私の Android アプリでは、検出を開始し、デバイスへの従来の接続を確立したいので、LE デバイス以外のすべてを listView に追加します。デバイスを検出しているときに、デバイスを見つけるのに複数のスキャンが必要であることがわかりました。このため、いくつかのデバッグ ステートメントを追加したところ、デバイスが 3 つの異なるデバイス タイプ、LE、Classic、および Dual として表示されることがわかりました。
Android 開発者サイトには、デュエル デバイスがこれであるとしか書かれていません。
"Bluetooth デバイス タイプ、デュアル モード - BR/EDR/LE
定数値:3(0x00000003)」
http://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#DEVICE_TYPE_DUAL
私は使っている
device.getType() != BluetoothDevice.DEVICE_TYPE_LE
デバイスをフィルタリングし、これを使用してデバイスの種類を見つけます
DebugWrapper.infoMsg(device.getAddress(), "CYCLOPS C");
DebugWrapper.infoMsg(""+device.getType(), "CYCLOPS TYPE");"
単一のスキャンと検出されたデバイスを示す LogCat
08-12 10:32:08.226: D/BtClassicDeviceBase(18064): isConnected
08-12 10:32:08.226: D/BluetoothAdapterWrapper(18064): startDiscovery
08-12 10:32:08.236: D/BtClassicDeviceBase(18064): isConnected
08-12 10:32:08.357: I/System.out(18064): rssi: -67
08-12 10:32:08.597: I/System.out(18064): rssi: -76
08-12 10:32:08.647: I/System.out(18064): rssi: -83
08-12 10:32:08.697: I/BTC device(18064): 00:16:A4:09:3A:AF
08-12 10:32:08.697: I/BTC TYPE(18064): 1
08-12 10:32:08.697: I/System.out(18064): rssi: -46
08-12 10:32:09.628: I/System.out(18064): rssi: -84
08-12 10:32:09.768: I/System.out(18064): rssi: -78
08-12 10:32:10.349: I/System.out(18064): rssi: -65
08-12 10:32:11.059: I/BTC device(18064): 00:16:A4:09:3A:AF
08-12 10:32:11.059: I/BTC TYPE(18064): 3
08-12 10:32:11.059: I/System.out(18064): rssi: -47
08-12 10:32:11.460: I/System.out(18064): rssi: -73
08-12 10:32:12.871: I/System.out(18064): rssi: -100
08-12 10:32:13.512: I/System.out(18064): rssi: -70
08-12 10:32:14.142: I/System.out(18064): rssi: -89
08-12 10:32:15.454: I/System.out(18064): rssi: -67
08-12 10:32:15.594: I/System.out(18064): rssi: -72
08-12 10:32:15.694: I/System.out(18064): rssi: -83
08-12 10:32:17.095: I/System.out(18064): rssi: -73
08-12 10:32:17.255: I/BTC device(18064): 00:16:A4:09:3A:AF
08-12 10:32:17.255: I/BTC TYPE(18064): 3
08-12 10:32:17.255: I/System.out(18064): rssi: -47
08-12 10:32:20.148: I/System.out(18064): rssi: -91
08-12 10:32:21.079: D/BtClassicDeviceBase(18064): isConnected
Android が検出したデバイスのタイプをどのように定義し、何が決闘デバイスを決定するかを知っている人はいますか?