Hva Project Diskant betyr for fremtidig tilpasset ROM-utvikling

Project Treble kommer nå med Android Oreo-enheter. I dag gjør vi en oversikt over hva Project Treble betyr for fremtidig tilpasset ROM-utvikling.

Her på XDA har vi tidligere snakket om Prosjekt diskant, den største endringen på lavt nivå som ble introdusert for Android-basen siden den første Android-betaen ble utgitt for nesten 10 år siden, og hvordan du kan fortelle hvis enheten din har det. For de som fortsatt ikke er klar over hva Project Treble er, modulariserer det det nedre laget av Android ved å skille leverandøren implementering (proprietære blobs og programvare, CPU- og GPU-drivere, et cetera) fra Android-hovedrammeverket og system. Dette resulterer i raskere systemoppdateringer ved å modularisere maskinvareabstraksjonslaget (HALs) og separere det fra resten av Android OS, og ved å eliminere OEM-avhengighet av trege driveroppdateringer fra silisiumprodusenter. Sluttmålet er forhåpentligvis å forlenge den 24-måneders store programvareoppdateringsstøtteperioden som for tiden loves av de fleste enhetsprodusenter.

Dette skal bidra til å gi Android-telefoner muligheten til å motta Apple-lignende oppdateringer, i det minste på flaggskiptelefoner. Mens det gjennomsnittlige Android-flaggskipet mottar 2 store oppdateringer i løpet av en 24 måneders periode, får iPhone-enheter minimum 4 år med iOS-oppdateringer, inkludert mindre. På diskantstøttede Android-telefoner kan dette etter hvert bli en realitet, forutsatt at telefonprodusenten er nede for å oppdatere telefonen sin. De som ønsker å holde enhetene sine oppdatert i løpet av en lignende tidsramme, har ingen annen mulighet enn å ty til tilpassede ROM-er.

Heldigvis burde Project Treble også gjøre gresset grønnere for tilpassede ROM-brukere. Faktisk har den potensial til å endre den tilpassede ROM-utviklingsscenen fullstendig - og for godt.


Hvordan kan tilpassede ROM-er dra nytte av Diskant?

Grunnen til at uoffisielle Android Oreo-porter sakte jobbes med i stedet for bare noe utviklere kan kompilere, starte opp og kjøre er enkel. For å få opp en ny Android-versjon på en eksisterende enhet, kjernen og enhetstreet må omarbeides kraftig for å få en eksisterende Android-telefon til å fungere med en nyere Android utgivelse. Det er fordi den nåværende leverandørimplementeringen, inkludert alle proprietære binære blobs, er laget for å fungere med en enkelt Android-versjon, og må derfor omarbeides og overføres til den nye Android-versjonen for at enheten skal fungere skikkelig.

Nesten alle komponentene inne i telefonen bruker en uavhengig, proprietær blob, og må lappes og bearbeides på uavhengig slik at den nyere programvaren kan bruke den, også sørge for at de andre ikke går i stykker i prosessen. Dette er virkelig en tidkrevende oppgave, og hovedgrunnen til at de fleste stabil tilpassede ROM-er (som LineageOS-ukeblader eller andre offisielt støttede ROM-er) vises ikke før 2-3 måneder etter at den endelige Android-utgivelsen faller til AOSP. All denne innsatsen betyr også at den resulterende ROM-en bare vil fungere på én enhet eller, i beste fall, en håndfull enheter med identiske eller lignende spesifikasjoner.

Dette ser ut til å endre seg med Project Treble, ifølge Ron Amadeo fra ArsTechnica og uavhengig bekreftet av tilpasset ROM-utvikler SultanXDA.

Malchev sier at Treble standardiserer Android-maskinvarestøtte i en slik grad at generiske Android-bygg kompilert fra AOSP kan starte opp og kjøre på hver Diskant-enhet. Faktisk er disse "rå AOSP"-byggene det som vil bli brukt til noen av CTS-testingene Google krever at alle Android OEM-er bestått for å lisensiere Google-appene – det er ikke bare det at ting bør jobb, de er nødvendig å jobbe.

For å kjøre dette punktet hjem, betyr det at på grunn av måten det nedre laget av Android ble modularisert på, vil alle diskantenheter på markedet være i stand til å starte opp en generisk aksje, AOSP Android build. Dette tar bort det meste av bryet med å portere tilpassede ROM-er til en eldre enhet siden en enkelt, generisk Android-konstruksjon kan kjøre på mange enheter. Dette flytter Android-enheter langt nærmere noe som en personlig datamaskin, hvor du kan starte opp den nyeste, banebrytende Windows 10-bygget eller en hvilken som helst Linux-distribusjon på en 10-12 år gammel datamaskin.

Du vil ikke kunne starte opp feilfritt fungerende generisk Android 9.0 bygger på din Treble-enhet ennå - enhetstrær og kjerner vil fortsatt kreve å jobbe med. Det er fortsatt en god start: takket være de modulariserte HAL-ene, arbeidsmengden for å få opp neste Android versjonen skulle være kraftig redusert, og vi kunne se stabile 9.0-bygg i løpet av noen dager/uker i stedet for måneder. Vi bør ha i bakhodet at Project Treble, mens det nå rulles ut, fortsatt er et arbeid som pågår ettersom det fortsatt mottar endringer i AOSP, og leverandørlaget kan til slutt bli standardisert til det punktet å installere en ny Android-versjon vil være det samme som å installere Windows på en datamaskin.

Dette er et stort teknisk fremskritt, og det har potensial til å forbedre AOSP-basert tilpasset ROM-utvikling på forumene våre betydelig. Men så gjelder dette bare enheter med Project Treble, og for øyeblikket er de eneste Treble-telefonene som er tilgjengelige Google Pixel, Google Pixel XL, Sony Xperia XZ1 og XZ1 Compact. Hva vil skje med eksisterende pre-Oreo-telefoner?


Kan en tilpasset ROM bringe diskant til en eksisterende telefon?

Vi har allerede hatt en hel katalog med Android Oreo ROM-er for eksisterende telefoner, inkludert Nexus, OnePlus, Xiaomi og Motorola-telefoner. Men kan en av disse ROM-ene bringe Project Treble til telefonen din? Svaret: det er ikke sannsynlig.

Endringene som er gjort på lavnivåplattformen til Android er veldig kompliserte, og egentlig ikke noe du bare kan få til å jobbe på en vanlig tilpasset ROM. Det er ikke noe som kakekontroller eller enhetsbevegelser, men en total redesign av leverandørimplementeringen. Dette er noe som krever arbeidet til Qualcomm og andre silisiumprodusenter for å være med. Google er for øyeblikket jobber med forskjellige OEM-er for å bringe Treble til noen eksisterende flaggskiptelefoner, men selv da er vi ikke sikre hva OEM-er jobber med det siden listen ikke ble offentliggjort. Vi har imidlertid sett noen diskant-relaterte forpliktelser flyte rundt i LineageOS Gerrit, så det er trygt å si at det faktisk blir forsøkt.

Til slutt er det for tidlig å si. Vi har sett noen fantastiske utviklingsbragder fra forumene våre før, inkludert fantastiske ting som universelle systemløse grensesnitt eller eMMC-lagringsoppgraderinger, så hvem vet? Noen kan på en eller annen måte ende opp med å få Project Treble til å fungere på en eldre telefon.

Men vi har bare hatt sjansen til å grave oss gjennom Android Oreo-kilde i omtrent 2 uker, så som vi sa, det er fortsatt for tidlig å si. Vi er likevel spente på mulighetene, og vi vil holde deg informert om fremtidige diskantrelaterte utviklinger på XDA-portalen, som er best tilgjengelig via XDA Labs-appen!

Takk til Paranoid Android-teammedlem /u/evan1123 for å rydde opp i en feil i artikkelen!