尋找 BLE 裝置
使用藍芽 API 需要以下許可權:
android.permission.BLUETOOTH
android.permission.BLUETOOTH_ADMIN
如果你的目標裝置是 Android 6.0( API 級別 23 )或更高版本,並且想要執行掃描/廣告操作,則需要獲得位置許可權:
android.permission.ACCESS_FINE_LOCATION
要麼
android.permission.ACCESS_COARSE_LOCATION
注意 - 使用 Android 6.0(API 級別 23)或更高版本的裝置也需要啟用位置服務
需要 BluetoothAdapter 物件才能開始掃描/廣告操作:
BluetoothManager bluetoothManager = (BluetoothManager) context.getSystemService(Context.BLUETOOTH_SERVICE);
bluetoothAdapter = bluetoothManager.getAdapter();
BluetoothLeScanner 類的 startScan (ScanCallback callback)
方法是開始掃描操作的最基本方法。接收結果需要 ScanCallback
物件:
`bluetoothAdapter.getBluetoothLeScanner()`.startScan(new `ScanCallback()` {
@Override
public void onScanResult(int callbackType, ScanResult result) {
super.onScanResult(callbackType, result);
Log.i(TAG, "Remote device name: " + `result.getDevice()`.getName());
}
});