Indicatorii de nivel al bateriei Bluetooth vin în sfârșit pe Android

click fraud protection

Indicatorii de nivel al bateriei Bluetooth pot ajunge în sfârșit la stocul Android, astfel încât dispozitivele Google, Motorola și Sony să poată obține nivelul bateriei dispozitivelor conectate.

O caracteristică cu adevărat utilă pentru cei dintre noi cu căști Bluetooth și alte dispozitive se îndreaptă în sfârșit către AOSP: indicatori de nivel al bateriei Bluetooth. Aceasta înseamnă că utilizatorii Google, Motorola, Sony și alte dispozitive cu software Android aproape de stoc ar trebui să fie capabil să spună nivelul bateriei dispozitivelor lor conectate prin Bluetooth fără a fi nevoie de o terță parte aplicarea. Nu se poate spune exact cum va apărea acest indicator de nivel al bateriei Bluetooth în starea sa finală, dar existența acestui nou API în AOSP înseamnă că dezvoltatorii pot implementa indicatorii de baterie Bluetooth oricum aceștia ca.

Acum, pentru cei dintre voi cu anumite ROM-uri personalizate (cum ar fi LineageOS) sau cu dispozitive de la anumiți producători (cum ar fi cele de la Samsung, LG, Huawei, OnePlus sau Xiaomi), aceasta nu este o caracteristică nouă. Indicatorii de nivel al bateriei pentru dispozitivele Bluetooth conectate au fost acceptați de ani de zile pe multe ROM-uri personalizate și pe dispozitive OEM terțe, dar un astfel de caracteristica a lipsit în special din Android Open Source Project (AOSP), ceea ce înseamnă că orice telefon Google cu firmware-ul stoc nu va suporta aceasta.

Indicator de nivel al bateriei Bluetooth Samsung
Indicator de nivel al bateriei Bluetooth OnePlus
Indicator de nivel al bateriei Bluetooth LG

Utilizatorii cu dispozitive Bluetooth care au norocul să aibă o aplicație însoțitoare disponibilă pe Magazinul Google Play poate prelua informații despre nivelul bateriei în acest fel, dar în rest sunt puține Opțiuni. O aplicație populară din Play Store numită Baston a încercat să adauge această caracteristică, dar este destul de limitat în ce gamă de dispozitive poate suporta (fără vină de sine stătătoare) și este, de asemenea, cunoscut a fi destul de defectuos (mulți utilizatori raportând deconectări frecvente ale Bluetooth).

BastonDezvoltator: limitium

Pret: Gratuit.

2.8.

Descarca

În loc să vă bazați pe aplicații terțe care fie funcționează numai cu un singur dispozitiv Bluetooth pe care îl dețineți, fie care acceptă doar a câteva dispozitive, ar fi grozav dacă Google ar interveni pentru a oferi o funcție care a fost disponibilă pe alte dispozitive pentru ani. Și, în cele din urmă, se pare că tocmai asta fac.


API-uri Bluetooth Battery Level în AOSP

Grupul de interes special Bluetooth (Bluetooth SIG), organismul care supraveghează standardele pentru fiecare iterație Bluetooth, a definit deja un serviciu de baterie (BAS) în GATT (Servicii de atribute generice), dar depinde de Bluetooth să accepte BAS. Conform unor noi comite pe care le-am găsit în timp ce săpăm prin AOSP, Google se pregătește să adauge noi API-uri pentru a „obține nivelul bateriei dispozitivului de la distanță”. În special, ei menționează următoarele completări la AOSP:

Adăugați API-uri pentru a obține nivelul bateriei dispozitivului de la distanță

  • Adăugați API-ul BluetoothDevice.getBatteryLevel() pentru a recupera informații despre nivelul bateriei dispozitivului de la distanță
  • Adăugați dispozitiv Bluetooth. ACTION_BATTERY_LEVEL_CHANGED intenția de a notifica utilizatorul că nivelul bateriei dispozitivului de la distanță s-a schimbat
  • Adăugați metode de serviciu backend pentru BluetoothDevice.getBatteryLevel()
  • Adăugați câmpul de nivel al bateriei în DeviceProperties cu getters și setters
  • Adăugați metoda updateBatteryLevel() în RemoteDevices
  • Adăugați metoda resetBatteryLevel() în RemoteDevices
  • Resetați nivelul bateriei pentru dispozitiv când dispozitivul este deconectat în aclStateChangeCallback() pentru a asigura o intenție BATTERY_LEVEL_CHANGED atunci când dispozitivul raportează pentru prima dată informații despre nivelul bateriei după conectare
  • Adăugați teste pentru updateBatteryLevel() și resetBatteryLevel()

Din aceasta, putem vedea că Google va adăuga o nouă metodă în Dispozitiv Bluetooth clasa numită getBatteryLevel() care va prelua nivelul curent al bateriei unui dispozitiv conectat atunci când este apelat. Potrivit sursei cod, aceasta returnează o valoare între 0 și 100 (sau -1 dacă Bluetooth este dezactivat, dispozitivul este deconectat sau nu acceptă raportarea nivelului bateriei). Prin urmare, aceasta înseamnă că este posibil ca nivelul bateriei să fie afișat într-un mod mai informativ decât o simplă bară. Un dezvoltator ar putea afișa o notificare sau un widget cu procentul exact, de exemplu.

Dar asta nu este tot, o aplicație care se abonează la intenția de difuzare ACTION_BATTERY_LEVEL_CHANGED va fi notificată când nivelul bateriei dispozitivului conectat se va schimba. Cu un receptor de transmisie, o aplicație care ascultă modificări ale stării bateriei dispozitivului Bluetooth conectat va fi notificat când nivelul bateriei s-a schimbat, astfel încât nu va fi nevoie să implementați un serviciu de sondare în fundal persistent drăguț. Această valoare este trimisă ca un număr întreg între 0 și 100% prin intenția suplimentară EXTRA_BATTERY_LEVEL și aplicația poate diferenția între dispozitivele conectate prin filtrarea prin intent extra EXTRA_DEVICE.

Chiar și anumite dispozitive care trimit informații despre baterie în felul lor, cum ar fi Plantronics XEvent sau Apple VSC, vor fi de asemenea susținute. De asemenea, se lucrează la raportarea nivelului bateriei Bluetooth Low Energy (BLE). sprijinit, deși acesta este listat ca „nu se poate îmbina” momentan.


Funcție posibilă pentru Android 8.1?

Android O este aproape la noi. The a patra previzualizare pentru dezvoltatori a fost lansat recent și a vizat în principal remedieri de erori, deși au existat câteva modificări minore ale interfeței de utilizare ici și colo. Cu toate acestea, Google a anunțat că a treia previzualizare pentru dezvoltatori a prezentat toate API-urile Android O finalizate pe care dezvoltatorii le pot folosi pentru a se pregăti pentru următoarea versiune de Android. Ca atare, aceasta înseamnă că noul API de raportare a nivelului bateriei Bluetooth conectat nu va ajunge la prima versiune a Android O - Android 8.0.

Cu toate acestea, asta nu înseamnă că nu va veni. Este posibil ca Google să introducă oficial acest API (când este de fapt terminat) cu eventualul lansarea Android 8.1. În același timp, ei pot decide chiar ca această caracteristică să fie acceptată prin intermediul Android Biblioteca de suport, aducându-l la versiunile anterioare de Android. Dacă acest lucru se întâmplă, atunci utilizatorii nu vor trebui să aștepte luni pentru a se bucura de o astfel de caracteristică (deși întotdeauna încurajăm utilizatorii să încerce unul dintre numeroasele ROM-uri personalizate disponibile pe forumurile noastre minunate).

Cu toate acestea, aceasta ar trebui să fie o veste incitantă pentru fanii software-ului stoc de pe telefonul lor. Sperăm că nu va trebui să fii gelos pe utilizatorii cu Apple, Samsung, Huawei, LG și alte dispozitive cu această funcție ingenioasă care ar fi trebuit să fie disponibilă în Android cu mult, mult timp în urmă. Având în vedere recenta revărsare de susținere a ideii peste tot Reddit, suntem siguri că aceasta va fi o caracteristică binevenită - când va fi vorba, în cele din urmă, de stocul Android.