Exkluzívne: Android Oreo dostane do 1 týždňa celosystémovú podporu tém bez rootovania

click fraud protection

Najnovšie vydanie Androidu Oreo od Google už má vstavanú natívnu podporu tém a vďaka téme Substratum vyjde o 1 týždeň.

Aktualizácia 09/13/17: Teraz bol vydaný doplnok Andromeda pre Substratum, ktorý umožňuje vlastné motívy na nerootovaných zariadeniach Android Oreo. Ďalšie podrobnosti nájdete v tomto článku. Pôvodný článok zostane nižšie.

S každým nové vydanie operačného systému Android od Google, väčšina používateľov má na to menej dôvodov rootovať svoje zariadenia. Medzi zostávajúcimi používateľmi, ktorí sa stále rozhodnú rootovať svoje zariadenia, je však jedným z najčastejšie uvádzaných dôvodov povolenie podpory tém v celom systéme. Zvyčajne sa to riadi prostredníctvom substrátu tematický rámec odkedy nešťastný zánik CyanogenMod Theme Engine. Postupom času sa tím za Substratum tvrdo pracovali na zahrnutí podpory pre viac zariadení zahrnutím podpory Substratum na úrovni ROM takže by mohol bežať bez prístupu root. A teraz tím posunul projekt nad rámec toho, čo by si ktokoľvek z nás dokázal predstaviť plná podpora tém v celom systéme bez root pre akékoľvek zariadenie Android Oreo.

Zobrazujú sa snímky obrazovky Čierna téma Sai pre Android Oreo beží na nezakorenenom Google Pixel v systéme Android Oreo 8.0.0

Aby ste mali predstavu ako je to neuveriteľný vývoj, zvážte, že teraz bude možné nasledujúce bez koreňa:

  • Tematizácia Android Framework a používateľské rozhranie systému Android, ako aj akékoľvek iné systémové aplikácie. (Veľa z vás sa chystá láska mať konečne k dispozícii temnú tému!)
  • Tematizácia akejkoľvek aplikácie tretej strany
  • Vlastné písma pre aplikácie tretích strán
  • Mnoho ďalších úprav, ako napríklad mod stavového riadku so stredovými hodinami

Zoznam pokračuje! Substrát má rozsiahly zoznam dostupných tém ktoré podporujú rámec (všetky sú podporované v tejto pripravovanej novej verzii Substratum pre Android 8.0), aktívna komunita na Google+ a naše vlastné fóraa vzhľadom na tento vývoj podpora bude len rásť!


Android Oreo a služba Overlay Manager

Ukážka niektorých tém substrátu.

Od začlenenia spoločnosti Google natívna podpora pre prekrytie zdrojov runtime od spoločnosti Sony (RRO) tématický modul v systéme Android 6.0 Marshmallow, čakali sme Google poskytne vstavané rozhranie, ako aj verejné rozhrania API, ktoré môžu vývojári použiť na vytvorenie motívu aplikácií systémového rámca, ako aj aplikácií tretích strán. Bohužiaľ, vydanie Android Nougat prinieslo na stôl len málo nového, odkedy bola RRO spoločnosti Sony pridaná do projektu Android Open Source Project (AOSP).

Ale vďaka usilovnej práci inžinierov v Sony Mobile sa téma RRO nakoniec vyvinulo do toho, čo je známe ako Overlay Manager Service (OMS), na ktorej je založený Substratum. Spoločnosť Sony bola priekopníkom, pokiaľ ide o riešenie tém s otvoreným zdrojom, ale keďže ich modul tém OMS bol prijatý do AOSP okolo roku v čase konečného vydania systému Android 7.1, jediný spôsob, ako môžu používatelia zariadení iných značiek ako Sony využiť modul tém, je prostredníctvom vlastného ROM.

To sa zmenilo v systéme Android 8.0. Keď bol substrát pôvodne uvoľnený pre prvých pár ukážok pre vývojárov systému Android O, si to uvedomili vývojári Substratum plná podpora pre Sony OMS bol k dispozícii. To znamená, že používateľ by si mohol nainštalovať existujúcu tému podporovanú substrátom, ktorá by bola plne funkčná na zariadeniach Android Oreo bez potreby akýchkoľvek záplat ROM. Bol tu však len jeden problém: proces povolenia nainštalovanej témy Substratum si vyžadoval prístup root, alebo si to aspoň mysleli.


Podpora tém substrátu bez koreňového systému pre systém Android Oreo

Zatiaľ čo vývojári potichu venovali svoju prácu tomu, aby používatelia Android Oreo dostali úplne bezkorenové riešenie tém na zadnej strane napaľovačka, nezávisle sme sa zaoberali každou ukážkou vývojára Android O a našli dôkazy o aktuálnom nástroji témy, predsa zle sme to identifikovali ako založené skôr na staršom RRO než na novšom OMS od Sony. Google dokonca dráždil komunitu o podpore tém v a AMA zameraná na vývojárov na Reddite, kde sa uvádza, že ešte stále je potrebné prekonať niekoľko prekážok, kým bude možné do systému Android zabudovať úplné riešenie tematických okruhov.

Nie sme spokojní s touto odpoveďou, chceli sme vidieť, ako ďaleko Google zašiel pri získavaní podpory tém pre Android Oreo. Aby som to urobil, kopal som do zdrojový kód systému Android 8.0 akonáhle konečné vydanie padlo, a objavil existenciu príkazov shellu ADB, ktoré by mohli povoliť alebo zakázať prekrytia, o ktorej včera informoval XDA Writer Adam Conway.

Zakázanie predvoleného prekrytia

Pôvodne ma tento nález príliš nezaujal, keďže podľa mojich vedomostí v tom čase bol funkčne nepoužiteľný, keďže ja a moji kolegovia sme mali dojem, že inštalácia téma stále vyžadovala prístup root, pretože súbory tém by bolo potrebné presunúť do priečinka, ktorý je neprístupný pre používateľský priestor (v /system/vendor/overlay, takto RRO fungovalo). Nicholas Chum sám, jeden z hlavných vývojárov za Substratum, sa k nášmu príspevku vyjadril, že si bol vedomý existencie týchto príkazov už pomerne dlho a už ho používa pre zostavy Android O.

Jedna osoba však videla príležitosť po tom, čo sme včera zverejnili náš článok. XDA je veľmi vlastný Jeff Corcoran, vývojár za našou internou spoločnosťou Aplikácia XDA Labs, si uvedomil, že existuje potenciálne riešenie na to, aby natívne rozhranie príkazového riadka Android Oreo pre OMS fungovalo bez root. Išlo o metódu, ktorá bola použitá o hélium, populárne riešenie zálohovania typu non-root a nedávno aj alternatíva Greenify s otvoreným zdrojovým kódom známa ako Brevent.

Zvýšené privilégiá prostredníctvom skriptu

Zvyčajne sa „prekrytie cmdPríkazy, ktoré spoločnosť Google pridala do vydania Oreo, je možné spúšťať iba prostredníctvom zariadenia s oprávneniami root alebo prostredníctvom zariadenia pripojeného k počítaču, ktorý vyvoláva prostredie Android Debug Bridge (ADB). Hŕstka šikovných vývojárov, ako napríklad vývojári Helium a Brevent, v priebehu rokov na to prišla ako v podstate zvýšiť privilégiá aplikácie spustenej v telefóne tak, aby zodpovedali privilégiám ADB škrupina. Pritom môže aplikácia posielať príkazy, ktoré zvyčajne nemohla kvôli obmedzeným povoleniam. V prípade Substratum to znamená aplikácia sa môže nainštalovať a potom povoliť alebo zakázať témy Substratum bez root.

Táto realizácia bola a hlavný prielom, ktorý bol objavený len včera večer. V priebehu niekoľkých hodín sa Nicholasovi (s pomocou Jeffa) podarilo vytvoriť rýchlu alfa verziu správcu tém Substratum bez koreňového adresára pre zariadenia Android Oreo. A funguje to – ale s niekoľkými výhradami.

Výstrahy podpory bezkorenového substrátu

Proces vyžadovaný na udelenie zvýšených privilégií Substratum ADB shell bude vyžadovať použitie a veľmi jednoduché a ľahké desktopová aplikácia (alebo len príkaz ADB shell, ak viete, čo robíte). Po udelení bude Substratum fungovať tak, ako by ste očakávali, pričom bude schopný zvládnuť správu všetkých vašich nainštalovaných tém Substratum. Všetky témy, ktoré nainštalujete, zostanú nainštalované kým sa ho nerozhodnete znova odinštalovať cez Substratum.

Privilégiá, ktoré má Substratum udelené, sú však prechodné sa stratia, keď používateľ vykoná úplný reštart (aj keď našťastie mäkké reštarty používateľského rozhrania systému nestrácajú privilégium). To znamená, že ak ste reštartovali telefón a chcete použiť Substratum na pridanie, odstránenie alebo úpravu témy, budete musieť znova spustiť program na pracovnej ploche. Chcem to ešte raz zopakovať všetky nainštalované témy zostanú nainštalované aj po reštarte, to znamená, že ak by ste chceli len občas zmeniť niekoľko tém, malo by to byť pre vás ideálne. Mali by ste byť tiež schopní prepínať témy z ponuky Nastavenia, ako Možnosť „Motív“ ukážky vývojára v časti Nastavenia displeja potom rozpozná nainštalované témy a umožní vám medzi nimi prepínať

Nakoniec, posledná vec, ktorú musím spomenúť, je niečo, čo sa zdá byť zrejmé, keď sa nad tým zamyslíte, ale vo svojom vzrušení z počúvania správ ste možno zabudli. Vaše zariadenie stále nie je rootované. To znamená, že sa nemôžete dotknúť ani upraviť žiadne súbory, ktoré na úpravu absolútne vyžadujú prístup root, aj keď téma Substratum, ktorú ste nainštalovali, sľubovala, že niečo zmení. Ľutujeme, ale bohužiaľ to znamená, že nemôžete použiť zmenu písma v celom systéme prineste späť emotikony blob, aj keď, ako bolo spomenuté na začiatku, to je pre tému Substratum je možné meniť fonty jednotlivých aplikácií.

Nevyhnutnosť substrátu

Vynechajme teraz dôležitý detail z cesty. Kedy to príde? Ako sa uvádza v názve, prvá verejná dostupnosť substrátu bez koreňového adresára pre zariadenia so systémom Android 8.0, ako sú Google Nexus 5X, Google Nexus 6P, Google Pixel a Google Pixel XL, by mala byť do 1 týždňa. To je nie je zárukou akýmkoľvek spôsobom, pretože veci sa môžu zmeniť v procese vývoja, čo si môže vyžadovať dodatočné časové investície, ale keďže OMS už je plne podporované v AOSP, všetko, na čom teraz tím Substratum pracuje, je prepojenie medzi aplikáciou Substratum a nekoreneným zariadení.

Ďalej: bude to zadarmo? Nie Substrát pre nerootované zariadenia Android Oreo bude a platená aplikácia. Nemôžem vám povedať, koľko to bude stáť, pretože Nicholas ešte nerozhodol o cene, ale buďte si istí, že cena bude primeraná vzhľadom na hodnotu toho, čo dostanete. Až do tohto bodu bol Substratum voľne dostupný pre mnoho zariadení, preto zvážte podporu tohto druhu vývoja najskôr podporou Team Substratum. Môžete buď počkať, kým Google nakoniec vydá temnú tému, ktorú ste vždy chceli (ha, dobre jeden), alebo môžete prihodiť pár grošov na podporu nezávislého rozvoja, ktorý si mnohí ľudia dávajú udelené.

Stále nie ste presvedčení o jeho hodnote? Môžeš skúste inštalácia tém Substratum na vašom vlastnom nerootovanom zariadení 8.0. V skutočnosti je to presne to, čo sme urobili vyššie. Samozrejme, trochu nám s tým pomohol Nicholas. Ak chcete nainštalovať existujúcu tému Substratum z Obchodu Google Play, tu sú všeobecné kroky:

  1. Stiahnite si a nainštalujte súbor APK do svojho zariadenia.
  2. Extrahujte obsah a skompilujte každé prekrytie do samostatného súboru APK pre každú aplikáciu, pre ktorú chcete mať tému
  3. Nainštalujte každý jednotlivý súbor APK s prekrytím, ktorý ste ručne skompilovali v kroku č. 2
  4. Pre každý prekryvný súbor APK, ktorý nainštalujete, spustite nasledujúci príkaz: cmd overlay enable
  5. Ak chcete zmeniť prioritu prekrytí, použite: cmd overlay set-priority PARENT|lowest|highest
  6. Uveďte všetky svoje nainštalované prekrytia s: cmd overlay list
  7. Odstráňte všetky prekrytia, ktoré nechcete, pomocou: cmd overlay disable

Ak naozaj chcete používať príkazový riadok na správu tém, buďte našim hosťom! Osobne som sa zasekol, keď som prekonal krok #2. Substrát nevyužíva nejakú skrytú metódu, na ktorú by ste nevedeli prísť sami, ale robí ju ďaleko ľahšie spravovať. Keď je možné niečo urobiť manuálne, ale aplikácia to dokáže za mňa oveľa jednoduchšie, mám tendenciu nechať aplikáciu robiť svoju prácu. Ale to je na tebe.

Osobne som naozaj, naozaj nadšený aby ste videli, kam to smeruje. Pre všetky zariadenia, ktoré ešte nepodporujú vstavaný systém správy tém (ako sú zariadenia Motorola alebo OnePlus), máte teraz ďalší dôvod, na čo sa tešiť v aktualizácii Android 8.0. Pre tých z vás, ktorí majú to šťastie, že už ochutnali to sladké Oreo, sa máte na čo tešiť už o 1 týždeň.


P.S. Používatelia Samsung, poznali ste svoje zariadenia? už podporuje témy Substratum bez potreby roota?

P.P.S Ste vývojár a máte záujem dozvedieť sa viac o Substratum? Pozrite sa na Nicholas's úžasná prezentácia prezentácie tu!