Co oznacza projekt Treble dla przyszłego rozwoju niestandardowego ROM-u

Wcześniej mówiliśmy o Project Treble, największej zmianie niskiego poziomu wprowadzonej do bazy Androida od czasu wydania pierwszej wersji beta Androida na 10 lat temu, a także o tym, jak sprawdzić, czy urządzenie to ma. Dla tych, którzy wciąż nie wiedzą, czym jest Project Treble, moduluje on niższą warstwę Androida, oddzielając implementację dostawcy (zastrzeżone obiekty BLOB i oprogramowanie, sterowniki procesora i karty graficznej itp.) Od głównej struktury i systemu Android. Powoduje to przyspieszenie aktualizacji systemu poprzez modularyzację warstwy abstrakcji sprzętu (HAL) i oddzielenie jej od reszty systemu operacyjnego Android oraz wyeliminowanie zależności OEM od powolnych aktualizacji sterowników przez producentów krzemu. Ostatecznym celem jest wydłużenie 24-miesięcznego okresu wsparcia dla głównych aktualizacji oprogramowania obiecanego obecnie przez większość producentów urządzeń.

Powinno to pomóc telefonom z Androidem otrzymywać aktualizacje podobne do Apple'a, przynajmniej na telefonach flagowych. Podczas gdy przeciętny flagowiec z Androidem otrzymuje 2 główne aktualizacje w ciągu 24 miesięcy, urządzenia iPhone otrzymują co najmniej 4 lata aktualizacji iOS, w tym niewielkie. Na telefonach z Androidem obsługujących Treble może to w końcu stać się rzeczywistością, zakładając, że producent telefonu nie jest w stanie zaktualizować swojego telefonu. Ci, którzy chcą aktualizować swoje urządzenia w podobnym czasie, nie mają innej opcji, jak tylko skorzystać z niestandardowych pamięci ROM.

Na szczęście Project Treble powinien również uczynić trawę bardziej zieloną dla niestandardowych użytkowników ROM. W rzeczywistości może potencjalnie całkowicie zmienić niestandardową scenę programowania ROM - i to na dobre .


W jaki sposób niestandardowe ROM-y mogą korzystać z Treble?

Powód, dla którego powoli opracowuje się nieoficjalne porty Android Oreo, a nie tylko coś, co programiści mogą skompilować, uruchomić i uruchomić, jest prosty. Aby wprowadzić nową wersję Androida na istniejącym urządzeniu, jądro i drzewo urządzeń muszą zostać gruntownie przerobione, aby istniejący telefon z Androidem działał z nowszą wersją Androida. Wynika to z faktu, że obecna implementacja dostawcy, w tym wszystkie zastrzeżone binarne obiekty BLOB, została zaprojektowana do pracy z jedną wersją Androida, a zatem musi zostać przerobiona i przeniesiona do nowej wersji Androida, aby urządzenie działało poprawnie.

Prawie wszystkie elementy w telefonie używają niezależnego, zastrzeżonego obiektu blob, i wymagają łatania i samodzielnej pracy, aby nowsze oprogramowanie mogło z niego korzystać, upewniając się również, że inne nie psują się w tym procesie. Jest to naprawdę czasochłonne zadanie i główny powód, dla którego większość stabilnych niestandardowych ROM-ów (takich jak tygodniki LineageOS lub inne oficjalnie obsługiwane ROM-y) pojawiają się dopiero po 2-3 miesiącach od ostatecznego wydania Androida na AOSP. Cały ten wysiłek oznacza również, że wynikowa pamięć ROM będzie działać tylko na jednym urządzeniu lub, w najlepszym przypadku, na kilku urządzeniach o identycznej lub podobnej specyfikacji.

Zdaniem Rona Amadeo z ArsTechnica wydaje się, że zmienia się to w przypadku projektu Treble, i niezależnie potwierdzone przez niestandardowego programistę pamięci ROM, Sultana.

Malchev mówi, że Treble standaryzuje obsługę sprzętu Android w takim stopniu, że ogólne kompilacje Androida skompilowane z AOSP można uruchomić i uruchomić na każdym urządzeniu Treble. W rzeczywistości te „surowe kompilacje AOSP” będą używane w niektórych testach CTS, które Google musi przekazać wszystkim producentom urządzeń z Androidem w celu licencjonowania aplikacji Google - nie chodzi tylko o to, że rzeczy powinny działać, muszą działać.

Aby doprowadzić ten punkt do domu, oznacza to, że z powodu sposobu modularyzacji dolnej warstwy Androida wszystkie urządzenia Treble na rynku będą mogły uruchomić zwykłą wersję, kompilację AOSP Android . Eliminuje to większość problemów związanych z przenoszeniem niestandardowych pamięci ROM na starsze urządzenie, ponieważ jedna, ogólna wersja systemu Android może działać na wielu urządzeniach. To przybliża urządzenia z Androidem do czegoś takiego jak komputer osobisty, na którym można uruchomić najnowszą, najnowocześniejszą wersję systemu Windows 10 lub dowolną dystrybucję Linuksa na komputerze w wieku 10-12 lat.

Jednak nie będziesz w stanie uruchomić bezbłędnie działającego systemu Android 9.0 na swoim urządzeniu Treble - drzewa i jądra urządzeń nadal będą wymagały pracy. To wciąż świetny początek: dzięki modułowej strukturze HAL nakład pracy związany z uruchomieniem kolejnej wersji Androida powinien zostać znacznie zmniejszony, a stabilne wersje 9.0 można było zobaczyć w ciągu kilku dni / tygodni zamiast miesięcy. Powinniśmy mieć na uwadze, że Project Treble, podczas gdy jest obecnie wdrażany, wciąż jest w toku, ponieważ wciąż otrzymuje zmiany w AOSP, a warstwa dostawcy może ostatecznie zostać znormalizowana do punktu, w którym instalacja nowej wersji Androida będzie taka sama jak instalowanie systemu Windows na komputerze.

Jest to ogromny postęp techniczny i może znacznie poprawić rozwój niestandardowego ROMu opartego na AOSP na naszych forach. Ale to dotyczy tylko urządzeń z Project Treble, a obecnie jedynymi dostępnymi telefonami Treble są Google Pixel, Google Pixel XL, Sony Xperia XZ1 i XZ1 Compact. Co stanie się z istniejącymi telefonami sprzed Oreo?


Czy niestandardowa pamięć ROM może przenieść Treble na istniejący telefon?

Mamy już dość katalog ROM-ów Android Oreo dla istniejących telefonów, w tym telefonów Nexus, OnePlus, Xiaomi i Motorola. Czy jednak jeden z tych ROM-ów może przynieść Project Treble do twojego telefonu? Odpowiedź: to mało prawdopodobne .

Zmiany wprowadzone w niskopoziomowej platformie Android są naprawdę skomplikowane i nie są czymś, co można po prostu zacząć pracować na zwykłej niestandardowej pamięci ROM. Nie jest to coś w rodzaju kontroli kołowej lub gestów urządzenia, ale całkowite przeprojektowanie implementacji dostawcy. Jest to coś, co wymaga pracy Qualcomm i innych producentów krzemu. Google współpracuje obecnie z różnymi producentami OEM, aby wprowadzić Treble do niektórych istniejących telefonów flagowych, ale nawet wtedy nie jesteśmy pewni, którzy producenci OEM nad tym pracują, ponieważ lista nie została ujawniona. Widzieliśmy jednak pewne zatwierdzenia związane z tonami wysokich unoszące się w LineageOS Gerrit, więc można śmiało powiedzieć, że rzeczywiście próbowano.

W końcu jest za wcześnie, aby powiedzieć. Wcześniej na naszych forach pojawiły się niesamowite osiągnięcia programistyczne, w tym niesamowite rzeczy, takie jak uniwersalne interfejsy bez systemu lub rozszerzenia pamięci eMMC, więc kto wie? Ktoś może w jakiś sposób skończyć z uruchomieniem Project Treble na starszym telefonie.

Ale mieliśmy okazję przekopać się przez źródło Android Oreo przez około 2 tygodnie, więc, jak powiedzieliśmy, jest jeszcze za wcześnie, aby powiedzieć. Nadal jesteśmy podekscytowani możliwościami i będziemy Cię informować o przyszłych wydarzeniach związanych z portalem w Treble, do których najlepiej można uzyskać za pośrednictwem aplikacji Labs!

Dziękujemy członkowi zespołu Paranoid Android / u / evan1123 za wyjaśnienie błędu w artykule!