Android-Firmware für Profis: CyanogenMod 6.0 im Praxistest

(http://www.zdnet.de/magazin/41537059/android-firmware-fuer-profis-cyanogenmod-6-0-im-praxistest.htm)

von Christoph H. Hochstätter, 1. September 2010

CyanogenMod gilt als die beste von Nutzern erstellte Android-Firmware. Am Wochenende ist Version 6.0 für viele Handy-Modelle erschienen. ZDNet zeigt, was die Software auf FroYo-Basis besser kann als die Stock-ROMs der Hersteller.

Die CyanogenMod-Firmware[1] gilt als eins der besten Android-Images, das von Nutzern erstellt wurde. Am Wochenende ist die finale Version 6.0 erschienen, die auf Android 2.2 (FroYo) basiert. Die CyanogenMod-Software ist für das Google Nexus One[2], das Motorola Droid sowie für die HTC Modelle Aria, Desire[3], Dream/Magic[4] (T-Mobile G1[5]), Evo, Incredible und Slide erhältlich. Die Downloadseite[6] des Projekts ist nach Geräten untergliedert. Für einige Modelle ist entweder kein oder noch kein offizielles FroYo-Image verfügbar. Für sie ist ein Upgrade besonders interessant.

In Vorbereitung befinden sich Versionen für das HTC Hero und das Samsung Galaxy S[7]. Das Motorola Milestone[8], das nahezu identisch mit dem Droid ist, wird jedoch nicht unterstützt, da bisher keine Möglichkeit bekannt ist, eine andere Firmware aufzuspielen.

Für einige andere Geräte existieren inoffizielle CyanogenMod-Builds: Für das HTC Legend[9] findet man CyanogenMod 6.0 etwa bei derhofbauer.at[10]. Eine gute Anleitung zum Rooten des Legends gibt es bei MoDaCo[11].

CyangenMod ist mehr als ein ROM, das allerhand Zusatzapplikationen in die System-Partition schreibt, um Platz auf der Data-Partition zu sparen. Es beinhaltet zahlreiche Verbesserungen bis hin zu einem eigenen Kernel, der je nach Hardwaremodell auf Linux 2.6.34 oder 2.6.35 basiert. Die FroYo-Stock-Roms nutzen hingegen einen 2.6.32-Linux-Kernel.

Einige Verbesserungen betreffen die Bedienbarkeit. Dazu gehören das Energie-Widget und der ADW-Launcher. Andere Modifikationen bleiben unsichtbar, etwa die deutlich schnellere Verarbeitung von JPG- und PNG-Dateien und die Möglichkeit, jede App auf der SD-Karte zu installieren, ohne dass dazu eine ext3-Partition erforderlich ist.

Besitzer von HTC-Geräten müssen sich darüber im Klaren sein, dass CyanogenMod kein Sense enthält. Das ist allein aus rechtlichen Gründen nicht möglich. Die Meinungen über HTC Sense gehen stark auseinander. Die Befürworter mögen die ansprechende Optik und die zahlreichen Animationen. Die Gegner monieren, dass Sense-Anwendungen wie Peep, Friendstream oder der Sense-Kalender sich nicht ruckfrei bedienen lassen.

Zu einem Konsens wird es sicherlich genauso wenig kommen wie bei den Diskussionen über das beste Betriebssystem oder den besten Browser. Fakt ist, wer CyanogenMod nutzen möchte, muss ohne HTC Sense auskommen.

Wie alle inoffiziellen ROM-Updates lässt sich CyanogenMod nur installieren, wenn das Telefon "gerootet" ist. Im Wiki[12] des Projekts finden sich Anleitungen zum Rooten und Aufspielen der neuen Firmware für alle unterstützten Modelle. Manche Telefone von HTC sind vom Mobilfunkprovider allerdings mit einem Bootloader ausgestattet, der die Standard-Methoden zum Rooten verhindert. In diesem Fall muss die sogenannte "Goldcard-Methode" angewandt werden. ZDNet bietet für das HTC Desire dazu eine ausführliche Anleitung[13].

Bildergalerie

CyanogenMod 6.0: So sieht die Android-Firmware für Profis aus[14]

» zur Bildergalerie ...[14]
Die auffälligsten Änderungen betreffen den Launcher. Das ist die Applikation, die die Homescreens anzeigt und verwaltet, also die Android-Shell. CyanogenMod verwendet den ADW-Launcher[15]. In der Standard-Konfiguration, siehe Bild 2[16], ähnelt er dem Standard-Launcher des Nexus One. Allerdings bietet er viele Möglichkeiten der Anpassung.

Im Android-Market finden sich zahlreiche Themes für den ADW-Launcher, die das "Erscheinungsbild" individualisieren, siehe Bild 3[17] und Bild 4[18]. Insbesondere ist es möglich, am unteren Rand eine Leiste zu implementieren, die wie der Dock von Apple funktioniert. Ein "bisschen Sense" ist durch die Übersichtsfunktion der einzelnen Homescreens implementiert, siehe Bild 5[19].

Anwender, die viele Icon auf ihren Homescreens platzieren möchten, haben die Möglichkeit, deren Abstand zu verringern. Bild 2[16] verwendet ein Fünf-mal-Fünf-Raster anstelle des Vier-mal-Vier-Rasters des Standard- oder HTC-Sense-Launchers. So lassen sich bis zu 25 statt 16 Icons auf einen Homescreen platzieren.

Grundsätzlich kann der ADW-Launcher auch im Querformat arbeiten. Das ist etwa in der Autohalterung praktisch. Allerdings behält er das Raster aus dem Hochformat bei. Bild 6[20] zeigt ein Raster mit fünf Zeilen und vier Spalten, das für das Hochformat ideal ist, im Querformat aber zum Verlust des Textes und der der unteren Zeile führt. Hier ist noch Verbesserungsbedarf.

Sehr praktisch sind die Erweiterungen in der Statuszeile. In Bild 2[16] erkennt man im Batteriesymbol die Restladung in Prozent, die allerdings nur angezeigt wird, wenn das Device nicht geladen wird. Mit dem Standard-Batteriesymbol ist es kaum möglich, einen Unterschied zwischen 60 und 80 Prozent zu erkennen.

Links neben dem Feldstärkesymbol für GSM- und UMTS-Netzwerke lässt sich optional die Feldstärke in Dezibell anzeigen. Bild 2[16] zeigt -83 dB. Da es bei digitalen Funkstandards jedoch hauptsächlich auf den Signal-Rauschabstand ankommt, ist die Standardanzeige völlig ausreichend.

Musikliebhaber kommen mit dem DSP-Manager auf ihre Kosten, siehe Bild 12[21]. Damit lässt sich der Klang verbessern und individualisieren. Sinnvoll ist das jedoch in der Regel nur für den Kopfhörerausgang, obwohl sich auch der interne Lautsprecher und das Bluetooth-Audio-Device anpassen lassen. Wer die Equalizer-Kurve mit seinem Zeigefinger justiert, wird feststellen, dass auch kapazitive Touchscreens ihre Grenzen haben.

Deutliche Verbesserungen gibt es für Nutzer, die auf lange Akkulaufzeiten angewiesen sind. Bild 7[22] zeigt die verbesserte Energiesteuerung. So lässt sich per Widget die Datenverbindung auf 2G (GPRS und EDGE) begrenzen, was eine Menge Strom spart. Nutzer können die Datenverbindung auch ganz abschalten. Dann wird zwar im Hintergrund nicht mehr synchronisiert, man bleibt aber telefonisch erreichbar. Auch WLAN-Tethering lässt sich bequem von Energie-Widget aus aktivieren.

Der CyanogenMod-Kernel bietet Unterstützung für Overclocking und Undervoltage. Ein HTC Desire beziehungsweise ein Nexus One lassen sich bis auf 1113 MHz overclocken (Standard 1000 MHz), siehe Bild 8[23], was im ZDNet-Test die Stabilität nicht beeinträchtigt.

Viel interessanter ist jedoch das Underclocking: Ein HTC Desire zeigt bei einer Begrenzung auf 768 MHz kein schlechteres Ansprechverhalten. Auch CPU-intensive Anwendungen wie die Google Car Navigation verrichten ihren Dienst einwandfrei. Da der Kernel bei einer langsameren Taktfrequenz die Spannung automatisch reduziert, hält der Akku deutlich länger.

Das Tool SetCPU, das aus dem Market nachgeladen werden muss, bietet auch die Möglichkeit, die Heuristiken für die automatische Anpassung der Taktfrequenz zu ändern. Standardmäßig wird bei 85 Prozent CPU-Auslastung höher getaktet. Diesen Wert kann man beispielsweise auf 95 Prozent erhöhen.

Ein interessantes Feature für Besitzer von Modellen mit AMOLED-Displays ist die Möglichkeit, nur rote, grüne oder blaue LEDs zu verwenden, siehe Bild 9[24]. Da bei AMOLEDs nur die LED-Pixel Strom verbrauchen, die aktiviert sind, lässt sich der Stromverbrauch des Displays um zwei Drittel reduzieren.

Bild 10[25] zeigt, dass das Display mit Abstand der größte Stromverbraucher des Handys ist. Allerdings ist die gezeigte Statistik typisch für den intensiven Test eines Gerätes in einer Redaktion. Im Normalbetrieb fällt der Anteil des Display deutlich geringer aus. Er steht dennoch meist ganz oben in der Liste.

CyanogenMod bietet die Möglichkeit, alle Applikationen auf der SD-Karte zu installieren, unabhängig davon, ob der Anwendungsentwickler dies erlaubt hat oder nicht, siehe Bild 11[26]. Dabei nutzt CyanogenMod die in FroYo vorgesehene Funktion, Anwendungen auf verschlüsselte Image-Dateien einer FAT-Partitionen via Loop-Device[27] abzulegen.

Andere ROMs verwenden dazu Skripts, die meist Namen wie A2SD (All to SD card) oder A2SD+ tragen. Diese Skripts erfordern jedoch, dass der Nutzer eine zweite Partition auf der SD-Karte mit einem Filesystem anlegt, dass Unix-Permissions unterstützt, etwa ext3.

CyanogenMod verschiebt alle Applikationen problemlos auf eine mit FAT32 formierte Speicherkarte. Außerdem lässt sich konfigurieren, dass heruntergeladene Apps automatisch auf die Speicherkarte installiert werden.

Im ZDNet-Test gibt es mit dieser Funktion nahezu keine Probleme. Nur Anwendungen, die beim Booten von Android automatisch gestartet werden sollen, und Widgets müssen auf dem Telefon verbleiben. Widgets funktionieren von der SD-Karte zunächst einwandfrei. Nach dem nächsten Reboot werden sie jedoch nicht mehr auf den Homescreens angezeigt und lassen sich auch nicht mehr hinzufügen.

Neben den heruntergeladenen Anwendungen verbraucht der Dalvik-Cache[28] ziemlich viel Flashspeicher. Er wird mit CyanogenMod nicht auf die Speicherkarte verschoben. Eine manuelle Einrichtung über die Kommandozeile und ein Startup-Skript in /etc/init.d sind natürlich möglich. Allerdings wird eine ext3-Partition benötigt.

Obwohl CyanogenMod viele Verbesserungen für Endanwender bringt, ist das ROM auch für Entwickler und Unix-Freaks gedacht. Das erkennt man vor allem am Kernel. Fest integriert ist die Unterstützung für tun/tap. Das Device wird von den meisten VPNs benötigt. OpenVPN befindet sich im Lieferumfang. Andere VPNs wie tinc oder der Cisco-kompatible Client vpnc können zu Android portiert werden.

IPv6 ist hingegen als Modul (.ko-Datei) implementiert, das beim Booten geladen wird. Wer derzeit keinen Bedarf an IPv6 hat, kann das Modul mit rmmod entfernen. Darüber hinaus befindet sich Kernel-Modul-Unterstützung für NFS- und SMB/CIFS-Clients sowie die nötigen .ko-Dateien für einen NFS-Server im Kernel-Mode im Lieferumfang.

Als Scheduler setzt das CyanogenMod-Team BFS[29] (Brain Fuck Scheduler) ein, der gegenüber CFS[30] auf mobilen Geräten und Single-Core-CPU Vorteile haben soll. Allerdings hat auch Google mit BFS experimentiert, dann aber entschieden, FroYo weiterhin mit CFS zu linken, da keine Performancevorteile festgestellt werden konnten.

Weiterhin sind einige Qualcomm-Optimierungen[31] implementiert. Insbesondere lassen sich dadurch JPG- und PNG-Dateien schneller dekodieren. Außerdem ist der Qualcomm-Code zur 2D-Hardware-Beschleunigung der Android-Skia-Engine eingeflossen. Darüber hinaus konnten zwei CyanogenMod-Entwickler die Geschwindigkeit des Textrenderings erhöhen.

Kommandozeilenfreaks finden aber auch einige Enttäuschungen: Busybox kommt mit vergleichsweise wenig internen Kommandos. Einige arbeiten nicht korrekt. So zeigt etwa ifconfig keine IPv6-Informationen an. Der IPv6-Stack funktioniert jedoch einwandfrei. Der mitgelieferte SSH-Server dropbear akzeptiert jeden Benutzernamen und jedes Passwort für eine Anmeldung als Root. Da gibt es sowohl von Busybox als auch von dropbear bessere Android-Portierungen. Allerdings ist es kein Problem, die Implementierung eines anderen ROMs zu verwenden oder selbst zu kompilieren.

CyanogenMod 6.0 ist ein alternatives Android-Image, das für zahlreiche Handy-Modelle verfügbar ist. Besitzer von HTC-Modellen müssen sich aber im Klaren darüber sein, dass HTC Sense nicht Bestandteil ist. Viele Anwendungen, etwa den ADW-Launcher, können Nutzer auch aus dem Market beziehen. Mit CyanogenMod holt man sie sich lediglich vorinstalliert.

Poweruser, die grundsätzlich Applikationen wie Dev Tools und Spare Parts[32] auf ihren Geräten installieren, sparen eine Menge Zeit. Endanwender, die Wert darauf legen, ihr Handy möglichst einzigartig zu machen, finden mit CyanogenMod alle denkbaren Möglichkeiten.

Die eigentlichen Verbesserungen liegen jedoch im Kernel, der unter anderem zahlreiche Geschwindigkeitsvorteile im Grafikbereich bringt. Das Highlight ist jedoch die verbesserte Energiesteuerung. So lässt sich ein Gerät mit CyanogenMod underclocken, um Energie zu sparen. Wer sein CyanogenMod sinnvoll konfiguriert, kommt viel länger mit dem Akku aus.

Wer zusätzlich Speicher benötigt, wird das Verschieben von Apps auf die SD-Karte zu schätzen wissen. CyanogenMod ermöglicht dieses Feature für alle Apps, ohne eine ext3-Partition auf der Karte zu benötigen.

Besonders interessant ist das ROM auch Besitzer eines Handys, für das es bis jetzt kein offizielles Froyo-Image gibt. Dazu zählt beispielsweise das T-Mobile G1.

URLs in diesem Artikel:
[1] = http://www.cyanogenmod.com/
[2] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_google_nexus_one_im_test_neuer_schwung_fuer_android_review-20000153-41525293-1.htm
[3] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_besser_als_googles_nexus_one_htc_desire_im_test_review-20000153-41530176-1.htm
[4] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_htc_magic_vodafones_android_smartphone_im_test_review-20000153-41003417-1.htm
[5] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_t_mobile_g1_mit_android_open_source_handy_im_test_review-20000153-39197705-1.htm
[6] = http://forum.cyanogenmod.com/files/category/1-stable-mod/
[7] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_samsung_galaxy_s_iphone_konkurrent_mit_riesen_display_review-20000153-41534147-1.htm
[8] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_milestone_motorolas_android_flaggschiff_im_test_reviewstory-20000153-41524553-1.htm
[9] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_htc_legend_im_test_das_perfekte_android_smartphone_review-20000153-41529013-1.htm
[10] = http://derhofbauer.at/android/
[11] = http://android.modaco.com/content/htc-legend-legend-modaco-com/307487/24-may-r4-htc-legend-rooting-guide-now-with-1-31-x/
[12] = http://wiki.cyanogenmod.com/index.php?title=Main_Page
[13] = http://www.zdnet.de/mobiles_arbeiten_mit_handheld_pda_handy_smartphone_htc_desire_so_entfernt_man_aggressives_provider_branding_story-20000103-41535969-4.htm
[14] = http://www.zdnet.de/galerie/41537124/cyanogenmod-6-0-so-sieht-die-android-firmware-fuer-profis-aus.htm#sid=41537059
[15] = http://www.androlib.com/android.application.org-adw-launcher-FEjB.aspx
[16] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-2.htm#g
[17] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-3.htm#g
[18] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-4.htm#g
[19] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-5.htm#g
[20] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-6.htm#g
[21] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-12.htm#g
[22] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-7.htm#g
[23] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-8.htm#g
[24] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-9.htm#g
[25] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-10.htm#g
[26] = http://www.zdnet.de/bildergalerien_cyanogenmod_so_sieht_die_android_firmware_fuer_profis_aus_story-39002382-41537124-11.htm#g
[27] = http://de.wikipedia.org/wiki/Loop_device
[28] = http://de.wikipedia.org/wiki/Dalvik_Virtual_Machine
[29] = http://en.wikipedia.org/wiki/Brain_Fuck_Scheduler
[30] = http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
[31] = http://en.wikipedia.org/wiki/Qualcomm
[32] = http://www.androlib.com/android.application.com-androidapps-spare_parts-qtm.aspx