The Android build process provides project and module build settings so that
your Android modules are compiled and packaged into .apk
files, the containers
for your application binaries, based on your build settings. The apk file for each app contains all
of the information necessary to run your application on a device or emulator, such as compiled
.dex
files (.class
files converted to Dalvik byte code), a binary version
of the AndroidManifest.xml
file, compiled resources (resources.arsc
) and
uncompiled resource files for your application.
To run an application on an emulator or device, the application must be signed using debug or release mode. You typically want to sign your application in debug mode when you develop and test your application, because the build system uses a debug key with a known password so you do not have to enter it every time you build. When you are ready to release the application to Google Play, you must sign the application in release mode, using your own private key.
If you are using Android development tools, the build system can sign the application for you when build your app for debugging. You must obtain a certificate to sign your app when you build and app for release. For more information on signing applications, see Signing Your Applications.
The following diagram depicts the components involved in building and running an application:
![](../../images/build-simplified.png)