Revolúcia vo vlastných ROM: Ako Project Treble robí z prenosu Android Oreo prácu na jeden deň

Preskúmanie toho, ako Project Treble prináša revolúciu do vlastných ROM. Port Android Oreo na Huawei Mate 9 trval menej ako 1 deň.

Fóra XDA sú už roky ústredným zhromaždením vývoja vlastných ROM. Je to vďaka tvrdej práci vývojárov na našich fórach, že mnohé staršie smartfóny s Androidom sú udržiavané pri živote pomocou vlastných ROMov niekedy aj roky po tom, čo výrobca zariadenia opustil zariadenia. Hoci väčšina výrobcov v súčasnosti vydáva metódy odomykania zavádzača, časté oneskorenia vo vydávaní zdrojových kódov jadra potláčajú vývoj vlastných ROM na mnohých smartfónoch. Čoskoro sa to však môže zmeniť vďaka niečomu, čo sa nazýva „Projekt Treble“, ktorý bol ohlásený tesne pred vydaním Android Oreo. Vďaka Project Treble by čas potrebný na prenesenie AOSP ROM do zariadenia už nemal trvať týždne alebo mesiace. malo by to trvať len dni.

Tí z vás, ktorí už roky sledujú vlastnú ROM scénu, si už možno uvedomujú, aká významná je táto novinka. XDA uznávaný vývojár OldDroid nazval toto zjavenie "

prelom" vo vlastnom vývoji AOSP ROM. Vďaka podpore Project Treble napr. Podarilo sa mi naštartovať a takmer plne funkčný Android 8.0 Oreo ROM na Huawei Mate 9—zariadenie, ktoré doteraz nevidelo ani jeden AOSP Android Nougat ROM.

Možno čoskoro uvidíme revolúciu vo vývoji vlastných ROM vďaka počiatočnému vývojovému úsiliu na tomto fronte zo strany senior člena XDA phhusson. Po 20 hodinách práce na výskume, vývoji a ladení so mnou vytvoril phhusson obraz systému, ktorý možno spustený na viacerých zariadeniach od rôznych výrobcov a s úplne odlišnými SoC. Napríklad rovnaký obraz systému, ktorý som spustil na svojom vlastnom Huawei Mate 9, sa spúšťa aj na Honor 8 Pro, Honor 9, Sony Xperia XZ1 Compact a Essential Phone. To je 3 rôzne OEM (Huawei/Honor, Sony a Essential) a 2 rôzne SoC (HiSilicon Kirin 960 a Qualcomm Snapdragon 835), kde sa tento jediný obraz systému môže úspešne spustiť.

Je možné, že v budúcnosti by sme mohli vidieť jediný obraz systému, ktorý môže fungovať na desiatkach rôzne smartfóny so systémom Android, podobne ako môže systém Microsoft Windows bežať na takmer akomkoľvek počítači hardvér. S cieľom podporiť ďalší rozvoj na tomto fronte sme otvorili a nové fórum venované Project Treble povolené zariadenia. Fórum je momentálne zamerané na vývojárov, takže nezakladajte nové vlákno, pokiaľ nemáte záujem prispieť k vývoju. Ak chcete pomôcť otestovať obrazy systému kompatibilné s Treble, neváhajte zanechať komentár k existujúcim vláknam.

Pripojte sa k Project Treble Development Forum

Vzhľadom na význam tohto vývoja a zložitosť témy som si myslel, že k tomuto článku pristúpim trochu inak ako ostatné. Uvediem zoznam odrážok vysvetľujúcich niektoré bežné otázky, ktoré by ľudia mohli mať, ako aj poukázať na kľúčové fakty týkajúce sa tohto najnovšieho vývoja.


Čo je Project Treble?

Kredity: Google

Project Treble sa najčastejšie popisuje ako pokus spoločnosti Google o modularizáciu rámca operačného systému Android na oddelenie kódu špecifického pre dodávateľa. Poďme si veci rozobrať trochu viac:

  • Úplný proces aktualizácie s cieľom priniesť novú verziu systému Android do zariadení je dlhá a zložitá téma, ale spoločnosť Sony odviedla skvelú prácu túto infografiku ktorý načrtáva základné kroky.
  • „Predajca“ zvyčajne označuje výrobcov kremíka, ako je Qualcomm, ale môže sa vzťahovať aj na výrobcu akéhokoľvek iného proprietárneho hardvéru, ktorý sa nachádza v zariadení. „Výrobca zariadenia“ alebo „OEM“ zvyčajne musí počkať, kým predajca aktualizuje svoj kód, aby proprietárny hardvér fungoval s rámcom OS Android v novšej verzii Androidu.
  • Čo sa však deje s Project Treble je, že Google to vyžaduje kód špecifický pre dodávateľa oddelený od rámca OS Android a namiesto toho žiť vo vlastnej implementácii dodávateľa. Zvyčajne to znamená, že na smartfónoch s podporou Treble teraz existuje samostatný oddiel /vendor, ktorý obsahuje veľa vrstiev HAL (Hardware Abstraction Layers).
  • Okrem toho musia predajcovia implementovať kód, ktorý umožní rámcu OS Android komunikovať s HAL štandardizovaným spôsobom. Toto sa vykonáva cez HIDL (HAL Interface Definition Language). Vďaka tomu môže OEM pracovať na aktualizácii systému Android bez toho, aby musel čakať na dodávateľov, aby aktualizovali svoje HAL. Teoreticky toto by mal urýchliť celý proces aktualizácie Androidu pretože predajcovia môžu svoj kód kedykoľvek aktualizovať prostredníctvom Obchodu Play, napríklad.
  • Aby sme vám pomohli pochopiť, čo je HAL a ako súvisí s Androidom, pouvažujme o analógii. Predstavte si auto. Volant a brzdy sú HAL, zatiaľ čo vodič je rámec OS Android. Vodič (Android) pohybuje volantom a tlačí na brzdy (HAL), aby mohol ovládať pohyb auta (hardvér).
  • Teraz si predstavte, že by sme žili vo svete, kde sa každý výrobca automobilov rozhodol navrhnúť svoje volanty alebo prestaviť brzdy úplne iným spôsobom. Ak posadíte vodiča do nového auta, môže byť zmätený s tým, ako s vozidlom na začiatku zaobchádzať. Ale vďaka normám by mal každý vodič poznať ovládanie volantu a bŕzd takmer na každom aute. Autoškola ďalej učí všetkých vodičov správnemu ovládaniu vozidla. V tejto analógii sú štandardy vozidiel Project Treble a autoškola je HIDL.

Android Oreo na Honor 8 Pro. Poďakovanie: XDA uznávaný vývojár OldDroid

Ktoré zariadenia získajú podporu Project Treble?

  • Všetky zariadenia, ktoré spustiť s Androidom 8.0 Oreo alebo vyššie musí plne podporovať Projekt Treble.
  • Všetky zariadenia, ktoré upgrade na Android 8.0 Oreonevyžaduje sa plne podporovať Project Treble.
  • Zariadenia, ktoré majú aktualizácie (oficiálne vydania alebo uzavreté beta verzie) na Android 8.0 Oreo a podporujú Treble, zahŕňajú:
    • Google Pixel
    • Google Pixel XL
    • Huawei Mate 9
    • Honor 8 Pro
    • Česť 9
    • Základný telefón
  • Je nepravdepodobné, že by nejaké zariadenia neoficiálne získali podporu Project Treble prostredníctvom vlastného vývoja ROM. HAL predsa nie sú open source.

Prečo je Project Treble taký dôležitý pre AOSP ROM?

  • Aby sa zabezpečilo, že kód dodávateľa je správne oddelený od rámca OS Android spôsobom, ktorý Project Treble vyžaduje, aby spoločnosť Google zriadila sadu Vendor Test Suite (VTS), ktorou musia zariadenia prejsť, aby mohli byť certifikované Google. Certifikácia Google je dôležitá, pretože bez nej nie je dovolené dodávať zariadenie s predinštalovanými aplikáciami a službami Google Play.
  • Jednou z požiadaviek vo VTS je zariadenie s podporou výšok musí byť schopný naštartovať a surová, generická zostava AOSP. Kvôli tejto požiadavke musia výrobcovia OEM dodávať zariadenia, ktoré dokážu zaviesť AOSP bez akýchkoľvek problémov.
  • Hoci presná ROM, ktorú Google používa a zdieľa s OEM pre VTS, nie je verejná, XDA Senior Member phhusson bol schopný zistiť ako znovu vytvoriť túto ROM zo zdroja.
  • Teraz teda máme funkčnú AOSP ROM zaručené, že bude bootovateľné na zariadeniach Project Treble. Väčšinu práce už vykonali OEM a predajcovia, takže nezávislí vývojári na našich fórach už nemusia pomotať sa so zdrojovým kódom jadra alebo hackerstvom HAL. Teoreticky by AOSP ROM mala „len fungovať“, čo sme ukázali ako v podstate pravdivé na zariadeniach, ktoré sme testovali.
  • V súčasnosti je kompatibilita nie 100% so všetkými zariadeniami je možné zaviesť systémový obraz. Nájdu sa aj nejaké závodné podmienky na to treba prísť. Avšak, Project Treble výrazne znižuje množstvo vývojových prác ktorý je potrebný na portovanie AOSP ROM do zariadení, ktoré nepochádzajú od Googlu. So spoluprácou viacerých vývojárov v našom Fórum projektu Treble, očakávame, že vývoj zariadení Treble pôjde ďaleko.

Ako si teraz vyskúšam Android Oreo na svojom zariadení?

Ak ste naozaj dobrodružní a chcete si hneď teraz vyskúšať jednu z týchto stavieb Project Treble na svojom telefóne, phhusson má systémové obrázky, ktoré si musíte stiahnuť jeho vlákno na našom fóre Project Treble. Je však potrebné mať na pamäti niekoľko vecí:

  • Budete potrebovať odomknutý bootloader a musíte sa oboznámiť s používaním príkazy rýchleho spustenia na flashovanie obrázkov.
  • Vaše zariadenie musí už používa Android Oreo. Tieto obrazy systému „neaktualizujú“ vaše zariadenie. Ak používate jedno zo zariadení Huawei/Honor uvedených v tomto článku, môžete sa pozrieť na naše fóra, kde nájdete sprievodcu, alebo použiť Služba FunkyHuawei.club neoficiálne aktualizovať svoj telefón na jednu z uzavretých beta verzií Oreo.
  • Musíte byť ochotní stratiť údaje alebo obnoviť továrenské obrázky pri testovaní. Najlepším spôsobom, ako zabezpečiť toto spustenie, je vymazanie oddielu s používateľskými údajmi, čo zahŕňa vymazanie všetkého obsahu vo vašom internom úložisku. Samozrejme môžete zálohovať a po dokončení ich preniesť.
  • Tieto zostavy AOSP sú v súčasnostinie je určený na každodenné používanie. Sú extrémne holé a neponúkajú veľa predinštalovaných funkcií alebo aplikácií. Aplikácie Google budete musieť flashovať sami. Aby mobilné dáta fungovali (ak fungujú), budete musieť manuálne zadať nastavenia APN vášho operátora. Veci budú chybné, kým sa nevyvinie väčšie úsilie o vývoj.

Záver

Google si nerobil srandu, keď povedal, že Project Treble bol možno jednou z najväčších zmien v spôsobe fungovania Androidu. Sami môžeme vidieť, práve tu a teraz, aký veľký vplyv to môže mať. Výšky môžu byť impulzom, ktorý vývojárska komunita potrebuje na oživenie vlastnej ROM scény. Spustenie takmer plne funkčnej AOSP ROM na Huawei Mate 9 trvalo menej ako 1 deň. Som nadšený z práce, ktorá bude vykonaná pre ďalšie zariadenia s podporou výšok.