自動安卓發布了4.0版本的藍牙協議之后,越來越多的開發者收到了各種針對於BLE藍牙的開發需求。
而且有很多時候還需要兼容以前的3.0版本,給大家的開發帶來了困擾,筆者也遇到了這樣的問題,偶然間發現了getType()這個函數的妙用。
public int getType () Added in API level 18
Get the Bluetooth device type of the remote device.
Returns the device type DEVICE_TYPE_CLASSIC, DEVICE_TYPE_LE DEVICE_TYPE_DUAL. DEVICE_TYPE_UNKNOWN if it’s not available
public static final int DEVICE_TYPE_CLASSIC Added in API level 18
Bluetooth device type, Classic – BR/EDR devices Constant Value: 1 (0x00000001)
public static final int DEVICE_TYPE_DUAL Added in API level 18
Bluetooth device type, Dual Mode – BR/EDR/LE Constant Value: 3 (0x00000003)
public static final int DEVICE_TYPE_LE Added in API level 18
Bluetooth device type, Low Energy – LE-only Constant Value: 2 (0x00000002)
public static final int DEVICE_TYPE_UNKNOWN Added in API level 18
Bluetooth device type, Unknown Constant Value: 0 (0x00000000)
跟據這個接口,你可以方便的定義一個函數用來分辨搜索到的藍牙設備的版本。如
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
public static String deviceTypeTyString(int paramInt) {
switch (paramInt) {
default:
return "UNKNOWN";
case 1:
return "CLASSIC";
case 3:
return "CLASSIC and BLE";
case 2:
}
return "BLE only";
}
public static boolean isBLEDevice( BluetoothDevice device ) {
return (device.getType() == 2);
}
|
- 本文固定鏈接: http://4past.net/?p=72
- 轉載請注明: X先生 2015年09月02日 於 X先生 發表