Start Magazin Xperia-Play-Hacking Teil 1: Root- und Custom-Recovery

Xperia-Play-Hacking Teil 1: Root- und Custom-Recovery

© Sony Ericsson

Das Xperia Play gehört zu den Handys, aufgrund derer Android einen schlechten Ruf bezüglich Updates hat. Erst sollte ein Android 4.0 kommen, dann hörte man lange nichts, letztendlich wurde das Update abgekündigt. Egal: Wir rooten das Xperia Play und schauen uns nach Custom-ROMs um.

Beim Xperia Play hat sich Sony – oder eher damals noch Sony Ericsson – bezüglich der Updates nicht gerade mit Ruhm bekleckert. Ein Update auf Android "Ice Cream Sandwich" 4.0 wurde anfangs zugesagt, der Plan aber dann verworfen. Interne Tests hätten gezeigt [1], dass ICS nicht gut auf dem Xperia Play laufen würde. Damit blieb das Xperia Play bei Android 2.3.4 stehen, obwohl die praktisch baugleichen Xperia Arc und Neo in den Genuss von Android 4.0 gekommen sind.

Nichtsdestotrotz bemüht sich die Android-Community weiterhin um die Pflege des Xperia Play. Da die auf Android 4.0 basierende Testfirmware an die Öffentlichkeit gelangt ist, gibt es eine ganze Reihe von ICS-ROMs, die sehr gut auf unserem Testgerät arbeiteten. Selbst Jelly-Bean-ROMs lassen sich finden. Der Weg dahin ist jedoch bei diesem Handy steiniger als üblich. Wählt man aber die richtige Kombination aus Firmware, Kernel und ROM, ist das Handy in etwa einer halben Stunde wieder einsatzbereit.

Bootloader entsperren

Damit Sie im Verlauf dieses Beitrags ein Custom-ROM installieren können, sollten Sie in einem ersten Schritt den Bootloader des Handys entsperren. Sony macht Ihnen das nicht schwer, allerdings müssen Sie Ihr Gerät mit IMEI und einer gültigen E-Mail-Adresse in Sonys Developer World [2] registrieren. Die IMEI-Nummer Ihres Handys bekommen Sie über die Telefon-App. Wählen Sie den Code "*#06#", spuckt das System die gewünschte Nummer aus. Das Webformular beklagt sich eventuell über eine zu lange IMEI, übergehen Sie in diesem Fall einfach die letzte Ziffer.

Abbildung 1: Mit der IMEI können Sie sich einen Freischaltcode für den Bootloader zukommen lassen.
Abbildung 1: Mit der IMEI können Sie sich einen Freischaltcode für den Bootloader zukommen lassen.

Es lässt sich jedoch nicht jedes Xperia-Play-Handy freischalten. Zur Kontrolle rufen Sie daher erneut die Telefon-App auf und geben den Code "*#*#7378423#*#*" ein. In dem sich daraufhin öffnenden Dialog tippen Sie sich zu Service info | Configuration durch. Ist unter dem Punkt "Rooting Status" aufgeführt, dass Sie den Bootloader aufsperren dürfen ("Bootloader unlock allowed"), können Sie mit der Installation Ihres Wunsch-ROMs fortfahren.

Abbildung 2: Den Freischaltcode bekommen Sie über die Sony-Webseite per E-Mail zugesendet.
Abbildung 2: Den Freischaltcode bekommen Sie über die Sony-Webseite per E-Mail zugesendet.

Abbildung 3: "Bootloader unlock allowed: Yes" heißt, dass Sie den Bootloader aufsperren dürfen.
Abbildung 3: "Bootloader unlock allowed: Yes" heißt, dass Sie den Bootloader aufsperren dürfen.

Zum Aufsperren benötigen Sie nun Fastboot aus dem Android-SDK. Damit Sie die MByte-große Entwicklungsumgebung nicht installieren müssen, können Sie – wie schon öfter in der PowerUser-Rubrik genutzt – auf Minimal ADB and Fastboot [3] zurückgreifen. Mit "adb" und "fastboot" enthält das kleine Paket alles, was Sie zum Rooten und Flashen im Normalfall benötigen. Als Linux-User holen Sie die zwei Programme am besten über die Paketverwaltung Ihrer Distribution.

Achtung!

Durch das Entsperren des Bootloaders verlieren Sie sämtliche auf dem Handy gespeicherten Daten. Sichern Sie daher mit geeigneten Apps Ihre Kontakte, SMS und Ruflisten, so Sie Ihre Daten nicht in der Google Cloud speichern lassen. Zudem sollten Sie zur Sicherheit auch die MicroSD-Speicherkarte aus dem Handy nehmen.

Der Freischaltcode sollte in der Zwischenzeit per E-Mail bei Ihnen eingetroffen sein. Jetzt verbinden Sie das USB-Kabel mit Ihrem PC, schalten Ihr Xperia Play aus, stecken das Kabel aber noch nicht beim Handy ein. Drücken Sie nun die Suchtaste mit der Lupe auf dem Handy, und stecken Sie gleichzeitig das USB-Kabel ein. Das Xperia bootet daraufhin in den Fastboot-Modus. Einzig die dauerhaft blau leuchtende LED verrät Ihnen, dass dies geklappt hat, das Display bleibt schwarz.

Sollte der Windows-Gerätemanager nun ein unbekanntes Gerät "S1 Boot Fastboot" melden, fehlt Ihnen noch der entsprechende Treiber. Sie finden ihn im ADB and Fastboot Package [4], das neben ADB und Fastboot auch die nötigen Treiber für 32- und 64-Bit-Windows mitbringt. Zur Installation der Treiber klicken Sie im Gerätemanager mit der rechten Maustaste auf das noch unbekannte Gerät und tippen auf Treiber aktualisieren. Anschließend sagen Sie Windows, dass Sie einen eigenen Treiber installieren möchten und wählen die "android_winusb.inf" aus den entpackten Dateien des Archivs aus.

Tipp

Unter Linux lässt sich das Handy ebenfalls entsperren. Hier benötigen Sie nicht einmal besondere Treiber. Starten Sie Ihr Xperia Play einfach in den Fastboot-Modus und rufen fastboot mit Rootrechten, also etwa sudo fastboot devices, auf. Das Handy sollte sich dann entsprechend der Anleitung bei Ihnen melden.

Ist der Treiber installiert und Ihr Handy im Fastboot-Modus am PC angeschlossen, kontrollieren Sie mit fastboot devices, ob Ihr Windows das Handy erkennt und das Gerät auch korrekt im Fastboot-Modus gestartet wurde. Ist alles OK, gibt das Gerät seine ID im Stil von "CB5A1D9CYC&ZLP fastboot" aus. Anschließend sperren Sie den Bootloader des Handys auf, indem Sie "KEY" mit dem von Sony per Mail zugesandten individuellen Schlüssel ersetzen. Und nochmals: Durch diese Aktion löschen Sie sämtliche Daten auf Ihrem Handy!

$ fastboot -i 0x0fce oem unlock 0xKEY

Nach einem Neustart des Handys – dazu stecken Sie das Handy vom USB-Kabel ab und entnehmen kurz die Batterie – kontrollieren Sie den Erfolg der Aktion erneut über den Telefoncode "*#*#7378423#*#*". Diesmal sollte unter den Menüpunkten Service info | Configuration der "Rooting status" als "Bootloader unlocked: Yes" aufgeführt werden.

Passende Ausgangsfirmware

Alleine mit einem entsperrten Bootloader ist es nicht getan. Als Basis benötigen Sie mit der Version 4.0.2.A.0.79 der Originalfirmware von Sony eine ganz besondere Installation der Android-Software. Die Versionsnummer Ihrer Handyfirmware erhalten Sie über Einstellungen | Über das Telefon und die "Build-Nummer" ganz am Ende der Liste. Sollte hier eine andere Version aufgeführt werden, müssen Sie nun erst einmal die passende Originalfirmware flashen.

Abbildung 4: Die Sony-Firmware in der Version 4.0.2.A.0.79 eignet sich ideal als Basis für Hacks.
Abbildung 4: Die Sony-Firmware in der Version 4.0.2.A.0.79 eignet sich ideal als Basis für Hacks.

Die Firmware erhalten Sie in Form der Datei R800_4.0.2.A.0.79.ftf über die Sammelseite [5] zum Xperia Play im Forum von XDA Developers oder direkt unter diesem Link [6] über einen Filehoster. Zum Flashen benötigen Sie das Flashtool [7] auf Ihrem Rechner. Das Programm gibt es für Windows, Linux und den Mac.

Abbildung 5: Mit dem Flashtool spielen Sie Originalfirmware-Images von Sony auf Ihr Xperia Play.
Abbildung 5: Mit dem Flashtool spielen Sie Originalfirmware-Images von Sony auf Ihr Xperia Play.

In der Windows-Version des Flashtools tippen Sie nach dem Start auf das Blitz-Icon und wählen im daraufhin geöffneten Dialog als Bootmode den Punkt Flashmode aus. Danach suchen Sie als Source Folder den Ordner mit der zuvor heruntergeladenen R800_4.0.2.A.0.79.ftf aus und tippen auf Flash. Die restlichen Checkboxen können Sie unverändert lassen. Auch hier müssen wir Sie wieder warnen: Bei der Aktion gehen sämtliche Daten auf Ihrem Handy verloren. Sorgen Sie bitte im Vorfeld für entsprechende Sicherungen!

Tipp

Sollte im Laufe der Anleitung Ihr Xperia Play nicht mehr korrekt booten, können Sie es eigentlich immer mit dem Flashtool retten. Das Flashtool spielt die unmodifizierte Firmware von Sony ein und überschreibt alle von Ihnen am System vorgenommenen Änderungen. Damit bewahren Sie Ihr "gebricktes" Xperia Play vor dem Schicksal eines nutzlosen Türstoppers!

Das Flashtool wartet nun, dass Sie das Handy an den PC anschließen. Ein kleiner Assistent sagt Ihnen, was zu tun ist: Stecken Sie Ihr Xperia Play vom PC ab, und schalten Sie es aus. Drücken und halten Sie danach den "Zurück-Button" am Handy, und schließen Sie das USB-Kabel wieder an Handy und PC an. Das Flashtool sollte nun das Handy erkennen und automatisch mit dem Flashen der Firmware beginnen. Ist der Vorgang abgeschlossen, stecken Sie Ihr Handy wieder ab und starten es neu.

Custom-Kernel und -Recovery

Mit dieser Originalfirmware ist Ihr Xperia Play nun auf dem letzten Stand – doch die Firmware ist weder gerootet, noch lässt sich in diesem Zustand ein Custom-ROM einspielen. Dafür brauchen Sie noch ein Custom-Recovery wie ClockworkMod oder TWRP. Dieses flashen Sie beim Xperia Play immer gleich zusammen mit einem Custom-Kernel auf das Handy.

Für das später genutzte ROM müssen Ausgangsfirmware und Custom-Kernel immer zusammenpassen, daher empfehlen wir Ihnen fürs erste die Installation des Kernels LuPuS STOCK GB/ICS v7 [8]. Er bringt neben dem ClockworkMod-Recovery auch gleich TWRP mit, bietet viele Features, das Handy zu tweaken und ist auch gleich gerootet. Er arbeitet mit der Originalfirmware wie auch mit Custom-ROMs auf Basis von Andorid "Ice Cream Sandwich" 4.0.

Abbildung 6: Den LuPuS-Kernel flashen Sie via Fastboot aus der Eingabeaufforderung oder dem Terminal.
Abbildung 6: Den LuPuS-Kernel flashen Sie via Fastboot aus der Eingabeaufforderung oder dem Terminal.

Zum Flashen laden Sie sich die LuPuS_zeus_Stock-gB+iCsv7-full.img herunter und speichern die Datei auf Ihrer Festplatte. Danach stecken Sie erneut das Handy vom Kabel und dem PC ab und schalten es aus. Drücken Sie nun wieder auf die Suchtaste mit der Lupe, und stecken Sie das Kabel am Handy ein. So bootet es abermals in den Fastboot-Modus, die dauerhaft blau leuchtende LED zeigt den Betriebsmodus an.

$ fastboot flash boot LuPuS_zeus_Stock-gB+iCsv7-full.img

Mit dem oben stehenden Befehl flashen Sie jetzt den Custom-Kernel mitsamt Custom-Recovery auf das Handy. Der Vorgang dauert nur wenige Augenblicke, am Ende sollte sich Fastboot mit "Flash operation complete" melden. Um das Handy nun neu zu booten, stecken Sie wie schon gewohnt das Kabel ab und entnehmen kurz die Batterie. Auf dem Display erscheint nun das LuPuS-Logo, bevor das eigentliche System geladen wird.

Xperia Play Rooten

Sollten Sie mit der letzten offiziellen Firmware des Handys auf Basis von Android 2.3.4 zufrieden sein, können Sie das Handy nun wieder neu einrichten, Ihren Google-Account eintragen und die Ihnen wichtigsten Apps installieren. Ein Custom-ROM ist nicht zwingend nötig, um Apps Rootrechte zu geben und das Handy zu tweaken. Wünschen Sie sich jedoch ein Custom-ROM mit zum Beispiel Android 4.0, dann springen Sie gleich zum nächsten Abschnitt.

Abbildung 7: Das Boot-Logo zeigt, dass der LuPuS-Kernel beim Starten des Handys geladen wird.
Abbildung 7: Das Boot-Logo zeigt, dass der LuPuS-Kernel beim Starten des Handys geladen wird.

Der LuPuS-Kernel ist bereits gerootet, allerdings benötigt Ihr Stock-Android nun eine Root-App. Diese lässt sich per Recovery-Mode ins System flashen, wir empfehlen Ihnen Superuser [9] von Koushik Dutta, einem der Hauptentwickler der CyanogenMod-Firmware. Über den Play Store lässt sich die App jedoch nicht im System verankern, Sie müssen das Programm als superuser.zip herunterladen [10], auf eine SD-Speicherkarte kopieren und dann das Handy in den Recovery-Mode booten (siehe Kasten "Xperia Play Recovery").

Xperia Play Recovery

Das Xperia Play in den Recovery-Modus zu booten, ist ein wenig ungewöhnlich. Schalten Sie das Handy in einem erstem Schritt komplett ab. Drücken Sie nun gleichzeitig auf die An-/Aus-Taste und auf Lautstärke leiser (die Lautstärketaste nach unten drücken). Warten Sie nun einen Moment, bis das Handy kurz vibriert, und lassen Sie dann die An-/Aus-Taste los, die Leisertaste halten Sie jedoch gedrückt. Auf dem Display sollten Sie das Logo des LuPuS-Kernel sehen.

Nun warten Sie eine Weile, bis das Handy zwei Mal kurz vibriert. Nehmen Sie dann den Finger von der Lautstärketaste, und drücken Sie kurz auf die Zurücktaste (ganz links auf dem Handy). Das Xperia Play vibriert noch einmal für einen kurzen Moment und bootet dann in den Recovery-Modus. Alternativ können Sie anstatt auf leiser auch auf lauter drücken. In diesem Fall lädt das System nicht das ClockworkMod-Recovery, sondern das touch-fähige TWRP.

Im ClockworkMod-Recovery navigieren Sie über die Lautstärkewippe in den Dialogen hoch und runter. Per Hometaste aktivieren Sie eine Funktion, über die Zurücktaste gelangen Sie wie gewohnt immer zum letzten Menüpunkt zurück. Um das Handy neu zu starten, wählen Sie aus dem Basismenü den Punkt Reboot System Now aus.

Im ClockworkMod-Recovery installieren Sie die Root-App nun über den Punkt Install ZIP | Choose zip from SD card. Dort suchen Sie sich die superuser.zip aus dem Inhalt der Speicherkarte aus und spielen die Datei anschließend mit einem Klick auf die Hometaste auf Ihrem Handy ein. Danach starten Sie Ihr Xperia Play neu.

Xperia Play tweaken

Im laufenden System sollten Sie nun mit Superuser eine neue App finden. Root-Apps werden in Zukunft ohne Probleme auf dem Handy starten und über Superuser den Zugang zu Systemfunktionen erhalten. An der Originalfirmware haben Sie jedoch auf diesem Weg noch nichts verändert. Dies lässt sich über das im LuPus-Kernel integrierte Tweak-Menü machen.

Dieses Menü erreichen Sie nicht über eine grafische App, Sie müssen das textbasierte Menü in einem Terminal aufrufen. Dazu können Sie etwa auf das kostenlose Android Terminal [11] zurückgreifen. Nach der Installation der Terminal-App aus dem Play Store rufen Sie die App auf, per su holen Sie sich Rootrechte, via lupus laden Sie das Tweak-Menü des Kernels.

Abbildung 8: Über das LuPus-Kernel-Menü lässt sich das Xperia Play übertakten und weiter tweaken.
Abbildung 8: Über das LuPus-Kernel-Menü lässt sich das Xperia Play übertakten und weiter tweaken.

Besonders interessant ist hier das Übertakten der CPU. Dafür wählen Sie mit der "6" das Performance Menu und gehen über die "1" zu Set CPU Frequencies. Die maximale Taktrate lässt sich bis auf 1,6 GHz (der Standard sind 1.017.600 Hz, also etwa 1 GHz) steigern, die minimale bis auf 134 MHz (der Standard liegt bei 249.600, also etwa 250 MHz).

Steigern Sie die maximale Taktrate nur langsam, und probieren Sie, welchen Takt Ihr Handy auch unter Last verträgt. Die minimale Taktrate beeinflusst die Laufzeit des Geräts im Standby. Zu stark absenken sollten Sie diesen Wert jedoch nicht, da es so länger dauert, bis die CPU sich wieder komplett schlafen legen kann – belassen Sie diesen Wert am besten bei 250 MHz. Lassen Sie die von Ihnen gewählten Taktraten nur dann automatisch beim Booten laden, wenn sich diese bei Ihnen bewährt haben.

Ausblick

Mit dem LuPuS-Kernel und der richtigen Basisfirmware haben Sie nun das Fundament für weitere Tweaks gelegt. Das Xperia Play lässt sich jetzt per Kernel-Menü übertakten, und auch Root-Apps laufen auf Ihrem gemoddeten Xperia Play ohne Probleme. Doch damit soll noch nicht das Ende der Fahnenstange erreicht sein.

Für das Xperia Play gibt es eine Reihe von Custom-ROMs, dank derer Sie Ihr Play-Handy aktualisieren können. Diese ROMs bringen nicht nur eine neuere Android-Version mit mehr Features auf das Gerät, sondern sie verbessern ganz nebenbei auch die Performance. Im zweiten Teil dieser Reihe gehen wir in Android User 01/2014 im Detail auf ein Android 4.0- (ICS) und ein 4.1-ROM (JB) ein.


Kommentiere den Artikel

Please enter your comment!
Please enter your name here