1

私は現在 BLE アプリを開発しており、検出されたデバイスをフィルタリングして、BLE 互換のものだけをリストに残したいと考えています。

Broadcom API を使用すると、デバイスが BLE かどうかを簡単に確認できました。残念ながら、DROID RAZR は Broadcom ライブラリを提供していないため、Motorola BLE ライブラリを使用する必要がありました...そして当然のことながら、Bluetooth バージョンを確認する方法がありません。

可能なすべてのネイティブ Android Bluetooth クラスを読みましたが、関連する情報を見つけることができませんでした (PC、スマートフォンなどのカテゴリは見つかりましたが、バージョンは見つかりませんでした。)

スキャンされたデバイスの Bluetooth バージョンを確認する方法を知っている人はいますか?

4

1 に答える 1

1

デバイスを発見したときに、Bluetooth デバイス用の android.bluetooth.BluetoothDevice を取得できる場合は、Android 公式 Api BluetoothDevice.getType() を使用して、クラシック デバイスまたは ble デバイスをフィルタリングできます。

/**
 * Get the Bluetooth device type of the remote device.
 *
 * <p>Requires {@link android.Manifest.permission#BLUETOOTH}
 *
 * @return the device type {@link #DEVICE_TYPE_CLASSIC}, {@link #DEVICE_TYPE_LE}
 *                         {@link #DEVICE_TYPE_DUAL}.
 *         {@link #DEVICE_TYPE_UNKNOWN} if it's not available
 */
public int getType() {
    if (sService == null) {
        Log.e(TAG, "BT not enabled. Cannot get Remote Device type");
        return DEVICE_TYPE_UNKNOWN;
    }
    try {
        return sService.getRemoteType(this);
    } catch (RemoteException e) {Log.e(TAG, "", e);}
    return DEVICE_TYPE_UNKNOWN;
}
于 2015-08-08T16:38:02.793 に答える