Tack vare Project Treble-kompatibilitet kan en obskyr telefon kallad Allview V3 Viper som körs på en MediaTek SoC inte bara framgångsrikt starta upp Android 8.0 Oreo, utan även Android 8.1. Detta trots bristen på kärnkällor eller till och med TWRP!
Vi har gjort många inlägg om Googles Projekt Treble under de senaste veckorna. En av dess viktigaste (åtminstone för oss) konsekvenser är att Treble-certifierade enheter måste kunna starta en generisk version av Android kallad Generic System Image (GSI). Det har gjort att köra AOSP på enheter som Honor 8 Pro, Honor 9, eller Huawei Mate 10 Pro en realitet, även om diskantkompatibilitet ensam inte skulle betyda att dessa populära enheter inte skulle få AOSP ROMs ändå. Men hur är det med enheter som sannolikt inte någonsin kommer att ha anständigt stöd för utvecklare – än mindre officiellt stöd? Tänk på det relativt oklara Allview V3 Viper— Utan Project Treble-kompatibilitet skulle det vara ett sätt att köra AOSP på den här enheten mardröm.
Du har förmodligen aldrig hört talas om den här telefonen förut. Den släpptes faktiskt förra månaden och den har en 5,5-tums 18:9 1440x720-skärm, 13MP bakre och 13MP frontkamera, en fingeravtryckssensor, 3 GB RAM, 32 GB intern lagring med en microSD-kortplats, ett 3,5 mm hörlursuttag och en 3 000 mAh batteri.
För 219.00€ finns det säkert bättre alternativ på marknaden. För ytterligare 10 euro kan du köpa Honor 9 Lite eller vänta några dagar och importera det nysläppta Xiaomi Redmi Note 5 eller Note 5 Pro. I våra sinnen finns det inget särskilt intressant med Allview V3 Viper, förutom en sak: den drivs av en MediaTek (MT6737) SoC och den körs Android 8.0 Oreo ur kartongen.
Eftersom den kör Android Oreo och klarar Googles CTS betyder det att den också måste ha uppfyllt kraven för att vara Project Treble-kompatibel. Viktigast för oss, det betyder att enheten kan starta upp en AOSP Oreo GSI utan att utvecklare behöver porta proprietära komponenter från andra telefoner, skapa shims för bibliotek med saknade symboler, använd omslag, hex-redigera binärer för att fixa felaktiga namn och mer hackiga metoder för att få grundläggande hårdvara att fungera på en AOSP ROM.
Det förutsätter naturligtvis att vilken utvecklare som helst skulle göra det vilja att arbeta på den här enheten. Utvecklare är precis som användare – de flockas till de bästa, mest populära enheterna som de har råd med eller som uppfyller deras grundläggande behov. Jag tvivlar starkt på att en betydande utvecklargemenskap skulle fokusera på Allview V3 Viper, men tack vare Project Treble finns det behöver inte vara en för att en användare ska kunna starta AOSP på sina enheter. Dessutom, även om det finns var utvecklarens intresse för den här enheten skulle det i slutändan inte spela någon roll – utan kärnans källkod skulle du ha turen att ens få semi-fungerande ROM.
Men en diskantkompatibel enhet behöver inga kärnmodifieringar för att kunna starta upp AOSP, så det betyder att du inte borde behöva Allview V3 Vipers kärnkälla för att köra en grundläggande AOSP ROM. För att bevisa detta, XDA Senior Member phhusson gick ut och köpte en av dessa enheter efter en användare på /r/Android frågade om det skulle vara möjligt att köra AOSP på enheten. Efter att ha fått enheten bara häromdagen kunde phhusson inte bara starta upp AOSP Android 8.0 Oreo utan även AOSP Android 8.1 Oreo också!
Enligt Phhusson, alla hårdvarufunktioner fungerade när han testade det med appen "Testa din Android" från Play Butik.
Pris: Gratis.
3.9.
De bara bugg han sa att han stött på hittills är att enheten kämpade för att hårdvara avkoda HEVC 1080p-videor i sin ROM - en ganska kort lista över buggar med tanke på att han inte spenderade någon tid på att få 8.0 Oreo igång och en kort tid att få upp 8.1 och löpning.
Varför detta är viktigt
Hittills har alla enheter som vi har startat de så kallade "Treble ROMs" på vanligtvis varit avancerade Huawei- eller Honor-enheter. De flesta användare kommer förmodligen inte att försöka köra AOSP på dessa enheter eftersom de kan lita på officiella stöd från deras OEM och eftersom OEM ROM erbjuder många exklusiva funktioner som de skulle sakna AOSP.
Men inte alla användare köper det senaste high-end flaggskeppet från en stor OEM. Faktum är att de flesta användare dras mot medel- eller lågnivåenheter, och det finns miljontals av dessa typer av användare som köper telefoner från märken som inte har resurser att hålla sina enheter uppdaterade. Men tack vare Treble kan dessa telefoner fortfarande starta uppdaterade versioner av Android utan behov av en dedikerad utvecklargemenskap och utan tillgång till kärnkällor.
Vi menar inte att välja V3 Viper, men det var den perfekta testenheten för att bevisa denna möjlighet. Vi kan föreställa oss en framtid där massor av okänd, low-end MediaTek-enheter släpps med ynka mjukvara stöd, men med diskantkompatibilitet kan dessa enheter leva långt efter det tillverkarens avsedda utgångsdatum datum.
En liten varning
Nu är det en sak jag borde nämna. Som jag har nämnt tidigare, Project Treble var inte riktigt komplett när Android 8.0 Oreo släpptes. Jag har fått veta att Vendor NDK (VNDK) inte blev färdig förrän Android 8.1 Oreo. Det betyder att phhusson gjorde måste göra lite hackeri för att få 8.1 att fungera på V3 Viper. Enligt honom:
Det fanns ett SELinux-problem (en konflikt mellan vad MediaTek gjorde i leverantör 8.0 och vad Google gjorde i system 8.1 som jag ännu inte vet hur man fixar ordentligt), och sedan behövde jag lägga till bibliotek till VNDK.
Problem som detta kommer tyvärr att vara vanliga för nu som de få utvecklare som arbetar med Diskantkompatibla ROM-skivor arbetar för att ta reda på hur man korrekt startar upp nyare versioner av Android på befintliga 8.0-enheter.
Ännu en gång enheter med Android 8.1 Oreo är dock tillgängliga, processen att uppdatera till Android P borde vara en piece of cake — åtminstone enligt Google. Om alla dessa nyheter entusiasmerar dig, överväg att prenumerera på vårt forum för utveckling av diskantaktiverade enheter.
Besök vårt forum för utveckling av diskantaktiverade enheter