Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have noticed that when I remove an app, which is placed on the SD card, this also frees up space on the main storage. The space freed up corresponds to the "data", which an app stores. My question is, therefore, why does an app, which is placed on the SD card, still choose to store its data on the main storage? Is it because it is impossible not to, or lazyness on the part of the developer?

share|improve this question
up vote 4 down vote accepted

Apps can store data in both places, but the SD card has a FAT filesystem which does not support file permissions. This means that a malicious app could erase or change app data very easily if the data was on the SD card. As well, you can swap SD cards or format your card, and then the app would have "forgotten" all its settings and lost all the other data. So it's a very good idea to put app data in the phone storage, where Android can manage access to the data and protect it.

On newer versions of Android, the SD card filesystem can be virtualized to enforce permissions. Couple this with encryption, and the above issues go away.

share|improve this answer
I understand the security issues, but why would I want to have available an app data without the SD if it is installed in the SD? Also, could this be the answer of my lost 40MB here: – Diego Aug 9 '11 at 13:19
@Diego You're right that there's no use for the data if you eject your SD card with the app on it, but that's not the purpose. It's to prevent apps from snooping your data. – Matthew Read Aug 9 '11 at 14:14
Yes, I get it. Is there any way to say Android which apps are trusted? (I've just updated the question I linked before) I'm having seriously storage problems :( – Diego Aug 9 '11 at 14:18
@Diego All apps you install are trusted with the permissions they request -- the permisions are shown on the Market page or when you install an app. Since the SD card is intended to be removed and altered -- you could plug it into a computer and wipe it if you wanted -- it doesn't really make sense to try to control it. I'll take another look at your other question. – Matthew Read Aug 9 '11 at 14:22
Ok.. I'd really appreciate that, thanks! – Diego Aug 9 '11 at 16:20

It's not something I would look to developers and blame them for. Quite frankly, there are many cases in which our apps don't even work while living on the SD card. I've had situations where music and podcasts are stored on my SD card because the app in question puts them there, but if the card is out, doesn't register on boot, gets swapped, etc, and something doesn't work when it's time to use the app, users run straight to the Market to bash the app developer when it's their own fault.

Developers often try to save users from themselves, because quite frankly we as users do stupid things, and sometimes that can be viewed as being lazy. When in reality, we're doing what makes sense because we can predict how things can break down.

share|improve this answer
Good point! I see the picture more clearly now. – David Mar 10 '11 at 19:26
+1 for "Developers often try to save users from themselves, because quite frankly we as users do stupid things, and sometimes that can be viewed as being lazy.".. Very true! – Diego Aug 9 '11 at 14:20

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.