Start Magazin Anwendungen und Apps auf die SD-Karte verschieben unter Android 4.x

Anwendungen und Apps auf die SD-Karte verschieben unter Android 4.x

1209
0
Teilen

Bis Android 2.3 war alles so einfach: war im internen Speicher nicht mehr genügend Platz vorhanden, hat man Apps einfach auf die SD-Karte verschoben. Doch was tun, wenn man Android 4.0 einsetzt oder wenn der interne Speicher mit Android 2.3 voll ist?

Die gute Meldung vorweg: in beiden Fällen gibt es Möglichkeiten, das interne Speicher-Limit von Android zu überlisten. Aber dazu braucht man in der Regel Root-Rechte. Zudem ändern sich die Einstellungen und Möglichkeiten je nach Hersteller, Gerät und Android-Version. Eine allgemein gültige Lösung wie unter Android 2.3 gibt es deshalb nicht mehr. Der folgende Artikel beschreibt zunächst relativ ausführlich, was sich mit Android 4.0 am internen Speicher geändert hat und zeigt dann einige Möglichkeiten auf, um für mehr Platz zu sorgen. Die hier beschriebenen Lösung eignet sich auch wunderbar für Android-Geräte mit Android 2.3.

Auf SD-Karte verschieben

Sind Sie hier gelandet, weil Sie einfach Apps auf die SD-Karte verschieben möchten und benutzen Sie ein Gerät mit Android 2.3 und MicroSD-Karte, dann lesen Sie am besten unseren Grundlagenartikel zum Thema Apps auf SD-Karte verschieben aus Android User 01/2011.

MTP statt Massenspeicher

Während man früher ein Android-Smartphone einfach an den Computer anschließen konnte, um die darauf befindlichen Dateien zu betrachten, ist dies seit Android 4.0 nicht mehr ohne weiteres möglich. Google hat die USB-Massenspeicher-Funktion durch das ursprünglich von Microsoft für den Zune-Player entwickelte Media Transfer Protocol ersetzt, sodass aktuell nur MTP und PTP (Picture Transfer Protocol) zur Auswahl stehen, wenn Sie in die Einstellungen schauen. HTC hatte auch unter Android 4.0 noch den Support für USB Massenspeicher. Mit dem Update auf Android 4.1 ist dieser aber auch bei HTC verschwunden.

Spätestens mit Android 4.1 bieten sämtliche Hersteller für den Datentransfer nur noch MTP und PTP an.
Spätestens mit Android 4.1 bieten sämtliche Hersteller für den Datentransfer nur noch MTP und PTP an.

MTP und PTP sind verwandt. Während PTP nur für die Übertragung von Bildern gedacht ist und bei dieser Option deshalb auch nur die Fotos auf dem Smartphone erscheinen, können Sie vie MTP theoretisch auf den kompletten Inhalt des internen Speichers zugreifen. Aber das klappt in den wenigsten Fällen reibungslos und hängt zudem auch vom Support durch das Betriebssystem und von der Implementierung von MTP ab. Unter Windows funktioniert MTP am besten, Linux- und Mac-Nutzer können es nur eingeschränkt benutzen. Für Linux-Systeme gab es jedoch vor Kurzem enorme Verbesserungen, wie dieser Artikel von Christoph Langner zeigt.

Gründe für den Wechsel zu MTP gibt es viele. Die zwei wichtigsten sind das darunterliegende Dateisystem und das Nutzungsszenario: Während Google für den USB-Massenspeicher stets eine FAT-Partition benötigte, damit Windows den entsprechenden Speicher erkannte, arbeitet MTP unabhängig vom Dateisystem. So kann man sich in Mountain View die Lizenzkosten an Microsoft für FAT32 ersparen (MTP selbst lässt sich ohne Lizenzkosten nutzen). Zudem arbeitet MTP transparent. Sie können also auch dann auf dem Handy auf die Dateien zugreifen, wenn es über ein USB-Kabel mit einem PC verbunden ist. Beim USB-Massenspeichermodus war das nicht möglich. Der entsprechende Datenbereich war nach dem Anschluss an einen Rechner dann für das Telefon nicht sichtbar. Die Partition für den Telefonspeicher nannte man /data, der als Massenspeicher nutzbare Bereich war unter /sdcard zu erreichen.

Zwei zentrale Partitionen

Auch unter Android 4.0 gibt es diese Zweiteilung noch. Hier sind die zentralen Partitionen üblicherweise mit dem Linux-Dateisystem Ext4 formatiert. Auf der ehemaligen /data-Partition befindet sich das System (Telefonspeicher, /system), auf der zweiten die Daten (App Speicher oder Interner Speicher genannt, /userdata). Das frühere /sdcard ist nun nur noch ein Verzeichnis innerhalb von /userdata. Besitzt Ihr Smartphone also 8 GByte Speicher, dann sind davon rund 2-3 GByte für das System reserviert, die restlichen 5-6 GByte gehören den Apps und Ihren Daten. Das komplette Layout ist etwas komplizierter, die meisten Geräte besitzen rund 10 Partitionen, aber relevant für die Apps und den benutzbaren Platz sind lediglich /system und /userdata.

Eine mögliche Aufteilung des internen Speichers, hier am Beispiel des ZTE Grand X IN mit 4 GByte internem Speicher.
Eine mögliche Aufteilung des internen Speichers, hier am Beispiel des ZTE Grand X IN mit 4 GByte internem Speicher.
Und so sieht die Speichereinteilung beim Nexus 4 in der 8-GByte-Version aus
Und so sieht die Speichereinteilung beim Nexus 4 in der 8-GByte-Version aus

Von dieser Zweiteilung machen auch Apps regen Gebrauch. Entwickler, die größere Apps bei Google Play einstellen, müssen Ihre Anwendungen aufteilen: In eine ausführbare Datei und ein zusätzliches Datenpaket. Am besten lässt sich das nachvollziehen, wenn Sie ein großes Spiel installieren. Klicken Sie in Google Play auf den Button Installieren, dann landet zunächst die eigentliche App in der Systempartition, danach lädt Google die Spieldateien nach /userdata. Diese Trennung geschieht automatisch.

Haben Sie viele Apps installiert, kann es so auch bei einem recht großen internen Speicher vorkommen, dass nicht mehr genügend Platz vorhanden ist. Denn der Hersteller muss sich beim Aufsetzen des Betriebssystems überlegen, wie viel Platz er dem System einräumt und wie viel den Daten. Ein schlechtes Beispiel wäre ein Smartphone mit 32 GByte Speicher, bei dem die System-Partition (der Telefonspeicher) nur 2 GByte belegt (und davon nur 200 MByte frei). Hier würden Sie schon nach der Installation von drei bis vier größeren Apps die Meldung erhalten, dass der Telefonspeicher voll ist.

Abhilfe schaffen

Würde die gleiche Situation auf Ihrem PC auftreten, dann würden Sie einfach über eine Live-CD oder einen anderen Weg ein Partitionierungstool starten, das C-Laufwerk von Windows vergrößern und die dahinter befindliche Datenpartition verkleinern. Unter Android ist das aber nicht möglich, ohne das komplette System neu aufzusetzen. Entsprechende Anleitungen gibt es für viele Geräte im Netz, wobei die Vorgehensweise bei jedem Telefon/Tablet anders ist. Folgen Sie deshalb nur Anleitungen, die wirklich genau auf Ihr Gerät zugeschnitten sind.

Probleme beim Samsung Galaxy S2

Das System neu aufsetzen müssen demnächst auch die Nutzer eines Samsung Galaxy S II. Hier musste Samsung für das Update auf Android 4.1 genau das Problem lösen, wie man aus /data und /sdcard die neuen Bereiche /system und /userdata schafft. Denn Jelly Bean benötigt noch einmal etwas mehr Platz als Ice Cream Sandwich. Deshalb wird es kein einfaches OTA-Update geben, sondern Sie müssen Android 4.1 über KIES einspielen (wenn es denn endlich verfügbar ist). Dabei macht die Software das oben Beschriebene: Sie sichert die Daten auf dem Handy, verkleinert die interne Datenpartition und vergrößert anschließend den für das System vorgesehene Bereich. So passen trotz größerem Android-System immer noch genügend Apps auf das Smartphone. Ihnen bleibt lediglich etwas weniger interner Speicher für Fotos, Musik und Filme.

Was hat das alles mit der MicroSD-Karte zu tun?

Ohne MicroSD-Karte und ohne eine Custom-Firmware zu installieren (Details dazu in Android User 02/2013) gibt es praktisch keine Möglichkeit, den fest verbauten Flash-Speicher eines Handys neu zu formatieren und so für mehr Telefonspeicher zu sorgen. Doch mit MicroSD-Karte gibt es einen cleveren Ausweg: Sie legen einfach auf der SD-Karte eine zusätzliche Partition in dem von Android benutzten Ext4- oder (empfohlen) Ext2-Dateisystem an und binden diese neue Partition so ins System ein, dass das Android-System darauf Dateien ablegt. Das verlangt etwas Fachwissen und ein gerootetes Android-Handy, ist aber in vielen Fällen die einfachste und auch einzige Lösung, um Handys mit einer zu kleinen Systempartition wie das Galaxy Ace und andere wieder so richtig fit zu machen. Achten Sie darauf, bei der MicroSD-Karte kein Billigprodukt zu wählen, sondern mindestens eine Class10-Karte (besser noch Class25). Dann gibt es auch keine Performance-Probleme und Sie können gleichzeitig auch das RAM-Problem angehen!

Für das Formatieren der MicroSD-Karte gibt es zahlreiche Möglichkeiten. Am einfachsten funktioniert es vermutlich mit einer LiveCD von Ubuntu oder einer anderen Linux-Variante. Achten Sie darauf, die erste Partition auf der MicroSD-Karte mit FAT32 zu formatieren und die zweite mit Ext2. Ext3 und Ext4 sind zwar Weiterentwicklungen dieses Dateisystems, bringen aber auf der MicroSD-Karte keine Vorteile, im Gegenteil: Ext3 und Ext4 brauchen mehr platz und machen den Flash-Speicher durch das ständige Protokollieren des Journaling Filesystems tendenziell schneller kaputt. Natürlich gibt es auch zahlreiche Windows-Partitionierungstools, die Ext2-Dateisysteme erstellen können.

Ist das Handy gerootet und die MicroSD-Karte entsprechend vorbereitet, benötigen Sie nur noch die App Link2SD von Bulent Akpinar. Die App lagert die Daten auf der Ext2-Partition der MicroSD-Karte aus. Sie tut dies unter Android 1.6 bis 2.3 auf die übliche Art. Bei einem aktuellen Android-System mit Android 4.0 oder neuer legt Link2SD aber eine Verknüpfung im Telefonspeicher auf den internen Speicher an. Das Android-System glaubt so, dass sich die Daten auf dem internen Speicher befinden, in Wirklichkeit liegen Sie aber auf der neuen Ext2-Partition der MicroSD-Karte. Einen detaillierten Artikel zu Link2SD finden Sie in der kommenden Ausgabe 04/2013 von Android User. Wie Sie Ihr Handy rooten, erklären zahlreiche Artikel in Android User 02/2013 sowie auf unserer Webseite.

Beachten Sie, dass sich auch auf diese Art nicht alle Apps auf die SD-Karte verschieben lassen, da der Workaround nur für die Dateien unter /data/apps funktioniert. Systemnahe Apps befinden sich hingegen unter /system/. Zudem muss sich die MicroSD-Karte bei diesem Szenario immer im Gerät befinden, sonst kann es zu Komplikationen kommen.

Ohne MicroSD-Karte

Ihr Handy besitzt keinen Slot für MicroSD-Karten und der Systemspeicher ist voll? Hier hängt es stark von der Software des Herstellers ab, was sich tun lässt. Zunächst sollten Sie natürlich immer versuchen, nicht mehr benötigte Apps zu löschen. Da sich jedoch im Systembereich auch viele tempräre Daten befinden, hilft es eventuell schon, den Browser-Cache und ähnliche Verzeichnisse zu löschen. Auf einem Nexus 4 tippen Sie dazu den Eintrag Daten im Cache an. Auf dem Nexus 4 des Autors haben sich nach einem Monat bereits über 500 MByte an Daten angesammelt. Auch Samsung, HTC und andere Hersteller bieten unter den Einstellungen im Menüpunkt Speicher Möglichkeiten, für mehr Platz zu sorgen. Am besten hat HTC das Problem gelöst. Hier lassen sich Apps gezielt vom Telefonspeicher in den App-Speicher verschieben. Der Dialog zeigt zwar an, dass die Apps auf eine MicroSD-Karte verschoben werden, in Wirklichkeit lagert sie das System einfach auf einen anderen Bereich des fest verbauten Speichers aus. Bei den Nexus-Geräten ist das nicht möglich.

Dieser Screenshot stammt vom HTC One X mit Android 4.1. Das Handy hat keinen MicroSD-Slot.
Dieser Screenshot stammt vom HTC One X mit Android 4.1. Das Handy hat keinen MicroSD-Slot.

In den meisten Fällen spielen Sie aber ohne MicroSD-Karte nur auf Zeit. Wer sehr viele Apps auf seinem Handy oder Tablet installieren möchte, sollte deshalb stets zu einer Hardware mit MicroSD-Kartenslot greifen.