c't 26/2017
S. 30
News
Android
Aufmacherbild

Versionsturbo

Project Treble beschleunigt Android-Update

Auf den meisten Smartphones landen Android-Updates erst mit etlichen Monaten Verzögerung – viele Handys gehen auch ganz leer aus. Das will Google mit Project Treble nun ändern. Ein erster Blick darauf lässt Zweifel aufkommen, offenbart aber auch überraschende Profiteure: die Custom-ROMs.

Jedes Jahr im Herbst stellt Google eine neue Android-Version vor. Die meisten Smartphone-Nutzer haben davon aber nichts, denn selbst etliche Monate später bekommen nur wenige Promille der Nutzer ein Update. Das soll nun anders werden: Mit Project Treble hat Google nach eigenen Angaben die bislang größte Anpassung von Androids Low-Level-Architektur vorgenommen. Sie soll sicherstellen, dass die Hersteller neue Android-Versionen in wenigen Stunden auf die eigenen Smartphones anpassen können.

Bislang bestand Android aus dem eigentlichen Betriebssystem und aus von Geräteherstellern hinzugefügtem hardwarespezifischem Code. Dabei handelt es sich in der Regel um Treiber für SoC-Komponenten, WLAN- und andere Schnittstellen sowie die Kameramodule.

Sobald Google eine neue Android-Version veröffentlichte, setzte sich ein bislang träger Prozess in Gang: Zunächst mussten SoC-Anbieter die neue Version so modifizieren, dass sie problemlos mit den eigenen Chips funktionierte. Danach konnten die Gerätehersteller die ihrerseits für die Hard- und Software benötigten Anpassungen am Code vornehmen. In vielen Fällen pflegten anschließend noch die Mobilfunkbetreiber netzspezifische Änderungen ein oder führten Kompatibilitätstests durch. Erst dann wurden die Updates freigegeben.

Bei so vielen Akteuren wundert es nicht, dass neue Android-Versionen erst Monate nach ihrer Veröffentlichung auf den Geräten der Nutzer landen – wenn überhaupt, denn in der Vergangenheit hat sich so mancher Hersteller diesen langwierigen und teuren Prozess bei günstigen Smartphones einfach geschenkt.

Googles bisheriger Ansatz bestand darin, möglichst viele Funktionen aus dem Betriebssystem herauszuziehen und stattdessen in die Google-Play-Dienste zu verfrachten. Sie werden wie jede andere App direkt über den Play Store aktualisiert. Ein löblicher Ansatz, um beispielsweise Sicherheitslücken zu patchen, doch das grundsätzliche Problem verzögerter Updates und der daraus resultierenden Fragmentierung von Android wurde so nie zufriedenstellend gelöst.

Hier setzt das Project Treble an: Mit Android 8 hat Google eine Zwischenschicht ins Betriebssystem eingezogen. Dieses Vendor Interface trennt das Android OS Framework – also das eigentliche Betriebssystem – vom hardwarespezifischen Code der Gerätehersteller. Das Betriebssystem greift also nicht mehr direkt auf die Hardware zu, sondern kommuniziert mit dem neu eingezogenen Layer.

Smartphone-Hersteller haben nun die Möglichkeit, von Google veröffentlichte Updates ohne Änderungen am hardwarespezifischen Code auf ihre Smartphones zu schicken. Das vorherige Warten auf Anpassungen von Chipherstellern oder Netzbetreibern entfällt. Viele Hersteller verpassen der Android-Oberfläche einen optischen „Feinschliff“, der die Markenzugehörigkeit unterstreichen soll. Das muss dank Treble nicht mehr zwingend für jedes Gerät einzeln vorgenommen werden, sondern nur einmalig für alle angebotenen Modelle. Theoretisch lässt sich ein Betriebssystem-Update so künftig in wenigen Tagen statt wie bisher in etlichen Monaten auf ein Smartphone-Modell zuschneiden.

Project Treble erfordert, dass das Android-System und die Low-Level-Schicht auf unterschiedlichen Datenpartitionen liegen, damit das eigentliche Betriebssystem ohne dessen technischen Unterbau aktualisierbar ist. In vollem Umfang nutzbar wird Treble deshalb erst mit Smartphones, die schon mit Android 8 ausgeliefert werden. Theoretisch besteht die Möglichkeit, beim Update von Android 7 auf 8 die Partitionierung anzupassen. Dass das geht, hat Google bei den Pixel-Smartphones der ersten Generation gezeigt. Das ist aber mit einem größeren Risiko verbunden, dass das Gerät nicht mehr startet, falls beim Update etwas schiefgeht. Zudem knapst die andere Partitionierung einen kleinen Teil des für Apps und Nutzerdaten verfügbaren Gerätespeichers ab. Es ist deshalb wohl nicht davon auszugehen, dass viele andere Hersteller Googles Beispiel folgen werden.

Eine neuer Hardware-Layer macht das Android-System künftig unabhängiger vom technischen Unterbau der Smartphones und Tablets. Quelle: Google

Trotz Googles Bemühen erfordert Treble weiterhin, dass die Hersteller mitspielen und Updates nicht verschleppen. Anders als Microsoft auf dem PC kann Google nicht eigenmächtig Updates liefern, über deren Installation alleinig der Nutzer entscheidet. Zudem hilft Treble nicht gegen Bugs in der Treiberschicht. Sie müssen weiterhin von den Chipherstellern gefixt werden. Passiert das nicht, drohen Smartphones mit Sicherheitslücken trotz aktueller Android-Version.

Custom ROMs profitieren

Trotzdem hat Project Treble schon jetzt in Entwicklerkreisen für Begeisterung gesorgt – allerdings nicht wie erwartet bei Smartphone-Herstellern, sondern bei den Programmierern alternativer Custom-ROMs. Sie litten ebenfalls unter mangelndem Treiber-Support: Sobald ein Hersteller ein Smartphone aufs Abstellgleis schickte, sank meist auch die Chance, das Gerät mit alternativen Android-Images weiter am Leben zu erhalten, weil ohne passende Treiber die Hardware nicht mitspielt. Die verfrühte Obsoleszenz ist für die Nutzer besonders ärgerlich. Denn schon oft hatten Hobby-Programmierer bewiesen, dass beispielsweise selbst Android 7 auf alten Knochen laufen würde, man aber mangels WLAN- oder Kameratreiber eben doch kein vollständig funktionierendes Image zusammenstricken konnte.

Gerade bei aktuellen Smartphones lahmt die Custom-ROM-Szene mittlerweile merklich: Zu groß der Aufwand, diverse Code-Änderungen für eine Vielzahl verschiedener Geräte immer aufs Neue einzupflegen. Abgesehen von LineageOS gab für weniger populäre Smartphones kaum alternative Android-Images.

Dank Treble könnte nun wieder Bewegung in die Sache kommen. Im Entwicklerforum XDA-Developers hatten unlängst zwei Programmierer den Nutzen von Treble ausgelotet und respektable Ergebnisse erzielt. So gelang es einem Programmierer mithilfe von Treble aus dem AOSP (Android Open Source Project) ein voll funktionsfähiges Android-8-Image für das Huawei Mate 9 zu erstellen. Bemerkenswert, wenn man bedenkt, dass es für das Mate 9 bislang nicht mal ein Android-7-AOSP-ROM gab.

Ein anderer Entwickler ging noch einen Schritt weiter und entwickelte ein Image, das sich ohne weitere Änderungen auf dem Huawei Mate 9, dem Honor 8 Pro, dem Honor 9, dem Sony Xperia XZ1 Compact und dem Essential Phone installieren lässt – und das, obwohl die Smartphones nicht nur von verschiedenen Herstellern kommen, sondern mit HiSilicons Kirin 960 und Qualcomms Snapdragon 835 unterschiedliche Architekturen nutzen.

Nicht nur, dass solch ein Scoop ohne Treble undenkbar gewesen wäre, der Programmierer will nach eigenen Angaben für Recherche, Entwicklung und Debuggig gerade einmal 20 Stunden gebraucht haben. Sollte Treble es den Entwicklern wirklich so leicht machen, dürfen Nutzer darauf hoffen, dass für ihr Smartphone künftig viel früher nach der Veröffentlichung einer neuen Android-Version das passende Custom-ROM verfügbar ist – und das vielleicht auch noch etliche Jahre, nachdem der Hersteller den Support eingestellt hat. (spo@ct.de)