KitKat/Schreibzugriff Externe Speicher: Unterschied zwischen den Versionen

keine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 4: Zeile 4:
Die Berechtigungen, die eine App bekommt, werden durch den Entwickler in der ''AndroidManifest.xml'' der App festgelegt. Android selbst setzt die angeforderten Berechtigungen durch Gruppen um. Bei der Installation einer App wird der für diese neu erstellte Benutzer den Gruppen hinzugefügt, welche für die angeforderten Berechtigungen benötigt werden.
Die Berechtigungen, die eine App bekommt, werden durch den Entwickler in der ''AndroidManifest.xml'' der App festgelegt. Android selbst setzt die angeforderten Berechtigungen durch Gruppen um. Bei der Installation einer App wird der für diese neu erstellte Benutzer den Gruppen hinzugefügt, welche für die angeforderten Berechtigungen benötigt werden.


Die Zuordnung, welche Gruppe welcher Berechtigung zugeordnet ist, wird durch die in der /system/-Partition liegendenden Datei platform.xml (/system/etc/permissions/) definiert.
Welche Gruppe welcher Berechtigung zugeordnet ist, wird in der ''platform.xml'' definiert. Diese Konfigurationsdatei ist in der /system-Partition zu finden.


Durch die Änderung in Android {{Android|44}} hat die Gruppe mit der Gruppen-ID ''sdcard_rw'' keinen vollen Schreibzugriff mehr auf externe Speichermedien (wie vor Android {{Android|4.4}}). Die Gruppe hat nur Zugriff auf ein für die App erstelltes Verzeichnis. Dies soll laut Google sicherstellen, das Android bei der Deinstallation einer App auch alle gespeicherten Inhalte auf den externen Speichermedien löschen kann. Dies schränkt allerdings besondere Apps, bspw. [[Dateimanager]], erheblich in ihrer eigentlichen Funktion ein.
Durch die Änderung in Android {{Android|44}} hat die Gruppe mit der Gruppen-ID ''sdcard_rw'' keinen vollen Schreibzugriff mehr auf externe Speichermedien (wie vor Android {{Android|4.4}}). Die Gruppe hat nur Zugriff auf ein für die App erstelltes Verzeichnis. Dies soll laut Google sicherstellen, dass Android bei der Deinstallation einer App auch alle abgelegten Inhalte auf den externen Speichermedien löschen kann. Dies schränkt allerdings Apps erheblich ein, die den vollen Zugriff für ihre Grundfunktionalität benötigen, bspw. [[Dateimanager]].


== Lösung ==
== Lösung ==
Da das Berechtigungssystem in Android auf der /system/-Partition geregelt wird, gibt es derzeit keine Lösung oder Workaround, die das Schreiben auf die komplette SD-Karte durch Apps erlaubt, wenn man keinen [[Root]]-Zugriff auf das Gerät hat.  
Derzeit gibt es keine Lösung, bzw. keinen Workaround, der das Schreiben auf die komplette SD-Karte durch Apps erlaubt, wenn man keinen [[Root]]-Zugriff, sowie keinen Schreibzugriff auf die /system-Partition hat hat. Dies begründet sich in der Tatsache, dass für einen Workaround die Berechtigungen einer Berechtigungsgruppe in der oben erwähnten platform.xml geändert werden müssen. Auf die /system-Partition wird hierfür Schreibzugriff benötigt.
Zudem wird Schreibzugriff auf das System benötigt.


Sind diese Voraussetzungen erfüllt, kann die bereits erwähnte platform.xml (/system/etc/permissions/platform.xml) mit einem Texteditor bearbeitet werden. Die Gruppe ''media_rw'' hat weiterhin vollen Zugriff auf die externen Speichermedien. Fügt man diese Gruppe zu der Berechtigung ''android.permission.WRITE_EXTERNAL_STORAGE'' hinzu, haben auch die Apps, die diese Berechtigung anfordern, wieder vollen Schreibzugriff auf die SD-Karte:
Sind diese Voraussetzungen erfüllt, kann die bereits erwähnte platform.xml (/system/etc/permissions/platform.xml) mit einem Texteditor bearbeitet werden. Die Gruppe ''media_rw'' hat weiterhin vollen Zugriff auf die externen Speichermedien. Fügt man diese Gruppe zu der Berechtigung ''android.permission.WRITE_EXTERNAL_STORAGE'' hinzu, haben auch die Apps, die diese Berechtigung anfordern, wieder vollen Schreibzugriff auf die SD-Karte:
11.008

Bearbeitungen