Android Oreo include suport pentru interfața de linie de comandă pentru temele RRO, sugerând că sistemul de operare se apropie din ce în ce mai mult de suportul temelor la nivel de sistem.
Odată cu lansarea Android Oreo vine o mulțime de timp petrecut căutând bunătăți ascunse în codul sursă. În trecut, echipa de inginerie Android a avut am vorbit despre activarea tematicii în Android O. Am raportat în mai că a doua previzualizare pentru dezvoltatori a Android O ar fi putut fi un indiciu că Google a susținut Serviciul Manager de suprapunere (OMS) și Suprapunerea resurselor de rulare (RRO), dar acum știm sigur că a fost. Android Oreo acum, tehnic, acceptă tematica OMS/RRO și chiar oferă o interfață pentru activarea sau dezactivarea temelor, cu condiția să vă distrați folosind linia de comandă.
Actualizare: Substratum a folosit aceste comenzi cu previzualizările dezvoltatorilor și acum cu Oreo de când erau disponibile!
Ce sunt RRO și OMS?
RRO a fost dezvoltat intern de Sony pentru funcționalitatea temei pe linia Sony Xperia. Dezvoltatorii care i-au recunoscut semnificația au lucrat pentru a-și extinde suportul și la alte ROM-uri și, odată cu acesta, a apărut tematica RRO pe o multitudine de dispozitive, nu doar pe dispozitivele Sony. A înlocuit ingenios resursele în timpul rulării aplicației, o ușurință de utilizare nevăzută de alte opțiuni de tematică la momentul respectiv. Acesta a evoluat în OMS, care a fost, de asemenea, dezvoltat intern de Sony. Faimosul
Manager de straturi a folosit tematica RRO inițial, dar OMS a fost adaptată ulterior în ceea ce este acum cunoscut sub numele de Substratum și este cadrul de tematică cel mai familiar utilizatorilor de pe forumurile noastre acum. ROM-urile de pe forumurile noastre cu comite OMS înseamnă că acceptă motorul de tematică standard al Substratum. „Modul moștenit” din Substratum utilizează tematică RRO.Android Oreo introduce comenzile temei
Se pare că Google dorește acum să susțină pe deplin acest tip de temă în AOSP, eventual îndreptându-se către un manager de teme complet, susținut de sistem. Pe Android Gerrit, Google a făcut o serie de modificări în ultimele luni (și cu Android Oreo) care sugerează mișcări pentru a activa motorul de tematică la nivelul întregului sistem. Modificările sunt mai jos, cu link-uri către comiterile respective.
- Suprapunerea comenzilor
- OverlayManagerService (OMS) a fost introdus
- O nouă permisiune intitulată CHANGE_OVERLAY_PACKAGES
Toate aceste schimbări semnifică o mișcare a Google către o anumită formă de aplicație de tematică a sistemului care să fie inclusă în viitor. Permisiunea enumerată mai sus necesită privilegii de sistem și, prin urmare, înseamnă că numai o aplicație de sistem (sau o aplicație cu acces root) poate invoca această permisiune. Cu toate acestea, este interesant, deoarece arată că Google lucrează în sfârșit ceva.
Deci de ce numai tehnic Android Oreo acceptă tematica? Ei bine, răspunsul simplu este că, deși puteți invoca metoda sistemului de instalare a temelor, acest lucru s-ar dovedi destul de inutil. Acest lucru se datorează faptului că, deși puteți utiliza noua interfață de linie de comandă pentru a gestiona temele instalate, de fapt nu puteți instalați teme noi fără acces root, deoarece temele trebuie să intre într-un director care este restricționat de la utilizator spaţiu. Cu acces la rădăcină, puteți oricum să activați pur și simplu o temă Substratum, deci nu este nevoie să o faceți în noua modalitate. Google nu a inclus o aplicație de sistem pentru tema dispozitivului, așa că până atunci nu există niciun beneficiu să încerci să o faci în modul nou inclus.
Interfața de tematică a liniei de comandă
Noi, cei de la XDA, am testat comanda pe un Google Pixel care rulează versiunea Android Oreo. Am decis să testăm unele dintre comenzi și să le folosim mai întâi
cmd overlays list
pentru a vizualiza toate suprapunerile preinstalate. Am observat existența unui „com.google.android.theme.pixel”, dezactivându-l și activând în schimb „android.auto_generated_rro__” rulând următoarele comenzi.
După cum se poate vedea aici, suprapunerea standard este dezactivată, iar cea generată automat este activată. Rulând comanda noastră pentru a vizualiza din nou suprapunerile noastre instalate, vedem următoarea ieșire.
Acest lucru are ca rezultat o aplicație de setări a sistemului Android nou tematică pe Google Pixel. Rețineți că lista de suprapunere de mai sus include și teme instalate folosind Substratum și am putut să le activăm/dezactivăm la fel de ușor.
Am găsit și o altă comandă când săpăm prin sursă. Comanda este după cum urmează
cmd overlay dump --user 0
ne oferă următorul rezultat.
Ieșire
Setări
android.auto_generated_rro__: 0 {
mPackageName...: android.auto_generated_rro__
mUserId...: 0
mTargetPackageName.: Android
mBaseCodePath...: /vendor/overlay/framework-res__auto_generated_rro.apk
mState...: STATE_ENABLED
mIsEnabled...: adevărat
mIsstatic...: adevărat
}
com.google.android.theme.pixel: 0 {
mPackageName...: com.google.android.theme.pixel
mUserId...: 0
mTargetPackageName.: Android
mBaseCodePath...: /vendor/overlay/Pixel/PixelThemeOverlay.apk
mState...: STATE_DISABLED
mIsEnabled...: false
mIsstatic...: fals
}
Suprapuneri implicite: com.google.android.theme.pixel
Cacheul PackageInfo
2 pachet(e)
citeşte mai mult
Deci, după cum se vede, Google a depus multă muncă în dezvoltarea motorului de tematică și integrarea acestuia în sursa AOSP. Se pare că ar fi adăugat la nivelul întregului sistem, temele vor fi activate în tunerul System UI. Google are, de asemenea furnizate informații pentru OEM, așa că este posibil ca OEM-uri suplimentari să activeze suportul pentru tematică pe baza versiunii AOSP în viitor pe Android Oreo.
În general, aceasta este o dezvoltare foarte interesantă. Tematica este una dintre numeroasele părți care definește Android ca un sistem de operare complet personalizabil pe telefonul dvs., chiar dacă în prezent necesită root pentru teme la nivel de sistem. În viitor, dacă ar fi activat să funcționeze fără acces root, ar fi un pas major în direcția libertății utilizatorului. Desigur, ar putea fi blocat în tunerul System UI pentru o perioadă de timp (deoarece temele stricate pot distruge aplicațiile), dar permițând utilizatorul să profite chiar și de suportul temei native în primul rând este un plus uriaș pentru operarea mobilă sistem.