Android Development Tools
The Android Software Development Kit (Android SDK) contains the necessary tools to create, compile and package Android applications. Most of these tools are command line based. The primary way to develop Android applications is based on the Java programming language.
The Android SDK contains the Android debug bridge (adb), which is a tool that allows you to connect to a virtual or real Android device, for the purpose of managing the device or debugging your application.
The Android tooling uses Gradle as build system. The Android team provides a Gradle plug-in for build Android applications which is entered in the build.gradle file in the top root of the Android project. It typically looks like the following, please note that the version might be different in your case.
// Top-level build file where you can add configuration options common to all sub-projects/modules.
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
You find the available versions
Google provides an IDE called Android Studioas the preferred development environment for creating Android applications. This IDE is based on the IntelliJ IDE.
The Android tools provide specialized editors for Android specific files. Most of Android’s configuration files are based on XML. In this case these editors allow you to switch between the XML representation of the file and a structured user interface for entering the data.
This description uses Android Studio as IDE.
Android 5.0 uses the Android RunTime (ART) as runtime for all Android applications.
ART uses Ahead Of Time compilation. During the deployment process of an application on an Android device, the application code is translated into machine code. This results in approx. 30% larger compile code, but allows faster execution from the beginning of the application.
This also saves battery life, as the compilation is only done once, during the first start of the application.
dex2oat tool takes the .dex file created by the Android tool change and compiles that into an Executable and Linkable Format (ELF file). This file contains the dex code, compiled native code and meta-data. Keeping the .dex code allows that existing tools still work.