As you might be knowing, in the recent version of Android 4.4, ‘KitKat’, Google has slightly modified the default permissions for the external SD Card. Now it is accessible for writing only by a special user group of members called media_rw. In this article, I would like to share a trick which will allow to enable write access to all the lucky owners of rooted devices with Android 4.4.
When some process needs to write to external media, it requests the appropriate permission. This was the usual behavior in earlier versions of Android. However, third-party apps in KitKat have no access to that permission! So, there is no way for them to obtain write access to the external SD Card. You might face various issues with the new access rules in Android 4.4, i.e. your favorite File manager can stop working. Here’s how to give these apps the correct permission.
- Launch your favorite file manager with root access rights. You can use any app you prefer which can run elevated on your device. For example, the ‘Root Explorer’ app or ‘File Manager’ from CyanogenMod will do.
- Navigate to the following file:
- Find android.permission.WRITE_EXTERNAL_STORAGE and android.permission.WRITE_MEDIA_STORAGE lines. These are XML sections. You need to make them look exactly like the strings below:
<permission name="android.permission.WRITE_EXTERNAL_STORAGE" > <group gid="sdcard_r" /> <group gid="sdcard_rw" /> <group gid="media_rw" /> </permission> <permission name="android.permission.WRITE_MEDIA_STORAGE" > <group gid="sdcard_rw" /> <group gid="media_rw" /> </permission>
Save the platform.xml file. It’s necessary to set the file permissions to 644 (rw-/r–/r–) before mobile restarting. Now reboot your Android device. You are done.
Unfortunately, there is no known solution to me which could be suitable for non-rooted devices.