Seit knapp drei Jahren habe ich das Nexus S, sozusagen das "Werks-Android-Phone" von Google; und ich muss sagen, dass ich meine Wahl, an eben dieser Stelle eine Linie zu ziehen und kein Apple-Produkt zu kaufen, noch nicht bereut habe.
Okay, es ist inzwischen etwas lahm, aber ein neues Handy muss ich mir deswegen noch lange nicht kaufen.

Während iOS so ist, wie es halt ist, man es mit Hilfe eines Jailbreaks noch etwas aufbohren und die eine oder andere Funktion erweitern kann, gehören diese manigfaltigen Anpassungsmöglichkeiten zum Standardrepertoire von Android.

Doch als ein Bastler, der hier und da die Grenzen des gelieferten Systems etwas überschreiten will, war es nötig, mich mal mit den Themen "Root, ROM und Kernels" zu befassen.  Man liest hier und da davon, doch ehrlich gesagt war ich anfangs ziemlich überfordert damit.
Klar, ich muss mein Gerät rooten, um ein anderes ROM drauf zu spielen, aber was hat es mit diesen Kernels und Gapps auf sich, von denen man in diesem Zusammenhang immer liest?

Root

Dieser Begriff kommt aus der Unix-Welt. Android basiert (wie MacOS und iOS) auf Unix. Unter Unix sind viele Verzeichnisse und Dateien des Systems aus Sicherheitsgründen (Viren, Hacker, DAUs) gesperrt und nur für den Root-/Super-User zugänglich. Jemand, der sich damit auskennt. Ebenso sind einige Bestandteile des Android-Systems gesperrt und um sie verändern zu können, muss man sein Smartphone "rooten". 

Für den Normalgebrauch ist rooten nicht nötig. Besonders, weil man dadurch seinen Garantieanspruch verliert vielleicht auch nicht jedermanns Sache.
Einige Programme wie zum Beispiel ein VPN-Programm (VPNC Widget), mit dessen Hilfe ich mich mit meiner FritzBox zu Hause verbinden kann, benötigen ein gerootetes Smartphone, um funktionieren zu können.

Oder wenn ich das Stock ROM gegen ein Custom ROM austauschen will. Was eine perfekte Überleitung zum nächsten Thema ist :-)

 

ROM

Meiner Ansicht nach ja nicht die perfekte Bezeichnung – außer Google versteht unter dieser Abkürzung etwas anderes, als "Read-Only Memory".  Mit der "ewigen Stadt" hat es auf jeden Fall überhaupt garnichts zu am Hut.

Das ROM ist der Hauptbestandteil des Android-Systems...das Betriebssystem an sich. Man unterscheidet hierbei zwischen dem "Stock ROM" – das von Google stammende System (welches möglicherweise vom Hersteller des Handys noch leicht modifiziert wurde), das mit dem Smartphone ausgeliefert wurde  - und dem "Custom ROM" – sozusagen einer gepimpten Version davon.
Dazu kursiert noch der Begriff Vanilla Android, welcher uns nichts anderes sagen will, dass es sich um ein nicht vom Hersteller modifiziertes System handelt. Blankes Android, wie von Google ausgeliefert.

Da Android OpenSource ist und beliebig erweitert und modifiziert werden kann, haben sich viele Entwickler zur Aufgabe gemacht, da nachzubessern, wo ihrer Meinung nach Google etwas ausgelassen hat...oder wo Google zu beschränkt ist, weil sein System ja auf möglichst allen Endgeräten laufen sollte.

Custom ROMs gibt es viele – Cyanogen Mod ist das Bekannteste davon – allerdings immer nur für eine beschränkte Anzahl von Endgeräten, auf die sie speziell zugeschnitten sind.
Cyanogen Mod deckt hierbei noch die meisten ab, eine Vielzahl von CustomROMs  sind aber oft nur für das Galaxy S oder Nexus – die würde ich mal sagen meist vertretenen Android-Endgeräte.

Ich selbst nutze unter anderem slimROM und kann es nur empfehlen. Dazu in einem anderen Artikel mehr.

Aber wieso nun ein Custom ROM, wenn das Stock ROM von Android doch eigentlich alles kann? Ein Grund mag die Updatepolitik verschiedener Hersteller sein. Das Samsung Galaxy S (erste Generation) bekam von Samsung selbst nämlich nicht mal ein Update auf Android 4. Dank Cyanogen Mod allerdings kein Problem: Rooten, ROM flashen und schon läuft Android 4 auf dem Galaxy S.

Ein anderer Grund mögen die kleinen aber feinen Erweiterungen am System sein, die die Programmierer sich eingebaut haben. Als Beispiel: Den Standby-Knopf als Kamera-Auslöser verwenden. Geht im Stock ROM beim Nexus S nicht, mit den meisten Custom ROMs schon. 

Meine ROM-Favouriten

Cyanogen Mod

Wieso Cyanogen? Die Masse an Geräten, die Cynogen unterstützt, ist beeindruckend. Dass das eigene Android-Smartphone für dieses CustomROM nicht geeignet ist, ist gering. Die meisten anderen CustomROMs basieren auf Cyanogen und bei einer neuen Android-Version haben die Jungs von Cyanogen meist am schnellsten ein ROM parat.
Oder doch lieber ein anderes ROM?Der (dazugebastelte) Funktionsumfang von Cynogen ist meiner Ansicht nach etwas geringer, als bei anderen ROMs.

slimROMS

Wieso slim? Slim ist schnell und schlank. Vieles an Android wurde optimiert und der Geschwindigkeitsschub war beim Umstieg vom Stock ROM auf Slim deutlich spürbar. Slim bietet einen interessanten  Funktionsumfang. Zum Beispiel die Möglichkeit, die Bildschirmauflösung zu ändern. Was anfangs erst sehr gewöhnungsbedürftig ist, mag ich inzwischen schon nicht mehr wegdenken: Ich habe bei meinem Nexus S von 240 auf 182 dpi umgestellt. Von einem pixeligeren Bild merke ich nichts, dafür habe ich mehr Platz auf dem Bildschirm und viele Elemente sind nicht so "bullig".
Oder doch lieber ein anderes ROM? Unterstützt wird aktuell jedes Gerät, welches sich aus den Teilen S Galaxy und Nexus zusammenbasteln lässt. Also: Nexus S, Nexus 4, Galaxy Nexus und Galaxy S. Sollte man nicht zu den glücklichen Besitzern gehören, dann wohl doch lieber ein anderes ROM...
Tipp für Nexus S Besitzer:  Sucht in der android-hilfe mal nach "slimplus". Hierbei handelt es sich um eine überarbeitete Version von slimrom, welche meiner Ansicht nach akkuschonender ist. (discontinued)

 

AOKP

Wieso AOKP? Ein auch recht bekanntes und verbreitetes ROM mit beachtlicher Entwickler-Community dahinter. Die Anzahl unterstützter Geräte ist um einiges größer, als bei Slim, aber reicht nicht an Cyanogen heran. Funktionsumfang ebenfalls beachtlich. Nette Sache am Rande: Zwischen allen erscheinenden Builds gibt es hin und wieder einen "Milestone", von dem man ausgehen kann, dass dieses Build stabil sein wird. Sonst muss man bei der einen oder anderen Version eines Custom ROMs immer mal davon ausgehen, dass es spontan neustartet oder irgendwelche anderen Macken hat.
Oder doch lieber ein anderes ROM? Wieso nicht? Man ist ja experimentierfreudig...

Codename Android

Wieso Codename? In meinem Fall, weil ich auf Android 4.1.1 umsteigen wollte, Slim und AOKP noch nicht stabil genug waren und mir dort im ersten Build noch einige Funktionen fehlten. Codename Android hatte bereits alles und ich bin recht zufrieden damit. Es läuft stabil, verrichtet flott seinen Dienst, Funktionsumfang ist größer als bei Cyanogen, aber noch nicht so gewachsen, wie bei meiner 4.0.4er-Slim-Version. Wird aber sicher noch werden. 
Oder doch lieber ein anderes ROM? Wenn man kein Nexus-Gerät oder Motorola Xoom sein Eigen nennt, dann wahrscheinlich schon...
Außerdem verschwindet der Entwickler von Codenameandroid auch gerne mal wieder von der Bildfläche und dann ist nichts mehr mit Updates.

Miui

Am Rande: Das Einzige der Liste, welches ich noch nicht selbst ausprobiert habe. 
Wieso Miui: Es soll wohl das "iOS-igste" ROM sein und iPhone-Umsteigern den Einstieg in Android einfacher machen.  Miui gibt es auch für sehr viele Geräte und auf der verlinkten Website gibt es auch prima Anleitungen, wie man Miui bei sich installiert. Inklusive Anleitung des Root-Vorgangs. Alle anderen Seiten halten sich was das betrifft eher bedeckt und erwähnen die Schritte zum ROM-Aufspielen in kryptischen Insider-Kürzeln ("Make a Nandroid, then Wipe/Flash") oder lassen sie ganz weg. Wenn man sowas noch nie gemacht hat und keine Lust auf stundenlange Recherche im Netz hat, dann sollte man vielleicht mit Miui anfangen.
Oder doch lieber ein anderes ROM? ...mit mehr Funktionsumfang?

Ich weiß nicht, ob man die existierenden ROMs zählen oder irgendwo gescheit auflisten kann. Schaut man im XDA-Developers-Forum, findet man viele Threads mit speziellen ROMs. ich konnte mich allerdings nur für ROMs begeistern, die mindestens auch eine eigene übersichtliche Homepage zur Verfügung stellen, wo ich mich über neue Versionen informieren kann, den Download schnell finde und mich nicht durch 150 Foren-Seiten klicken muss, um mir meine eigene FAQ-Interpretation zusammenzustellen.

Was kann so ein ROM, was das Standard-Android nicht kann?

Nicht alle oben erwähnten ROMs bieten folgende aufgelistete Zusatz-Funktionen. Am ehesten fündig wird man bei AOKP, Slimrom oder Codename, wobei der Funktionsumfang auch dort immer von der aktuellen ROM-Version abhängt. Momentan sind zum Beispiel gerade alle dabei von ICS auf JellyBean umtzsteigen, wo der Stabilität zuliebe erst auf einige Funktionen verzichtet wird, die dann erst in späteren Versionen wieder dazustoßen.

Aber was ich von einem Custom ROM erwarte / gewohnt bin:

  • Flotter, als das Stock ROM
  • Gepimpter Lockscreen: Nicht nur Verknüpfungen zu Entsperren und Kamera, sondern 2-4 weitere Programme frei definierbar, außerdem Wetter- und "Kommende Termine"-Anzeige auf dem Lockscreen. Ist ja genug Platz vorhanden!
  • Gepimpte Benachrichtigungsleiste: Statt 5 gmail-Icons ein gmail-Icon mit ner 5, "Toggles" (Schalter für WLAN, Bluetooth & Co) bei aufgeklappter Benachrichtigungsleiste
  • Gepimpte Kamera: Abdrücken mit der Power-Taste statt umständlich über den Touchscreen. Schon das alleine ist das Aufspielen eines CustomROMs meiner Ansicht nach wert
  • Bei ausgeschaltetem Bildschirm und laufender Musik durch langes Drücken der Lautstärketasten einen Titel vor oder zurück springen. 
  • Profile (das alte Nokia lässt grüßen)
  • Licht der Hardwaretasten nach einer ausgewählten Zeit ausschalten (hat mich beim Nexus S immer gestört, dass sie dauernd leuchten, wenn der Bildschirm an ist)
  • Bei Tastatureingaben den Cursor mit Hilfe der Lautstärketasten bewegen

Kernel

Was ist das? So genau kann ich es euch auch nicht sagen und man möge mich verbessern, wenn ich nun absoluten Mist erzähle, aber ich behaupte nun mal, dass der Kernel unter dem System liegt und die Kommunikation zwischen den Hardware-Elementen und dem ROM regelt.

Der Kernel lässt sich wie auch das ROM austauschen. Je nach Smartphone gibt es genügend Auswahl. Meist kommt der alternative Kernel auch durch das Custom ROM auf's Endgerät.

Wieso ein anderer Kernel? Hmm... Ich hätte ihn nicht getauscht, wenn nicht sowieso durch's Custom ROM ein anderer draufgespielt worden wäre. Nebenbei musste ich noch den Matr1x-Kernel testen, weil man von dem so viel liest. Eine große Änderung konnte ich allerdings in Sachen Akku-Ausdauer und Leistung nicht feststellen.

Recovery

Spielt man ein Custom ROM auf oder rootet man sein Smartphone, stolpert man auch schnell über das Recovery, sozusagen ein abgespecktes Betriebssystem, welches (Beim Starten die Standby-Taste und Lautstärke-hoch-Taste gedrückt halten) Funktionen wie Neu-Formatierung des Speichers, Löschen von Cache, Werkseinstellung und Flashen von Software bietet.

Neben dem standard-Android-Recovery-Modus von Android gibt es natürlich auch aufgeborte Versionen wie zum Beispiel TWRP, welches ich selbst verwende, um zum Beispiel ein neues Custom ROM aufzuspielen. Eine andere recht bekannte Recovery: Clockwork Mod.

Gapps

Dies sei nur am Rande erwähnt – und man darf über mich lachen – weil ich im Zuge der Suche nach einem geeigneten Custom ROM immer wieder Anleitungen gestoßen bin, die etwa so lauteten:

"Flash Base, then gapps"

Eine genauere Anleitung oder Beschreibung, was die da von mir wollen, konnte ich noch auf keiner Custom-ROM-Seite finden. Wobei viele Custom ROMs noch dazu in Foren angeboten werden, wo ein Thread gerne mal 150 Seiten umfasst.

Irgendwann kam ich dann aber doch dahinter: gapps ist nicht der Plural von "Kluft", sondern kurz und knapp die g-apps. Die "Google Applications", also alle Google-Programme wie gmail, Maps, etc, die aus rechtlichen Gründen (teilweise) nicht bei den Custom ROMs enthalten sind und in einem separaten Schritt installiert (geflasht) werden müssen.

Alles klar.

Â