Il seguente codice funziona perfettamente sul mio Nexus 9 con Android 5.1.1 (Build LMY48M), ma non funziona su un Nexus 9 con Android 6.0 (Build MPA44l)Bluetooth LE ScanFilters non funzionano su Android M
Su Android 5.x, il codice sopra riportato restituisce una richiamata quando viene visualizzato un annuncio del produttore che corrisponde al filtro di scansione. (Vedere l'esempio di output Logcat di seguito.) Sul Nexus 9 con MPA44l, non si ricevono richiami. Se si commento il filtro di scansione, le richiamate vengono ricevuti con successo sul Nexus 9. ScanFilters
09-22 00:07:28.050 1748-1796/org.altbeacon.beaconreference D/BluetoothLeScanner﹕ onScanResult() - ScanResult{mDevice=00:07:80:03:89:8C, mScanRecord=ScanRecord [mAdvertiseFlags=6, mServiceUuids=null, mManufacturerSpecificData={280=[-66, -84, 47, 35, 68, 84, -49, 109, 74, 15, -83, -14, -12, -111, 27, -87, -1, -90, 0, 1, 0, 1, -66, 0]}, mServiceData={}, mTxPowerLevel=-2147483648, mDeviceName=null], mRssi=-64, mTimestampNanos=61272522487278}
Qualcuno ha visto il lavoro su Android M?
Avete bisogno di entrambi - NETWORK_PROVIDER e GPS_PROVIDER? O semplicemente NETWORK_PROVIDER. Maggiori informazioni qui: https://developer.android.com/guide/topics/connectivity/bluetooth-le.html –