Package Manager in Android

I am trying to understand the Android PackageManager (functionality and uses) and the new improvements in Ice Cream Sandwich for PackageManager over previous versions.

I have seen the following links and some old threads but still would appreciate if someone can provide me with more references or an explanation as very little is available on the internet.

PackageManager Android docs

Wikipedia - Package Manager


I wanted to broaden my understanding about PackageManager in android.

  1. How it works with APK's (Set of checks and steps that it follows for installation, updating and deletion).

  2. Android Play market acts as a repository for data. The interaction of PackageManager with market for downloading and updating.

  3. Is the installation process for 3rd party apps different to Play market apps, when using PackageManager?

There is very little documentation available on android developer site for PackageManager and hence your help is really appreciated.

Thanks :)


This is way to general. Generally, PackageManager provides methods for querying and maniuplating installed packages and related permissions, etc. Some methods are only allowed to the system user. Changes to API in ICS are here.

Those are questions about the actual implementation, and SO may not be the best place for those. In general, you should read the android source to get the full picture. Briefly:

  1. Installed packages info is stored in an XML file: /data/system/packages.xml. PackageManager parses and modifies this when installing or removing packages.
  2. The way the Android Market works is generally undisclosed.
  3. See 2. Android does keep track how a package was installed, so the Market app can tell which apps were installed from the Market and check for updates.

Need Your Help

Simulate saving propel object (Don't write into tables)

php mysql symfony1 propel

I have a functionality in my project where in I have to show a preview to the user as to how the page will look like after submitting the form. For preview, I am setting related propel object with ...

Return to first page of Extjs 4 grid

extjs store paging

I developed Extjs 4 grid with paging. In some event I need to refresh the grid and