Auf meinem Nexus 7 habe ich seit geraumer Zeit Android KitKat im Einsatz und war damit eigentlich recht zufrieden. Das änderte sich jedoch schlagartig, als ich es auch auf meinem Galaxy S4 installiert habe und plötzlich keinen vollen Zugriff mehr auf meine Speicherkarte hatte. .
Google hat, meines Erachtens mit einer fadenscheinigen Begründung, eine neue API für den Zugriff auf Speicherkarten implementiert. Das äußert sich darin, dass viele Apps plötzlich nicht mehr auf die Speicherkarte schreiben können. Das erste Mal habe ich dies bemerkt, als ich über den Total Commander ein Hörspiel auf die Seite Karte schreiben wollte. Dieses wurde mit einer Fehlermeldung verweigert. Erst dachte ich, das meine Speicherkarte Einen Defekt hätte, musste das aber schnell feststellen, dass es am KitKat Update liegt.
Die neue Speicherkarten-API unter KitKat
Bislang war es so, das eine App die Berechtigung über WRITE_MEDIA_STORAGE zum Schreiben auf die SD Karte angefordert hat und damit unbegrenzt Dateien speichern und löschen konnte. Das ist künftig nicht mehr möglich und eine App hat nur noch den Zugriff auf ihr eigenes Verzeichnis. Dies erfolgt mittels Context.getExternalFilesDirs(), Context.getExternalCacheDirs(), etc.
Für viele Apps mag das keine große Rolle spielen, da sie ohnehin nur in den eigenen Verzeichnissen Daten ablegen. Andere wiederum haben ihren Sinn dadurch komplett verloren.
Die Folgen der neuen SD-Karten-Politik
Für zahlreiche Apps und auch für die allgemeine Usability des im Grunde recht offenen Betriebssystems hat diese Neuerung weitreichende Folgen. Einige besonders gravierende zeigt die folgende Auflistung.
- Dateimanager haben ihren Sinn verloren
- Einfacher Datentransport deutlich schwerer
- Entwickler stehen vor großen Problemen
- Apps werden mit dem Update deinstalliert
Ein Dateimanager soll nicht nur die Dateien des Dateisystems anzeigen, sondern auch eine umfangreiche Interaktion ermöglichen. Dazu gehört vor allem das Umkopieren großer Dateien auf die SD Karte, um den meist arg begrenzten internen Speicher zu entlasten.
Viele nutzen ihr Android Phone als USB Stick und transportieren so die unterschiedlichsten Dateien von einem System zum anderen. Ein schnelles Kopieren auf die SD Karte ist künftig nicht mehr möglich. Es wird eine spezielle App benötigt, die alle zu kopierenden Dateien in das eigene Verzeichnis speichern.
Gerade im Office Bereich haben sich Android Phones und Tablets einen verdienten Platz erkämpft. Dieser wird durch die neue API gefährdet. Wie an einem Kommentar von Kingsoft Office zu sehen ist, sehen einige Entwickler ihre Software als gefährdet. Ein Dokument, das auf die Speicherkarte geladen wurde, kann nicht bearbeitet und direkt wieder gespeichert werden. Es ist immer eine Kopie im Ordner der Office App erforderlich.
Apps die auf der SD Karte installiert waren, wurden mit dem Update entfernt und verlieren alle Daten. Diese müssen neu installiert werden. Allerdings ist das nicht in allen Fällen ohne weiteres möglich und ein Update des Entwicklers ist erforderlich.
Wird Android das neue iOS?
Gerade in Bezug auf den Zugang zum Dateisystem hatte Android dem iOS einiges voraus. Es war zwar ohne Root nicht möglich an die Verzeichnisse und Dateien des Systems zu gelangen, aber immerhin könnte auf der Speicherkarte frei geschaltet und verwaltet werden. Künftig muss immer der Umweg über eine App und den Austausch zwischen verschiedenen Apps gegangen werden. Jeder iOS User kennt das und weiß um die Schwierigkeiten, die dadurch entstehen. Die ständige Verbindung mit dem Rechner und die Synchronisation via iTunes kann sehr lästig sein.
Eine geeignete Lösung ist derzeit nicht in Sicht und man kann nur hoffen, daß sich Google besinnt und wieder eine spezielle Berechtigung für den gesamten Zugriff anbietet. Bis dahin kommt man nicht um das Rooten des Android Geräts umhin, wenn man sich nicht laufend mit Restriktionen herumschlagen möchte.
Besonders unverständlich ist dabei auch noch der Umstand, dass sich die neue Sicherheitspolitik ausschließlich auf die externe SD Karte bezieht und die interne SD weiterhin von Fremdprogrammen genutzt und zugemüllt werden darf. Wer also ein Update auf das neue KitKat plant, sollte sich vorher genau überlegen, ob er mit den Einschränkungen Leben kann.
Titelfoto: © djama – Fotolia.com
Das dafür aber schon seit langem ein Workaround gibt, wird mit keiner Silbe erwähnt. Schlecht recherchiert?
Und der wäre?
Es gibt derzeit keinen Fix ohne Root oder CM.
Als Entwickler, der stundenlang an dem Problem gesessen hat und alle Möglichkeiten evaluiert hat, kann ich dem nur zustimmen. Es gibt keinen 100% Workaround.
ES File Explorer nutzt bspw. nur einen Exploit aus und funktioniert auch nicht richtig. Versuche mal mit ES einen neuen Ordner auf der SD zu erstellen. Geht nicht.
Hier der Exploit mit Code:
http://forum.xda-developers.com/showthread.php?t=2634840
Mit dieser sinnfreien Speicherkartenaktion hat sich Android damit für mich erledigt.
Damit hat Google den wirklich sinnvollsten Unterschied zwischen iOS und Android selbst vernichtet.
Was nützt mir die Speicherkarte da noch in meinem Androidhandy ?
Vorbei ist es mit der Individualität und so fällt mir die Rückkehr zu iOS leicht. Wenn ich schon ein System habe das mich meine Dateien nicht frei verwalten lässt, dann suche ich mir das Beste dieser schlechten System aus und das ist dann iOS…
Google hatte hier sicher ein Einsehen. Mit Android 5 Lollipop ist es wieder möglich, auf die SD Karte zu schreiben. Lediglich eine einmalige Genehmigung pro schreibender App ist dafür erforderlich. Ärgerlich bleibt es nur für diejenigen, denen das Update auf Android Lollipop verwährt bleibt.