Az Android Oreo tartalmazza a parancssori felület támogatását az RRO témákhoz, utalva arra, hogy az operációs rendszer egyre közelebb kerül a rendszerszintű tématámogatáshoz.
Az Android Oreo elindításával sok időt kell tölteni a forráskódon belüli rejtett finomságok keresésével. A múltban az Android mérnöki csapata beszélt a témakezelés engedélyezéséről az Android O-ban. Májusban számoltunk be hogy az Android O második fejlesztői előnézete utalhatott arra, hogy a Google támogatja az Overlay Manager szolgáltatást (OMS) és a Runtime Resource Overlay-t (RRO), de most már biztosan tudjuk, hogy így volt. Android Oreo most, technikailag, támogatja az OMS/RRO témáit, és még felületet is biztosít a témák engedélyezéséhez vagy letiltásához, feltéve, hogy a parancssor használatával jól tudja használni.
Frissítés: A Substratum ezeket a parancsokat használja a fejlesztői előnézetekkel, és most az Oreo-val, amióta elérhetők!
Mi az az RRO és OMS?
Az RRO-t a Sony belsőleg fejlesztette ki a Sony Xperia vonal témafunkcióihoz. A fejlesztők, akik felismerték ennek jelentőségét, azon dolgoztak, hogy a támogatást más ROM-okra is kiterjesszék, és ezzel együtt az RRO témájú eszközök sokaságára is kiterjedtek – nem csak a Sony készülékekre. Ötletesen lecserélte az erőforrásokat az alkalmazás futási idején, ami akkoriban a többi témakezelési lehetőségnél nem látott egyszerű használatot jelent. Ez OMS-vé fejlődött, amelyet szintén a Sony fejlesztett ki házon belül. A híres
Layers Manager Eredetileg RRO témát használt, de később az OMS-t adaptálták a ma Substratum néven ismertté, és ez a fórumainkon a felhasználók számára legismertebb témakör. A fórumainkon található ROM-ok OMS committel azt jelentik, hogy támogatják a Substratum szabványos témakezelő motorját. A „Legacy mode” a Substratumban RRO témájú.Az Android Oreo bemutatja a témaparancsokat
Úgy tűnik, a Google most teljes mértékben támogatni kívánja ezt a tématípust az AOSP-ben, esetleg egy teljes, rendszer által támogatott témakezelő felé halad. Az Android Gerrit rendszeren a Google számos változtatást hajtott végre az elmúlt hónapokban (és az Android Oreo esetében), amelyek olyan lépéseket javasolnak, amelyek lehetővé teszik a tematikus motor rendszerszintű engedélyezését. A módosítások alább láthatók, a megfelelő commit linkekkel együtt.
- Overlay parancsok
- Bevezetésre került az OverlayManagerService (OMS).
- Egy új engedély a következővel: CHANGE_OVERLAY_PACKAGES
Mindezek a változtatások azt jelzik, hogy a Google a jövőben valamilyen rendszertéma-alkalmazás felé mozdul el. A fent felsorolt engedélyek rendszerjogosultságokat igényelnek, és így azt jelenti, hogy csak egy rendszeralkalmazás (vagy egy root hozzáféréssel rendelkező alkalmazás) hívhatja meg ezt az engedélyt. Ennek ellenére érdekes, hiszen azt mutatja, hogy a Google végre ezen dolgozik valami.
Szóval miért csak technikailag az Android Oreo támogatja a témaválasztást? Nos, az egyszerű válasz az, hogy bár meghívhatja a témák telepítésének rendszermódszerét, ez meglehetősen értelmetlennek bizonyulna. Ennek az az oka, hogy bár használhatja az új parancssori felületet a telepített témák kezelésére, valójában nem telepítsen új témákat root hozzáférés nélkül, mert a témáknak olyan könyvtárba kell kerülniük, amely korlátozott a felhasználók számára hely. A root hozzáféréssel egyszerűen engedélyezheti a Substratum témát, így nincs szükség az új módszerre. A Google nem mellékelt rendszeralkalmazást az eszköz témájához, így addig semmi haszna nincs annak, ha az újonnan beépített módon próbáljuk megcsinálni.
A parancssori témakezelő felület
Mi az XDA-nál teszteltük a parancsot egy Android Oreo kiadást futtató Google Pixelen. Úgy döntöttünk, hogy tesztelünk néhány parancsot, és először használtuk
cmd overlays list
az összes előre telepített átfedés megtekintéséhez. Észrevettük a „com.google.android.theme.pixel” létezését, letiltottuk, majd a következő parancsok futtatásával engedélyeztük az „android.auto_generated_rro__” fájlt.
Amint az itt látható, a szabványos átfedés le van tiltva, az automatikusan generált pedig engedélyezett. A telepített átfedések ismételt megtekintéséhez futtatva a következő kimenetet látjuk.
Ez egy új témájú Android rendszerbeállítási alkalmazást eredményez a Google Pixelünkön. Ne feledje, hogy a fenti fedvénylista a Substratum segítségével telepített témákat is tartalmazza, és ezeket ugyanolyan egyszerűen tudtuk engedélyezni/letiltani.
Egy másik parancsot is találtunk, amikor átkutattuk a forrást. A parancs a következő
cmd overlay dump --user 0
a következő kimenetet adja nekünk.
Kimenet
Beállítások
android.auto_generated_rro__: 0 {
mPackageName...: android.auto_generated_rro__
felhasználói azonosító...: 0
mTargetPackageName.: android
mBaseCodePath...: /vendor/overlay/framework-res__auto_generated_rro.apk
mÁllam...: STATE_ENABLED
MissEnabled...: igaz
misStatic...: igaz
}
com.google.android.theme.pixel: 0 {
mPackageName...: com.google.android.theme.pixel
felhasználói azonosító...: 0
mTargetPackageName.: android
mBaseCodePath...: /vendor/overlay/Pixel/PixelThemeOverlay.apk
mÁllam...: STATE_DISABLED
misEnabled...: false
misStatic...: false
}
Alapértelmezett fedvények: com.google.android.theme.pixel
PackageInfo gyorsítótár
2 csomag
Olvass tovább
Tehát amint látható, a Google sok munkát fektetett a tematikus motor fejlesztésébe és az AOSP forrásba való integrálásába. Úgy tűnik, ha az egész rendszerre ki kellene egészíteni, témák engedélyezve lesznek a System UI tunerben. A Google is információkat nyújtott az OEM-ek számára, így lehetséges, hogy a jövőben további OEM-ek engedélyezhetik az AOSP-verzión alapuló témakezelési támogatást Android Oreo-n.
Összességében ez egy nagyon izgalmas fejlemény. A témaválasztás egyike annak a sok résznek, amely az Androidot teljesen testreszabható operációs rendszerként határozza meg a telefonon, még akkor is, ha jelenleg root kell a rendszerszintű témákhoz. Ha a jövőben engedélyeznék a root hozzáférés nélküli működést, az nagy lépés lenne a felhasználói szabadság felé. Természetesen az is előfordulhat, hogy egy jó ideig le van zárva a System UI tunerben (mivel a törött témák tönkretehetik az alkalmazásokat), de Ha a felhasználó eleve kihasználja a natív téma támogatását, az óriási kiegészítés a mobil operációs rendszerhez rendszer.