6

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?

2

1 Answer 1

8

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.

2
  • What about things like registering an app to the system. Say, the app wants to be shown in the Share menu. I assume it asks the OS for this, and I assume the OS remembers this inside a file somewhere. Would that get cleared?
    – Didier A.
    Commented Oct 29, 2014 at 0:43
  • No definite answer to this with sources, but for me it always got cleared. At least I've never seen an uninstalled app appear in the share menu. Still: if the dev e.g. lets the app create stuff on first app start outside of the apps dedicated storage (i.e. /data/data/com.foobar/* resp. the corresponding /sdcard/Android/*), and doesn't take care for that, "corpses" might remain. That part is a question of "clean coding". That's what I've meant by "As long as developers stick to these rules" (see last paragraph of my answer).
    – Izzy
    Commented Oct 29, 2014 at 10:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .