Android 4.4 discovered to restrict apps from writing anywhere on external storage

February 17, 2014
19

Considering how long Android 4.4 has been out in the wild, this might not actually be a new feature, or misfeature if you prefer. But it was only recently noticed that Android's latest external storage policy has been updated and will basically limit apps in writing to external SD cards.

Filesystem access has been a rather thorny subject and has usually split the lines not only between Android and iOS but even between Android users themselves. On one hand, it seems almost inconceivable how iOS users have survived this long with very limited access to their own files. On the other hand, there are those who consider this desktop-like access to files and folders not only messy but also highly prone to errors and damages. The situation on Android is exacerbated by the fact that Android supports external storage, normally SD cards, unlike iPhones or iPads. Google itself seems to be leaning towards a "one internal storage to rule them all" stance, as evidenced by its Nexus devices.

Google did concede and allowed access to external storage, since Android 1.0 even, but write access has been limited with the special WRITE_EXTERNAL_STORAGE permission. In Android 4.1 it also limited even read access with a new READ_EXTERNAL_STORAGE permission. Now it seems that Google is tightening the reins even more. Starting Android 4.4, WRITE_EXTERNAL_STORAGE has been modified to severely limit what apps can do on an external storage device. Now the permission will allow apps to write on an SD card only within its own app-specific directory.

The WRITE_EXTERNAL_STORAGE permission must only grant write access to the primary external storage on a device. Apps must not be allowed to write to secondary external storage devices, except in their package-specific directories as allowed by synthesized permissions

To clarify, Google calls SD card storage as "secondary external storage" and what users usually think of as internal storage is technically called "primary external storage".

In essence, this means that apps are severely limited in what they can accomplish on external storage. They are, of course, free to do whatever they want, both read and write, within their own app directory on the SD card. This is also a bit of security measure, as one app cannot write into the files and folders owned by another app. Unfortunately, this also means certain apps, particularly file managers, are no longer free to create, delete, or rename files in arbitrary locations on the SD card.

It remains to be seen how this restriction, now that it has come to light, will be taken by the Android community, though initial reaction has already been very negative. Given Google's exertion of more control over certain parts of Android, it is likely that manufacturers will just comply. Surprisingly, it has been reported that one of those implementing this is Samsung, hardly a poster boy for Android compliance. There might other ways to get around this restriction, like rooted devices for example, but regular users might be just forced to adapt to a new paradigm, for better or worse.

SOURCE: +Tod Liebeck, Google


Recent Stories

  • Dennis Len Heggenstaller

    Good, im sick of 50k worth of useless folders i have to delete after i remove apps…make it easier for the end user.

    • Justin Tipton

      Only if they don’t use their SD card with other devices….

      An Android fan plugs their SD card into their camera while on a Safari. They get back to their hut and plug the SD card into their Android device. The camera put pictures in the folder “Camera”.

      These users will be able to see the photos on their Android tablet, but they won’t be able to free up space or modify any of these photos until they get to a computer.

    • woofa

      Such is the life of constantly installing apps you just want to try out. Sack up.

    • mark

      But this will still happen, as the change doesn’t affect the primary external storage (external to the application, but usually on internal memory these days), which is what some apps use for storing their data. And they couldn’t block that, without crippling all those apps.

      The fault is android uninstallation, which should allow for deleting folders that apps created, similar to how Windows and Linux PC uninstallers can do this.

  • Justin Tipton

    I’m glad Android community picked this up. I tried tweeting you guys a few days ago.

    I think the article doesn’t fully explain the bad scenarios for Android users.

    Music apps cannot edit tags on the SD card.
    Music apps cannot delete an unwanted song on the SD card.

    Photo apps cannot edit a photo on the SD card.
    Photo apps cannot delete a photo on the SD card.

    Sync apps cannot sync anywhere but in their own folder, where nothing else is. (Dropbox cannot keep a folder on your SD card in sync, neither can BitTorrent Sync)

    Uninstalling a sync application will remove everything it has downloaded to the SD card.
    Uninstalling an MP3 downloading app will remove any MP3s it has placed on the SD card.

    If you are on a Safari taking pictures, you cannot manage the SD card using Android. You’ll need to take a full laptop, or not upgrade to KitKat.

    If you have old MP3s, pictures or whatever on your SD card, you can never delete them, only reformat the SD card.

    • http://www.flickr.com/stuffbox DuduMaroja

      wierd.. im on 4.4.2 on Moto X, and i cand do everything you just describe..

      • mark

        Particularly impressive since the moto x doesn’t have an sd card slot!

      • http://www.flickr.com/stuffbox DuduMaroja

        I have this OTG adapter for all my SD needs

      • mark

        The article (and comment above) are referring to devices that have their own SD card slots, not USB OTG, though yes, it is a point that USB OTG does exist as a workaround (but not an ideal one, as you have to have the cable and reader hanging off, and the access has to go via Nexus Media Importer, or you have to root the device – I use it on my Nexuses, but find it can be a bit flaky sometimes). I hope Google don’t try to clamp down on USB OTG in future…

    • mark

      Note that sync apps could still be used on the device’s internal storage, but yes, it does cripple sd cards to basically being read only.

      If this was really about security, i wonder why apps still have free access to the primary external storage (the data area that’s confusingly on internal storage these days) – presumably because they know that would cripple most apps. Sadly this is another step towards locking off sd cards for android. Funny that ms are the ones making their os work better with external drives, rather than trying to lock it down!

  • Dayvon Ingram

    The 4.4 update came to my galaxy s4 yesterday but since I updated my phone it has been acting really stupid

    • woofa

      Welcome to the world of Android updates. Due to changes like these discussed in this article and others updates often don’t go well and how well greatly depends on the apps you use. Typically a FDR will return your device to proper operation.

    • Grace

      Back up your phone and try a factory reset and then reload your apps. I have never had positive results after an upgrade until I reset the phone.

  • bgrigor

    An absolutely stupid, and I feel unnecessary, policy. I have 20 GB of music and podcasts that I keep only on an expansion SD card. I download with several different apps, I play with several different apps and I manage with yet a different group of apps. If Android isn’t going to work like a real computer, then it becomes useless to me. Windows Phone is looking better.

    • Grace

      The Ubuntu Touch phone is launching on Meizu this year. With keyboard and monitor support, it is like carrying a real computer. This looks like my next phone as I cannot deal without an sd card for storage.

  • jl sc

    Time to move away from apple…eh…android. Sorry, getting those two mixed up these days. Used to be only Apple was telling the consumer what they wanted , now its android. Killing file manager capabilities is absolutely a deal breaker. Im ready to go back to a flip phone. If I cant use expanded memory in my tablet, I might as well get a windows laptop.

  • GoLan

    I will never eat KitKat for what they have done to my external memory card!!!

  • Susan A

    This is completely beyond the pale. For the last 6 months, Google’s been unable to do anything except screw up search, literally harass customers and completely destroy almost everything I bought an android for in the first place. Not to mention the jerks at AT&T forcing this update on customers….and when I say “forcing”, I mean I spent all of yesterday cancelling out of nag-screens while trying to figure out how to not install this update, and the @#$ing thing installed itself while I was asleep….promptly destroying most of my customizations.

    Now, these $@#$heads at Google are going full-court press with trying to get me into Google Now: I’m not allowed to use voice search without passing through a nag screen for Now? Really? Screw you, Google.

    The lesson I think many of us have learned lately is if Google really, really, really wants you to do something, they’re only doing it to benefit themselves and you should stay the hell away from it.

  • Diabolus

    this is solution for write to ext sd card : http://forum.xda-developers.com/showthread.php?t=2687966

    i think it works on every device with KK :)