10

Android 5 introduce l'indirizzo MAC BLE che ruota per una maggiore privacy. Ogni volta che si chiama BluetoothLeAdvertiser.startAdvertising(), l'indirizzo MAC viene modificato.Indirizzo MAC statico bluetooth Android 5 per la pubblicità BLE

È possibile disabilitare la rotazione degli indirizzi e utilizzare lo stesso indirizzo MAC durante l'intera vita di BluetoothLeAdvertiser?

risposta

12

L'indirizzo MAC è un indirizzo fisico e non cambia. Nella terminologia BLE, è l'indirizzo del dispositivo pubblico o BD_ADDR per BR/EDR. Non l'ho provato, ma leggerlo con readAddress() dovrebbe restituire lo stesso valore ogni volta.

Ciò che il framework BLE di Android fa NON è utilizzare quell'indirizzo durante la pubblicità. Piuttosto abilita la privacy usando gli Indirizzi di Risolvibilità Privati ​​che possono cambiare ogni pochi minuti circa, ma consentono comunque ai dispositivi vincolati di riconoscerlo usando l'IRK scambiato al legame.

Per ovvi motivi di privacy, il framework BLE di Android non consente di impostare il Controller per l'utilizzo dell'indirizzo pubblico durante la pubblicità. Quindi non è possibile disabilitare "l'indirizzo che ruota".

+0

Potrebbe aggiungere una sorta di fonte? – DagW

+2

Bluetooth 4.2 Core Spec: https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=286439 –

+0

@BogdanAlexandru se i pacchetti di annunci pubblicitari hanno solo gli indirizzi di risolvibilità privati, quindi, come fa un [ScanFilter] (http://developer.android.com/reference/android/bluetooth/le/ScanFilter.html) basato su indirizzi MAC funzionano? qualche idea? –