Siamo di fronte a un problema durante la lettura delle caratteristiche dal dispositivo BLE remoto.Lettura di più di 20 byte dal dispositivo BLE remoto non riuscita in Lolipop
Questo problema si verifica in Android OS 5.0
e versioni successive.
punti sono al di sotto di generare problema:
- Fai un dispositivo periferico con un servizio e uno caratteristiche.
- Le caratteristiche avranno solo permesso di lettura. Ora imposta il valore di queste caratteristiche con più di 20 caratteri, cioè 20 byte.
- Ora il dispositivo periferico trasmette se stesso con un servizio e una caratteristica.
- Ora lanciare qualsiasi applicazione per scanner BLE dal mercato e connettersi con questa periferica.
- Una volta collegato correttamente al dispositivo periferico, provare a leggere le caratteristiche.
- In questo caso non mostrerà alcun dato e durante il debug dell'app mostra che restituisce dati nulli.
- Lo stesso caso sopra non funziona su Android OS 5.0 e versioni successive.
- Lo stesso caso funziona in Android 4.4.
Quindi c'è qualcosa di cambiamento nel sistema operativo Android 5.0 e superiori che internamente disabilitare readblob()
richiesta in grado di leggere i dati con più di 20 caratteri.
Stiamo cercando aiuto per risolvere questo problema.
http://stackoverflow.com/questions/24135682/android-sending-data-20-bytes-by-ble – pRaNaY