En obskur MediaTek-telefon uten kjernekilde kan kjøre AOSP Android Oreo takket være Project Treble

Takket være Project Treble-kompatibilitet er en obskur telefon kalt Allview V3 Viper som kjører på en MediaTek SoC i stand til å ikke bare vellykket oppstart av Android 8.0 Oreo, men også Android 8.1. Dette til tross for mangel på kjernekilder eller til og med TWRP!

Vi har laget mange innlegg om Googles Prosjekt diskant de siste ukene. En av de viktigste (i hvert fall for oss) konsekvensene er at diskantsertifiserte enheter må kunne starte opp en generisk versjon av Android kalt Generic System Image (GSI). Det har gjort å kjøre AOSP på enheter som Honor 8 Pro, Honor 9, eller Huawei Mate 10 Pro en realitet, selv om diskantkompatibilitet alene ikke ville bety at disse populære enhetene ikke ville få AOSP ROM uansett. Men hva med enheter som neppe noen gang vil ha anstendig utviklerstøtte – enn si offisiell støtte? Tenk på det relativt obskure Allview V3 Viper– Uten Project Treble-kompatibilitet ville det å kjøre AOSP på denne enheten være en mareritt.

Allview Viper V3. Kilde: Allview elektronikk.

Du har sannsynligvis aldri hørt om denne telefonen før. Den ble faktisk utgitt i forrige måned, og den har en 5,5" 18:9 1440x720 skjerm, 13 MP bakre og 13 MP frontvendt kamera, et fingeravtrykksensor, 3 GB RAM, 32 GB intern lagring med et microSD-kortspor, en 3,5 mm hodetelefonkontakt og en 3000 mAh batteri.

Til 219.00€ er det absolutt bedre alternativer på markedet. For ytterligere 10 euro kan du kjøpe Honor 9 Lite eller vent noen dager og importer den nylig utgitte Xiaomi Redmi Note 5 eller Note 5 Pro. I våre sinn er det ingenting spesielt interessant med Allview V3 Viper, bortsett fra én ting: den drives av en MediaTek (MT6737) SoC og den kjører Android 8.0 Oreo ut av esken.

Siden den kjører Android Oreo og passerer Googles CTS, betyr det at den også må ha oppfylt kravene for å være Project Treble-kompatibel. Viktigst for oss betyr det at enheten er i stand til å starte opp en AOSP Oreo GSI uten å kreve at utviklere porterer proprietære komponenter fra andre telefoner, shims for biblioteker med manglende symboler, bruk wrappers, hex-edit binærfiler for å fikse feilaktige navn, og flere hacky metoder for å få grunnleggende maskinvare til å fungere på en AOSP ROM.

Det forutsetter selvfølgelig at enhver utvikler til og med ville gjort det ønsker å jobbe på denne enheten. Utviklere er akkurat som brukere – de strømmer til de beste, mest populære enhetene de har råd til eller som dekker deres grunnleggende behov. Jeg tviler sterkt på at et stort utviklerfellesskap vil fokusere på Allview V3 Viper, men takket være Project Treble, er det trenger ikke være en for at en bruker skal kunne starte opp AOSP på enhetene sine. Videre, selv om det var utviklerens interesse for denne enheten, ville det til syvende og sist ikke ha noe å si – uten kjernekildekode ville du være heldig å få semi-fungerende ROM-er.

Men en diskant-kompatibel enhet trenger ingen kjernemodifikasjoner for å starte opp AOSP, så det betyr at du ikke trenger Allview V3 Vipers kjernekilde for å kjøre en grunnleggende AOSP ROM. For å bevise dette, XDA Senior Member phhusson gikk ut og kjøpte en av disse enhetene etter en bruker på /r/Android spurte om det ville være mulig å kjøre AOSP på enheten. Etter å ha mottatt enheten bare her om dagen, var phhusson i stand til å starte opp ikke bare AOSP Android 8.0 Oreo, men også AOSP Android 8.1 Oreo også!

I følge Phhusson, all maskinvarefunksjonalitet fungerte da han testet den ved hjelp av «Test Your Android»-appen fra Play Store.

Test din AndroidUtvikler: Hibernate

Pris: Gratis.

3.9.

nedlasting

De bare feil han sa at han har møtt så langt er at enheten slet med å maskinvaredekode HEVC 1080p-videoer i ROM-en hans - en ganske kort liste over feil med tanke på at han ikke brukte tid på å få 8.0 Oreo opp og kjøre, og kort tid på å få 8.1 opp og løping.

Hvorfor dette er viktig

Så langt har alle enhetene som vi har startet de såkalte "Treble ROMs" på, vanligvis vært avanserte Huawei- eller Honor-enheter. De fleste brukere kommer sannsynligvis ikke til å prøve å kjøre AOSP på disse enhetene fordi de kan stole på offisielle støtte fra deres OEM og fordi OEM ROM tilbyr mange eksklusive funksjoner som de ville mangle AOSP.

Imidlertid kjøper ikke alle brukere det siste avanserte flaggskipet fra en stor OEM. Faktisk trekker de fleste brukere mot mellom- eller lavområdeenheter, og det er millioner av denne typen av brukere som kjøper telefoner fra merker som ikke har ressurser til å holde enhetene sine oppdatert. Men takket være Treble kan disse telefonene fortsatt starte opp oppdaterte versjoner av Android uten behov for et dedikert utviklerfellesskap og uten tilgang til kjernekilder.

Vi mener ikke å velge V3 Viper, men det var den perfekte testenheten for å bevise denne muligheten. Vi kan forestille oss en fremtid der tonnevis av laveste MediaTek-enheter blir utgitt med søt programvare støtte, men med diskantkompatibilitet kan disse enhetene leve lenge etter produsentens tiltenkte utløp datoer.

Et lite forbehold

Nå er det én ting jeg bør nevne. Som jeg har nevnt før, Project Treble var egentlig ikke komplett da Android 8.0 Oreo ble utgitt. Jeg blir fortalt at Vendor NDK (VNDK) ikke ble fullført før Android 8.1 Oreo. Det betyr at phhusson gjorde må gjøre noe hackeri for å få 8.1 til å fungere på V3 Viper. I følge han:

Det var et SELinux-problem (en konflikt mellom det MediaTek gjorde i leverandør 8.0 og det Google gjorde i system 8.1 som jeg ennå ikke vet hvordan jeg skal fikse riktig), og så måtte jeg legge til biblioteker til VNDK.

Problemer som dette vil dessverre være vanlig for nå som de få utviklerne som jobber med Diskant-kompatible ROM-er jobber med å finne ut hvordan du starter opp nyere versjoner av Android på riktig måte eksisterende 8.0-enheter.

Nok en gang enheter med Android 8.1 Oreo er imidlertid tilgjengelig, prosessen med å oppdatere til Android P bør være et stykke kake – i det minste, ifølge Google. Hvis alle disse nyhetene begeistrer deg, kan du vurdere å abonnere på vårt diskantaktiverte enhetsutviklingsforum.

Besøk vårt diskantaktiverte enhetsutviklingsforum