Das HTC Explorer, auch bekannt unter dem Namen HTC Pico, kostet nur sehr wenig, hat passable Prozessor- und Grafikleistung, aber leider nur 150 MB Speicher fĂŒr Anwendungen, was die Freude schnell erlahmen lĂ€sst. GlĂŒcklicherweise gibt es Abhilfe. Mein erster Versuch war mit Link2SD, dies kann viele Teile von Anwendungen auf eine zweite Partititon auf der SD-Karte verschieben. Allerdings benötigt man root Zugriff, was aber beim HTC Explorer kein Problem darstellt. Ich habe es nur gerootet, das System wurde nicht ausgetauscht. Aus diesem Grund konnte die zweite Partition nicht im empfohlenen EXT2 Dateisystem genutzt werden, da das Explorer nur VFAT unterstĂŒtzt, was aber auch anstandslos funktioniert.
Wie gesagt, Link2SD verschiebt vieles, aber nicht alles. Die Facebook-App gehört zu den Anwendungen, die nach einiger Zeit doch wieder die 150 MB Grenze erreichen lÀsst.
Der nĂ€chste Versuch war mit Mount2sd. Dies lies sich aus dem Playstore installieren, lief aber nicht, weil das System keine init.d UnterstĂŒtzung hat. Jetzt wurde es Zeit, eine Backup-Lösung einzurichten. Diese konnte aber relativ leicht wie hier beschrieben eingerichtet werden, die Installation lief zwar nicht sauber durch, konnte aber relativ leicht von Hand per adb shell nachvollzogen werden. Leider lief es nicht, weil die Busybox-Instalation des Explorer keine run-scripts UnterstĂŒtzung hat. Also installiert man eine andere Busybox Version darĂŒber (Augen zu und durch), aber mittlerweile war klar, dass Mount2SD auf jeden Fall EXT2-Dateisystem-UnterstĂŒtzung haben möchte. Aber hier war auch schnell eine Lösung gefunden, einfach einen anderen Kernel wie hier beschrieben installiert, das wars. Wohlgemerkt, es ist immer noch das gleiche Standardsystem, es ist nur einiges ausgetauscht. Jetzt kann man endlich Mount2SD installieren, es lĂ€uft, aber im Safe-Mode. Das hindert einen daran, viel zu verschieben. Neue Sicherung erstellt, und mutig Safe-Mode abgeschaltet, jetzt geht auch /data/data und /data/dalvic-cache, von den 150MB sind nur noch ca. 17 MB belegt. Der Neustart ist zwar wackelig, der Behelf fĂŒr den abgeschalteten Safe-Mode ist wohl wirklich ein Hack, es wirkte zuerst so, als ginge es, nach einem Tag war aber klar, dass es sowohl instabile als auch langsam ist.
ZurĂŒck auf Los. Warum eigentlich ist das ganze so schwierig? Warum kann ich nicht einfach die Startskripte so Ă€ndern, dass beim Einschalten die Partition auf der SD-Karte gemounted wird. Einige Seiten spĂ€ter verstand ich das Problem. Beim Einschalten wird zuerst ein Linux mit einer initrd Umgebung gestartet, diese steckt tief verborgen in der Datei, die beim Einspielen eines neuen Betriebssystems vom Telefon geladen wird. Nachdem bereits alle Hoffnung fahren gelassen war, installierte ich zuerst ein sauberes Cyanogenmod was soweit auch schon mal ganz gut aussah, wenn auch die Platzprobleme die gleichen bleiben. Nun packte ich als nĂ€chstes alles aus, Ă€nderte das Startskript, packte alles wieder ein und versuchte diese Datei zu installieren, was leider nicht so einfach funktionierte. Es finden sich extrem viele Anleitungen zum Bearbeiten der initrd von Android im Netz, leider versteht man meist nicht, was dort passiert, vermutlich wusste es der jeweilige Autor auch nicht. Hier jetzt meine Schritte unter Debian Linux:
sudo apt-get install abootimg
Oder jede andere Art, dies Paket zu installieren. Dies Programm funktioniert, im Gegensatz zu allen anderen Programmen im Netz, auĂerdem kommt es aus verlĂ€sslichen Quellen und man bekommt den Quellcode. Dann lĂ€dt man das richtige Cyanogenmod ROM herunter und es geht weiter.
mkdir ROM
cd ROM
unzip ../cm-10.2-20131018-UNOFFICIAL-pico.zip
mkdir ../BOOT
cd ../BOOT
abootimg -x ../ROM/boot.img
mkdir ../INITRD
cd ../INITRD
gzip -d < initrd.img | cpio -i
vi init.rc
Dort Ă€ndert man wie auf XDA-Developers von ph03n!x beschrieben dieses Start-Skript ab. FĂŒr das Pico mĂŒssen dann noch viele (50?) Kommentarzeilen, also die Zeilen mit # am Anfang, gelöscht werden, da sonst die initrd zu groĂ wird! Danach wird eingepackt:
find . | cpio -o -H newc | gzip > ../BOOT/boot.img-ramdisk.gz
cd ../BOOT
abootimg -u boot.img -r boot.img-ramdisk.gz
fastboot flash boot boot.img
Wobei letzteres Programm natĂŒrlich nur geht, wenn das Telefon im fastboot Modus ist (ausschalten, bei gedrĂŒckter „leiser“ Taste einschalten, mit „lauter“/“leiser“ zu fastboot navigieren, mit Ausschaltknopf auswĂ€hlen) und das adb sdk installiert ist.
Android SDK
abootimg man page
boot.img mit fastboot installieren
Fastboot Intro
init-rc Komandos