Android Recherche de périphériques BLE


Exemple

Les autorisations suivantes sont requises pour utiliser les API Bluetooth:

android.permission.BLUETOOTH
android.permission.BLUETOOTH_ADMIN

Si vous ciblez des appareils avec Android 6.0 ( API niveau 23 ) ou supérieur et que vous souhaitez effectuer des opérations d'analyse / de publicité, vous aurez besoin d'une autorisation de localisation:

android.permission.ACCESS_FINE_LOCATION

ou

android.permission.ACCESS_COARSE_LOCATION

Remarque.- Les services de localisation avec Android 6.0 (API niveau 23) ou plus doivent également avoir les services de localisation activés.

Un objet BluetoothAdapter est requis pour démarrer les opérations d'analyse / de publicité:

BluetoothManager bluetoothManager = (BluetoothManager) context.getSystemService(Context.BLUETOOTH_SERVICE);
bluetoothAdapter = bluetoothManager.getAdapter();

La startScan (ScanCallback callback) de la classe BluetoothLeScanner est la méthode la plus simple pour démarrer une opération d'analyse. Un objet ScanCallback est requis pour recevoir les résultats:

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