Take the 2-minute tour ×
Android Enthusiasts Stack Exchange is a question and answer site for enthusiasts and power users of the Android operating system. It's 100% free, no registration required.

So recently bought an Android tablet, having first had an iPhone.

So with Apple's strategy, apps seem quite restricted. They can really only do a couple of minor things outside of the app (like notifications etc.) and they're also reviewed by Apple.

Android seems to allow a lot more freedom. You have apps that change the keyboard, or change the start up screen or allow you to share across apps etc.

So my question is... if I install something from Play Store, do I know that it will always uninstall properly? Do app developers actually need to write an uninstall program or is this done automatically in the OS?

share|improve this question
    
It's done by the OS, though I'm not sure if apps have the option of cleaning up data on the SD card or something. –  Matthew Read Aug 24 '12 at 3:43
    
add comment

1 Answer

up vote 8 down vote accepted

Short answer

Generally, apps are cleanly uninstalled, and most if not all of their data will be removed along. Some exceptions may however apply to their data stored on sdcard, if any.

Detailed answer

Android uses a data structure which is defined by the developers API, and developers should stick to it. There are also not too many ways they could deviate, as e.g. file system permissions prevent this.

Aside from the .apk (the app itself) installed at a defined place, there are also defined places for the apps data: All these can only go below /data/data/<package_name> on internal storage (rare chances an app can access other places in internal storage to place its data, except from some "temporary" or cache locations. As for the sdcard, the API strongly recommends to use Android/data/<package_name> as corresponding place (see API documentation).

As long as developers stick to these rules, uninstalling the app will also remove all its data (as the system takes care for all those locations defined by the developer documentation, since these are easily identified via the package name). However, on the sdcard there are almost no restrictions which places an app can access (which is due to the FAT file system used for these cards), and some apps go wild here.

share|improve this answer
add comment

Your Answer

 
discard

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.