Ik heb Stock Android Oreo opgestart op de Huawei Mate 9 dankzij Project Treble

Dankzij Project Treble-ondersteuning konden we met succes een standaard, generieke AOSP Android Oreo-systeemimage op de Huawei Mate 9 opstarten.

Slechts een week voor de Google I/O van dit jaar onthulde Google een van de meest fundamentele wijzigingen op laag niveau in het Android OS-framework: Project Treble. Project Treble modulariseert het Android OS-framework om het te scheiden van de leverancierscode, waardoor OEM's dit kunnen doen om aan nieuwe software-updates te werken zonder te hoeven wachten tot leveranciers (zoals Qualcomm) hun updates hebben bijgewerkt code. Als onderdeel van de Vendor Test Suite (VTS) moeten alle Treble-apparaten kunnen opstarten onbewerkte, generieke AOSP-build. Ondersteuning voor Project Treble is vereist op elk apparaat dat wordt geleverd met Android Oreo, dus ook al zijn er meerdere apparaten die aan deze criteria voldoen, heeft niemand getest of we echt een ROM kunnen opstarten die rechtstreeks uit de broncode is gecompileerd. Maar uiteindelijk kon ik het wel

start een standaard, generieke, door AOSP gebouwde Android 8.0 Oreo ROM op de Huawei Mate 9 dankzij Project Treble steun.

Wat je hierboven ziet, zijn screenshots van AOSP Android 8.0 Oreo op de Huawei Mate 9. De Huawei Mate 9 werd gelanceerd afgelopen jaar met Android 7.0 Nougat aan boord. In het bijzonder draait het een aangepaste skin genaamd Emotion UI erbovenop. De software is ongelooflijk anders dan wat je zou kunnen vinden op een van de Google Pixel-telefoons.

Momenteel zijn er geen publiekelijk beschikbare Android 8.0 Oreo-builds voor het apparaat. Een van de gelekte Android Oreo-builds die we begin vorige maand verkregen onthulde dat Huawei inderdaad bezig was om aan de eisen van Project Treble te voldoen, ook al deed het dat is niet gestart met Android 8.0. Omdat de software van de Mate 9 zo ver verschilt van stock-Android, was het een perfecte kandidaat om te testen of Project Treble ons echt in staat stelt om stock Android Oreo op elk Treble-apparaat op te starten.

Stock Android Oreo opstarten op Project Treble-apparaten

Onlangs lid van onze Essential Phone-forums een draadje geplaatst om te zien of hun telefoon een generieke AOSP Oreo-build kon opstarten. De Essential Phone zelf had zojuist zijn ontvangen eerste officiële bètaversie van Android 8.0 met ondersteuning voor Project Treble, dus het leek plausibel. XDA Senior-lid phusson, vooral bekend van zijn werk aan een open source superuser-vork, was klaar voor de uitdaging. Omdat de onbewerkte AOSP-build die Google deelt met OEM's voor certificeringsdoeleinden niet openbaar is, moest Phhusson zijn eigen generieke AOSP-image bouwen en testers vinden om het op hun apparaten te proberen.

Hoewel er vooruitgang werd geboekt, had nog niemand de AOSP-build op hun Essential Phone succesvol opgestart. Ik besloot het eens te proberen op mijn Huawei Mate 9, die volledig voldoet aan de eisen van Project Treble. Omdat Android Oreo niet openbaar is op de Mate 9, heb ik de FunkyHuawei.club service om de firmware op de Mate 9 bij te werken naar de gesloten bètaversie van Oreo.

Fragment uit /vendor/manifest.xml op de Mate 9

Na veel wissen van gebruikersgegevenspartities, flitsen van systeemimages en logdumpen, hebben we eindelijk de generieke 8.0-build op de Mate 9 opgestart. Wij heeft geen enkele kernelwijziging aangebracht om dit ook op te starten. Dit is niet alleen de de eerste keer dat een Huawei Mate 9-apparaat een AOSP ROM opstartte, maar het is ook de eerste keer dat iemand buiten Google en OEM's heeft getest of apparaten met Project Treble echt generieke AOSP-builds kunnen opstarten.

Maar voordat je te opgewonden raakt: de build is nog niet perfect. Een aantal apps crashen nu waarschijnlijk als gevolg van een fout bij de decodering, maar met een beetje werk weet ik zeker dat dit kan worden opgelost. Alleen al het feit dat AOSP 8.0 Oreo opstart op de Huawei Mate 9 van alle apparaten is een wonder op zichzelf. We zullen dit werk verfijnen en input vragen van ontwikkelaars zodra onze nieuwe versie beschikbaar is Project Treble Device Development-forum gaat open, dus als je geïnteresseerd bent in dit soort ontwikkelingen, blijf dan op de hoogte van nieuws op dat front.

Conclusie

Er is veel gespeculeerd over de mate waarin Project Treble software-updates op smartphones zou helpen versnellen. Het huidige proces waarmee een OEM een software-update uitrolt, is behoorlijk lang, en hoewel het leuk zou zijn als Treble dit zou versnellen, hebben we dat nog niet zien gebeuren. Dat is echter logisch, aangezien er maar een handvol apparaten zijn met Project Treble-ondersteuning, en dat zal ook zo zijn Het duurt tot de release van Android P voordat we de voordelen van Treble voor het Android-ecosysteem echt zien als een geheel.

Maar dankzij de certificeringstestvereisten van Project Treble zijn apparaatfabrikanten verplicht apparaten te leveren die een generieke AOSP-build kunnen opstarten. Tot op heden had niemand getest of dat op dit moment mogelijk was op bestaande Treble-compatibele apparaten. Nu we echter hebben bewezen dat deze mogelijkheid bestaat op de Huawei Mate 9, hopen we de sluizen te openen voor aangepaste ROM-ontwikkeling op basis van apparaten met Treble-ondersteuning.


Update: videodemonstratie van bijna volledig werkende Oreo

We hebben een vervolgartikel gepubliceerd waarin gedetailleerd wordt uitgelegd wat Project Treble is en waarom het zo belangrijk is voor aangepaste ROM's. We laten op video een Android Oreo ROM zien die in principe volledig functioneel is op de Huawei Mate 9. We hebben ook de opening aangekondigd van een nieuw Project Treble-forum. Bekijk de vervolgartikel hier voor alle details.