16. Juni 2013

Galaxy Nexus: CyanogenMod flashen

In diesem Artikel soll erläutert werden, wie es möglich ist, das Android-CustomROM "CyanogenMod" auf dem Smartphone "Samsung Galaxy Nexus" zu installieren. Hierfür ist ein Gerät notwendig, dessen Bootloader entsperrt wurde und auf dem der alternative Recovery-Modus "ClockworkMod Recovery" installiert wurde. Außerdem muss auf dem PC von dem aus die Installation durchgeführt werden soll, das Tool adb installiert sein. Die hierfür notwendigen Schritte wurden in diesem Blog bereits im Rahmen dieses Artikels beschrieben.

Zunächst muss die zu installierende Version des CustomROMs von der offiziellen Download-Seite heruntergeladen werden. Die CyanogenMod-Versionen, die für die Installation auf einem Galaxy Nexus vorgesehen sind, tragen dabei den Namen "maguro". Man hat hierbei die Wahl zwischen sogenannten Nightly-Builds, die ihrem Namen entsprechend täglich aktualisiert werden und stets dem aktuellen Entwicklungsstand entsprechen, oder den sogenannten Release Candidates, die in größeren Zeitabständen veröffentlicht werden und dementsprechend einen stabileren Entwicklungsstand garantieren. Die Nightly-Builds sind unter dieser Adresse verfügbar, während die Release Candidates unter dieser Adresse heruntergeladen werden können.

Die Download-Seite für die RC-Versionen von CyanogenMod "magura" (Klicken zum Vergrößern)

Außerdem sollten auch die Google-Apps heruntergeladen werden, die üblicherweise auf einem Android-Smartphone vorinstalliert sind. Aus lizenzrechtlichen Gründen sind diese nicht in dem Cyanogenmod-Download enthalten und müssen separat von der Seite http://goo.im/gapps bezogen werden. Zum Zeitpunkt der Verfassung dieses Artikels (16. Juni 2013) war die aktuelle Version der Apps unter diesem Direktlink verfügbar.

Nach dem Herunterladen der Dateien sind folgende Schritte notwendig um die jeweilige CyanogenMod-Version inklusive der Google-Apps auf dem Smartphone zu installieren. Dabei ist jedoch zu beachten, dass alle Daten, die auf dem Gerät gespeichert sind, verloren gehen!
  1. Zunächst muss das Galaxy Nexus durch gleichzeitiges Halten der beiden Lautstärke- und der Power-Taste in den sogenannten Bootloader-Modus neugestartet werden.
  2. Über die Lautstärke-Tasten navigiert man nun zu der Option "Recovery mode", welche über Drücken der Power-Taste ausgewählt werden kann.
  3. Es sollte das Hauptmenü von ClockworkMod Recovery sichtbar werden, das wie bereits ewähnt auf dem Gerät installiert sein muss. Über die Lautstärke-Tasten navigiert man zu dem Eintrag "wipe data/factory reset" und bestätigt die Auswahl über die Power-Taste. Die erscheinende Sicherheitsabfrage bestätigt man ebenfalls auf diese Weise mit "Yes". Dadurch werden alle Daten auf dem Gerät gelöscht.
  4. Das Gerät muss nun über ein MicroUSB-Kabel mit dem PC verbunden werden. Über den folgenden Befehl kann überprüft werden, ob das die Verbindung korrekt hergestellt werden konnte. In diesem Fall sollte die Seriennummer des angeschlossenen Smartphones ausgegeben werden.
     adb devices  
    
  5. Nun müssen die zuvor heruntergeladenen Dateien auf das Smartphone kopiert werden. Dies geschieht am einfachsten über die folgenden beiden Konsolenbefehle aus dem jeweiligen Verzeichnis heraus. Die beiden Dateinamen müssen hierfür natürlich möglicherweise angepasst werden.
     adb push cm-10.1.0-RC5-maguro.zip /data/media  
     adb push gapps-jb-20130301-signed.zip /data/media  
    
  6. Damit die kopierten Dateien für die Auswahl im Recovery-Modus sichtbar werden, muss dieser neu gestartet werden. Dies ist über folgenden Befehl möglich.
     adb reboot recovery  
    
  7. Auf dem Smartphone, bzw. in dem Menü von ClockworkMod Recovery muss nun die Option "install zip from sdcard" und anschließend "choose zip from sdcard" gewählt werden. Das zip-Archiv, das die zu installierende CyanogenMod-Version enthält sollte auf diese Weise aus dem Verzeichnisbaum ausgewählt werden können. Es sollte sich dabei im Wurzelverzeichnis befinden. Nachdem die Auswahl mit "Yes" bestätigt wurde, wird das CustomROM auf das Gerät geflasht. Dabei kann es in manchen Fällen zu einem Fehler kommen, der "assert failed" lautet. In einem solchen Fall muss der am Ende dieses Artikels beschriebene Workaround angewendet werden um anschließend die Installation erneut durchzuführen.
  8. Analog zum vorherigen Schritt muss nun auch das zip-Archiv, das die Google-Apps enthält zur Installation ausgewählt werden.
  9. Abschließend kann im Hauptmenü von ClockworkMod Recovery die Option zum Neustart des Geräts gewählt werden, woraufhin die frisch installierte Android-Version gebootet wird.

Workaround bei Fehlermeldung "assert failed"


Bei der Installation der Cyanogenmod-Version kann es zu einem Fehler kommen, der etwa wie folgt lautet und zu einem Abbruch der Installation führt.

assert failed: getprop("ro.product.device") == "manduro" || getprop("ro.build.product")=="manduro" 

In einem solchen Fall muss eine Datei innerhalb des zip-Archivs, das zur Installation genutzt wird, modifiziert werden. Die folgenden Schritte zeigen wie hierfür vorgegangen werden muss:
  1. Zunächst muss das betroffene Archiv mit einer dafür geeigneten Anwendung, wie z.B. WinRAR unter Windows oder FileRoller oder ARK unter Linux, geöffnet werden ohne die den Inhalt zu entpacken.
  2. Die Datei /META-INF/com/google/android/updater-script muss nun mit einem Texteditor geöffnet werden.
  3. Die erste Zeile der Datei, bzw. der Text bis zu dem ersten Semikolon muss gelöscht werden. Es ist wichtig, dass hierbei auch das Semikolon entfernt wird. Anschließend muss die Datei gespeichert und das Archiv dadurch aktualisiert werden.
Das auf diese Weise modifizierte zip-Archiv muss anschließend wie bereits oben beschrieben auf das Smartphone kopiert werden, wo es über ClockworkMod Recovery installiert werden kann.

Keine Kommentare:

Kommentar veröffentlichen