The APK file format is default application package format used by operating system for smart phones and tablet computers called Google Android. Android APK archive contains all important data to run Android application stored in it.
The main source of applications for Android is Android Market, which is an application installed in the clean installation of Google Android. Android Market is also accessible via Internet browser.
- Pre-installed Android APKs are stored in the /system/app folder.
- User installed APKs are stored in the /data/app folder.
To manage installed applications in Android go to the Menu → Settings → Applications → Manage applications.
To view Android directory structure, you need to install Android file manager to system, such as Astro Explorer or Root Explorer.
Android application package structure
The APK application package uses ZIP compression format, which is widely supported and ZIP archives are openable in a variety of operating systems, or compression utilities. To view the content of APK archive simply rename its APK file extension to ZIP and open it.
The structure of APK file after compilation:
assets folder contains documents in HTML format that inform about application, license information, FAQ etc.
META-INF folder contains data that are used to ensure the integrity of the APK package and system security. There are several files in the META-INF folder namely: CERT.RSA, CERT.DSA, CERT.SF and MANIFEST.MF.
res folder contains resource files, such as graphics, sounds, settings etc..
AndroidManifest.xml file contains information about name, version, access rights, also references to library files and other.
classes.dex is Dalvik virtual machine executable file. This file contains compiled Java source codes. DEX file can be executed only in Dalvik virtual machine and Java Runtime Environment cannot run DEX files.
- resource.arsc is binary resource file after compilation.
Integrated development environments recommended by Google for development of aplications for Android operating system are Eclipse with ADT Plugin and IntelliJ IDEA.
Other Android development tools, such as Android SDK and Android SDK Tools, are downloadable from Google Android developer website.
Installation of Android applications to memory card
Android 1.6 Donut and Android 2.1 Eclair without Root permissions installed has not support for installation of applications to memory card.
This feature is supported from Android version 2.2 Froyo. Applications installed on memory card are encrypted and stored in the .android_secure folder. Encrypted Android applications have the ASEC file extension.
Installation to memory card must be also supported by Android application. To move it to the memory card, go to the Menu → Settings Applications → Manage applications and tap on application and select Move to SD card option.
Move to SD card option in Android
Installation of Android applications via USB cable
Unlike any other mobile operating systems (Apple iOS, Windows Phone 7 etc.), Android still supports installation of applications via USB cable. To install applications downloaded as APK file from the Internet you must have memory card inserted in the phone and also some file explorer installed. To install APK file via USB follow these few steps:
- Connect phone to USB port as a Mass Storage Device
- Open the memory card in Windows' explorer or Mac Finder and copy APK file to the card
- Disconnect the phone and open file explorer installed in phone
- Go to the /sdcard, or /mnt/sdcard folder, tap on the APK file and select Open App Manager option
Open APK file options in Astro Explorer
Some producers disable application installation service via USB in their phones. To enable this option, go to the Settings → Applications and set the Unknown sources option to enabled.
Unknown sources option in Application settings
If you are interested in development of Google Android applications, visit the Android developer website, which contains detailed instructions, sample codes, articles and other tutorials.