Posts mit dem Label CyanogenMod werden angezeigt. Alle Posts anzeigen
Posts mit dem Label CyanogenMod werden angezeigt. Alle Posts anzeigen

10. September 2013

Nexus 4: CyanogenMod flashen

In diesem Artikel wurde bereits beschrieben, wie ein Nexus 4-Smartphone gerootet werden kann. In diesem Artikel sollen darüber hinaus die weiteren Schritte beschrieben werden, die nötig sind um auf einem solchen gerooteten Gerät das CustomROM "CyanogenMod" zu installieren, das unter Anderem erweiterte Einstellungsmöglichkeiten gegenüber dem Stock-Android bietet. Voraussetzung für die in diesem Artikel beschriebenen Schritte ist das vorherige Rooten des Geräts nach der bereits erwähnten Anleitung und dass das Kommandozeilentool adb auf dem PC installiert ist, von dem das Flashen des CustomROMs durchgeführt werden soll. In diesem Artikel wird davon ausgegangen, das es sich hierbei um ein Linux-System handelt, das Vorgehen unter Windows oder MacOS müsste jedoch analog erfolgen.

Die folgenden Schritte sind nötig um CyanogenMod auf ein bereits gerooteten Nexus 4 zu flashen:
  1. Zunächst muss das Gerät in den Recovery-Modus versetzt werden. Hierfür müssen die beiden Lautstärke-, sowie die Power-Taste gedrückt werden, bis das Gerät in den Bootloader-Modus neustartet. Über die Lautstärke-Tasten navigiert man Anschließend zu dem Menüpunkt "Recovery mode" und wählt diesen über die Power-Taste aus.
  2. Im Recovery-Modus wählt man auf die selbe Weise den Menüpunkt "install zip from sideload". Das Gerät muss Dabei per USB mit dem PC verbunden sein, von dem das Flashen von CyanogenMod durchgeführt werden soll. Die Konnektivität der Verbindung lässt sich anschließend über den folgenden Befehl überprüfen, wobei als Ausgabe eine Seriennummer und der Begriff "sideload" ausgegeben werden sollte.
     $ adb devices  
    
  3. Anschließend muss eine passende CyanogenMod-Version heruntergeladen und installiert werden. Unter dieser Downloadseite werden alle Releases von CyanogenMod für das Nexus 4 zum Download angeboten. Die Releases auf dieser Seite werden nach verschiedenen Release-Zyklen kategorisiert. Die wichtigsten sind die Nightly-Builds, die täglich aktualisiert werden und den aktuellen Entwicklungsstand repräsentieren, wobei die Stabilität nicht gewährleistet werden kann, sowie die Stable-Releases, die in größeren Zeitabständen veröffentlicht werden und jeweils einen stabilen Entwicklungsstand repräsentieren. Nachdem eine CyanogenMod-Version heruntergeladen wurde, kann anschließend über den folgenden Konsolenbefehl installiert werden, insofern das Gerät per USB mit dem PC verbunden ist und sich im Sideload-Modus befindet. Der übergebene Dateiname muss hierbei je nach Version angepasst werden. Außerdem sollte beachtet werden, dass bei diesem Vorgang alle Nutzerdaten auf dem Gerät verloren gehen!
     $ adb sideload cm-10.2-20130909-NIGHTLY-mako.zip  
    
  4. Anschließend müssen außerdem, falls erwünscht, die Google-Apps separat installiert werden, da diese aus rechtlichen Gründen nicht in CyanogenMod enthalten sind. Diese sogenannten Gapps lassen sich unter dieser Downloadseite herunterladen, wobei die jeweilige Version auf die Version des installierten CustomROMs angepasst sein muss. Nach Abschluss des Downloads lassen sich die Google-Apps über den Sideload-Modus analog zu dem CustomROM selbst über folgenden Befehl installieren, wobei der übergebene Dateiname wiederum an die Version angepasst werden muss.
     $ adb sideload gapps-jb-20130813-signed.zip  
    
Nach Abschluss der oben genannten Schritte sollte die installierte CyanogenMod-Version nach einem Neustart des Nexus 4 gestartet werden. Falls der Bootvorgang jedoch in dem, auf dem unten dargestellten, Bootscreen hängen bleibt, sollte dies durch einen Factory-Reset, bzw. durch Leeren des Dalvik-Caches zu beheben sein. Ein Factory-Reset kann durch die Option "wipe data/factory reset" im Menü von ClockwordMod Recovery durchgeführt werden, die Option zum Leeren des Dalvik-Caches ist unter dem Menüpunkt "advanced" → "wipe dalvik cache" zu finden.

Der Bootscreen von CyanogenMod (Bildquelle: zdnet.com, Klicken zum Vergrößern)

Weiterführende Links:

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.

3. Juni 2013

Nexus 10: CyanogenMod auf verschlüsseltem Gerät updaten

Das CustomROM "CyanogenMod" bietet seit Version 10 die Möglichkeit, vorhandene Updates automatisch herunterzuladen, so dass diese anschließend installiert werden können. Unter dem Nexus 10 oder ähnlichen Geräten, die über keine externe SD-Karte verfügen, kann das Einspielen der Updates  jedoch zu Problemen führen, falls das Gerät mittels der entsprechenden Android-Funktion verschlüsselt wurde. Im Folgenden soll diese Problematik erläutert und eine Möglichkeit zur Abhilfe gezeigt werden.

Die Update-Überprüfung von CyanogenMod 10 in den Android-Systemeinstellungen (Klicken zum Vergrößern)

Wenn ein Update zur Verfügung steht, wird das entsprechende zip-Archiv, dass die dafür notwendigen Dateien enthält, durch den Update-Mechanismus heruntergeladen und unter dem Verzeichnis /sdcard/cmupdater/ gespeichert. Wenn das Gerät über keine externe SD-Karte verfügt, handelt es sich bei diesem Verzeichnis lediglich um eine virtuelle Partition. Wenn das Update durch den Benutzer zur Installation ausgewählt wurde, wird das Gerät neu gestartet und in den Recovery-Modus (in diesem Post wird davon ausgegangen, das es sich hierbei um "ClockworkMod Recovery" handelt) gebootet um die Dateien des entsprechenden Archivs zu entpacken und zu installieren. Falls das Dateisystem des Geräts jedoch verschlüsselt wurde, steht die virtuelle SD-Karte, die das Archiv enthält, nicht zur Verfügung, da das zugehörige Verzeichnis auf dem verschlüsselten Dateisystem liegt und zu diesem Zeitpunkt keine Möglichkeit zu dessen Entschlüsselung besteht. Das Updaten des Geräts scheitert demzufolge, da die notwendige Datei nicht gefunden werden kann.

Die elegante Möglichkeit, die CyanogenMod-Installation von dem jeweiligen Gerät aus herunterzuladen und zu installieren, ist damit ausgeschlossen, falls das Gerät verschlüsselt werden soll. Das Einspielen von Updates muss dann über eine USB-Verbindung manuell gesteuert werden, wozu folgende Schritt nötig sind:
  1. Zunächst muss die zu installierende CyanogenMod-Version auf dem Rechner heruntergeladen werden.
  2. Anschließend muss das Android-Gerät durch Halten der Power-, sowie der beiden Lautstärke-Tasten in den Bootloader-Modus neu gestartet werden.
  3. Über die Lautstärke-Tasten navigiert man anschließend zum Menüpunkt "RECOVERY MODE", den man durch Drücken der Power-Taste auswählt.
  4. Der Recovery-Modus wird anschließend gestartet. In dessen Hauptmenü wählt man dann die Option "install zip from sideload".
  5. Das Gerät muss nun per Micro-USB mit dem Rechner verbunden werden.
  6. Über die Kommandozeile kann anschließend aus dem Verzeichnis, das das heruntergeladene zip-Archiv enthält an das Android-Gerät übertragen werden. Hierzu genügt folgender Befehl, wobei der Name der zip-Datei natürlich angepasst werden muss:
     adb sideload cm-10.1-20130603-NIGHTLY-manta.zip  
Das Update sollte darauf hin eingespielt werden und das Gerät kann anschließend neu gestartet werden.

2. Juni 2013

Nexus 10: CyanogenMod flashen

In diesem Post sollen die Schritte erläutert werden, die nötig sind um das Android-CustomROM "CyanogenMod" auf ein "Nexus 10"-Tablet zu flashen, wie die Installation eines solchen alternativen Betriebssystem genannt wird. Voraussetzung hierfür ist ein bereits gerootetes Gerät mit installiertem, alternativen Recovery-Modus. Das Rooten eines Nexus 10 unter Ubuntu wurde in diesem Blog bereits hier behandelt. Für die folgenden Schritte wird angenommen, dass auf dem Gerät der Recovery-Modus "ClockworkMod Recovery" gemäß dieser Anleitung installiert wurde.

Das Tablet "Nexus 10" (Bildquelle: google.de; Klicken zum Vergrößern)

Zunächst müssen die notwendigen Dateien zum Flashen des CustomROMs heruntergeladen werden. Die CyanogenMod-Versionen für das Nexus 10 tragen den Namen "manta". Es können entweder die Nightly-Builds gewählt werden, die stets den aktuellen Entwicklungsstand enthalten und unter der Adresse http://get.cm/?device=manta&type=nightly erhältlich sind, oder eine sogenannte Release Candidate-Version, die unter der Adresse http://download.cyanogenmod.com/?device=maguro&type=RC heruntergeladen werden kann und eine stabilere Version des alternativen ROMs darstellt. Auch weitere Releases, die nach ähnlichen Release-Zyklen veröffentlicht werden sind auf dieser Seite verfügbar. Auf diese soll an dieser Stelle jedoch nicht näher eingegangen werden.

Außerdem werden nach Bedarf die Google-Apps benötigt, die üblicherweise auf dem Nexus 10 installiert sind, aus urheberrechtlichen Gründen jedoch nicht in CyanogenMod enthalten sind. Diese sind unter http://goo.im/gapps/ erhältlich. Zum Zeitpunkt der Verfassung dieses Posts  (02. Juni 2013) war die aktuelle Version der Apps unter diesem Direktlink verfügbar.

Die heruntergeladenen Dateien müssen anschließend auf die virtuelle SD-Karte des Nexus-Geräts kopiert werden (z.B. in den Downloads-Ordner). Die folgenden Schritte führen ermöglichen dann das eigentliche Flashen (Achtung: Dabei gehen alle Daten bis auf diejenigen, die auf der SD-Card, bzw. der virtuellen Systempartition gespeichert sind, verloren!):
  1. Die Power-, sowie beide Lautstärke-Tasten des Geräts gedrückt halten bis in den Bootloader-Modus gestartet wird.
  2. In dem Menü der Bootloader-Modus mit den Lautstärke-Tasten den Menüpunkt "RECOVERY MODE" wählen und durch Drücken der Power-Taste bestätigen.
  3. In dem erscheinenden Menü des Recovery-Modus muss nun der Menüpunkt zum "wipe data/factory reset" gewählt werden.
  4. Anschließend muss im Hauptmenü des Recovery-Modus der Menüpunkt "install zip from sdcard" gewählt werden um das ZIP-Archiv, das die CyanogenMod-Dateien enthält, aus dem Verzeichnisbaum auszuwählen.
  5. Nach der Installation muss analog dazu die Datei, die die Google-Apps enthält, ausgewählt werden.
  6. Zuletzt muss im Hauptmenü die Option zum Reboot des Systems gewählt werden. Die installierte CyanogenMod-Version wird dann anschließend gestartet. Dabei wird der Installations-Assistent zur Einrichtung der Sprache, der Netzwerkverbindung und des Google-Kontos aufgerufen.