„Android Oreo“ apima komandinės eilutės sąsajos palaikymą RRO temoms, o tai rodo, kad operacinė sistema vis labiau priartėja prie visos sistemos temos palaikymo.
Paleidus „Android Oreo“, daug laiko praleidžiama ieškant paslėptų gėrybių šaltinio kode. Anksčiau „Android“ inžinierių komanda turėjo kalbėjo apie temų įgalinimą „Android O“.. Mes pranešėme gegužės mėn kad antroji „Android O“ kūrėjo peržiūra galėjo būti užuomina, kad „Google“ palaiko „Overlay Manager Service“ (OMS) ir „Runtime Resource Overlay“ (RRO), bet dabar tikrai žinome, kad taip buvo. Android Oreo dabar, techniškai, palaiko OMS/RRO temą ir netgi suteikia sąsają temų įgalinimui arba išjungimui, jei galite pasinaudoti komandų eilute.
Atnaujinimas: „Substratum“ šias komandas naudojo su kūrėjo peržiūromis ir dabar su „Oreo“, nes jos buvo prieinamos!
Kas yra RRO ir OMS?
„RRO“ sukūrė „Sony“ teminėms funkcijoms „Sony Xperia“ linijoje. Kūrėjai, kurie pripažino jo svarbą, stengėsi išplėsti jo palaikymą į kitus ROM, o kartu su juo atsirado RRO temos daugelyje įrenginių – ne tik „Sony“ įrenginiuose. Tai išradingai pakeitė išteklius programos vykdymo metu, o tai tuo metu buvo paprasta naudoti, nei kitose teminėse parinktyse. Tai peraugo į OMS, kurią taip pat sukūrė „Sony“. Garsioji
Sluoksnių vadybininkas iš pradžių naudojo RRO temą, tačiau vėliau OMS buvo pritaikyta dabar žinomam kaip substratas ir yra labiausiai pažįstama teminė sistema mūsų forumuose. ROM mūsų forumuose su OMS įsipareigojimais reiškia, kad jie palaiko standartinį Substratum teminį variklį. „Pasenęs režimas“ substrate naudoja RRO temą.„Android Oreo“ pristato temų komandas
Atrodo, kad „Google“ dabar nori visiškai palaikyti šį AOSP temos tipą, galbūt pereidama prie visiško, sistemos palaikomo temų tvarkyklės. „Android Gerrit“ sistemoje „Google“ per pastaruosius mėnesius (ir su „Android Oreo“) atliko keletą pakeitimų, kurie siūlo imtis veiksmų, kad teminis variklis būtų įgalintas visoje sistemoje. Pakeitimai pateikiami toliau su nuorodomis į atitinkamus įsipareigojimus.
- Perdangos komandos
- Pristatyta OverlayManagerService (OMS).
- Naujas leidimas pavadinimu CHANGE_OVERLAY_PACKAGES
Visi šie pakeitimai reiškia „Google“ perėjimą prie tam tikros sistemos teminės programos, kuri bus įtraukta ateityje. Aukščiau išvardytam leidimui reikia sistemos privilegijų, taigi reiškia, kad šį leidimą gali iškviesti tik sistemos programa (arba programa su root prieiga). Vis dėlto tai įdomu, nes tai rodo, kad „Google“ pagaliau siekia kažkas.
Taigi kodėl tik techniškai ar Android Oreo palaiko temą? Na, paprastas atsakymas yra tas, kad nors galite pasinaudoti sistemos metodu temų diegimui, tai padaryti būtų gana beprasmiška. Taip yra todėl, kad net jei galite naudoti naują komandų eilutės sąsają įdiegtoms temoms valdyti, iš tikrųjų to negalite įdiegti naujas temas be root prieigos, nes temos turi patekti į katalogą, kuriame vartotojas negali naudotis erdvė. Naudodami šakninę prieigą galite tiesiog įjungti Substratum temą, todėl nereikia to daryti nauju būdu. „Google“ neįtraukė sistemos programos, kad būtų sukurta įrenginio tema, todėl iki tol nėra jokios naudos bandant tai padaryti naujai įtrauktu būdu.
Komandinės eilutės temų sąsaja
Mes, XDA, išbandėme komandą „Google Pixel“, kuriame veikia „Android Oreo“ leidimas. Nusprendėme išbandyti kai kurias komandas ir pirmiausia panaudojome
cmd overlays list
norėdami peržiūrėti visas iš anksto įdiegtas perdangas. Pastebėjome, kad egzistuoja „com.google.android.theme.pixel“, jį išjungę ir įgalinę „android.auto_generated_rro__“, vykdydami šias komandas.
Kaip matyti čia, standartinė perdanga yra išjungta, o automatiškai sugeneruota – įjungta. Vykdydami komandą norėdami dar kartą peržiūrėti įdiegtas perdangas, matome šią išvestį.
Dėl to mūsų „Google Pixel“ bus sukurta nauja teminė „Android“ sistemos nustatymų programa. Atminkite, kad aukščiau pateiktame perdangos sąraše taip pat yra temų, įdiegtų naudojant „Substratum“, ir mes galėjome jas įjungti / išjungti taip pat lengvai.
Naršydami šaltinį radome ir kitą komandą. Komanda yra tokia
cmd overlay dump --user 0
suteikia mums tokią išvestį.
Išvestis
Nustatymai
android.auto_generated_rro__: 0 {
mPackageName...: android.auto_generated_rro__
vartotojo ID...: 0
mTargetPackageName.: Android
mBaseCodePath...: /vendor/overlay/framework-res__auto_generated_rro.apk
mValstybė...: STATE_ENABLED
MisEnabled...: tiesa
misStatic...: tiesa
}
com.google.android.theme.pixel: 0 {
mPackageName...: com.google.android.theme.pixel
vartotojo ID...: 0
mTargetPackageName.: Android
mBaseCodePath...: /vendor/overlay/Pixel/PixelThemeOverlay.apk
mValstybė...: STATE_DISABLED
misĮjungta...: klaidinga
misStatic...: klaidinga
}
Numatytosios perdangos: com.google.android.theme.pixel
PackageInfo talpykla
2 paketai
Skaityti daugiau
Taigi, kaip matyti, „Google“ įdėjo daug darbo kurdama teminį variklį ir integruodama jį į AOSP šaltinį. Panašu, kad jei jis būtų įtrauktas visoje sistemoje, temos būtų įjungtos sistemos vartotojo sąsajos imtuve. „Google“ taip pat turi pateikė informaciją originalios įrangos gamintojams, todėl gali būti, kad papildomi originalios įrangos gamintojai ateityje „Android Oreo“ įgalins temų palaikymą, pagrįstą AOSP versija.
Apskritai tai labai jaudinanti plėtra. Temos yra viena iš daugelio dalių, apibrėžiančių Android kaip visiškai pritaikomą operacinę sistemą jūsų telefone, net jei šiuo metu jai reikia pagrindinės sistemos temų. Ateityje, jei ji būtų įgalinta dirbti be root prieigos, tai būtų didelis žingsnis vartotojo laisvės link. Žinoma, jis ilgą laiką gali būti užrakintas sistemos vartotojo sąsajos imtuve (nes sugadintos temos gali sugadinti programas), bet leidžia vartotojas, norintis netgi pasinaudoti savosios temos palaikymu, yra didžiulis mobiliojo ryšio priedas sistema.