寻找 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());
       }
    });