Android Packages

Jump to: navigation, search


Android applications are shipped as "packages", which are compressed archives with class files, resources, and meta-information (the AndroidManifest.xml file and security certificates) for the application.

A package has the extension .apk, and it consists of a set of directories and files in a gzip'ed archive.

A package usually contains the following items:

The manifest file for the package file (apk) itself.
A security certificate
another security certificate (should distinguish these two)
The manifest file for the application(s) in this package
The actual code for the dalvik (/java) classes for the application(s) in this package
a directory containing resource files


The AndroidManifest.xml file has information about the application(s) in a package. Usually, a package will contain a single application. The AndroidManifest file describes the application's name, as well as libraries and security permissions neede by the app, messages used by the app, what icon to use to represent the app, and more.

See for details.

Tools for managing packages

The aapt tool is used to create, inspect and modify Android packages.


An overview of application resources is at:

It is possible to use a raw file as a resource (without it getting compiled by the build system). See this article on using raw files as resources in Android.


Assets are like resources, except that do not have a resource ID, and they are listed in the 'assets' directory of a package, rather than the 'res' directory.