Android SDK

Android SDK ( Android Software Development Kit ) - a set of tools ( SDK ) for programmers designed to create applications for the Android platform. It consists of two parts: SDK Tools - required to create applications regardless of the version of Android, and Platform Tools - tools modified for specific versions of the system.
The programming environment includes elements such as documentation, sample programs, tutorials , libraries , emulator based on QEMU , debugger and many other tools. Supported platforms are Linux (most modern distributions ), OS X version 10.5.8 or later, and Windows XP or newer.
The Android SDK is modular. It is possible to easily install and uninstall any module through 
the supplied Android SDK Manager. The modules are, for example, images of specific Android versions, additional drivers, SDK sources, or sample programs. Particularly important are the system images run on the emulator, thanks to which developers can easily test the behavior of the application on all Android versions, without physical devices.
== SDK Tools ==
SDK Tools are tools required to create applications for the Android platform. The most important of them are:
android - allows you to manage virtual machines (AVD Manager), projects, and install and uninstall SDK modules (Android SDK Manager)
Dalvik Debug Monitor Server (ddms) - application debugger
Emulator - Android device emulator based on QEMU, which can be used to design, debug and test applications under different system versions
layoutopt - analyzes the layout (placement of widgets ) of the application in order to optimize them in terms of performance
mksdcard - helps create a disk image for use with an emulator to simulate the presence of external memory (such as an SD card )
ProGuard - reduces, optimizes and obscures the code by removing unused fragments and changing the names of classes, methods and fields
sqlite3 - allows access to SQLite database files created by applications
traceview - graphical viewer of application execution logs
zipalign - optimizes APK files in such a way that the uncompressed data is in a specific position relative to the beginning of the file
== Platform Tools ==
Platform tools are tools that are updated during the installation of each new SDK platform (a set of libraries necessary to compile applications for a specific version of Android). Each Platform tools update is backwards compatible with the previous version. The most commonly used tool belonging to Platform tools is Android Debug Bridge ( adb ). It is a versatile tool that lets you control an emulator or Android device. You can use it to install applications and run them. adb has a lot of control over the device - it allows you to access the shell , transfer files to and from the device, or install system updates.
A fastboot - a program that enables operations such as loading the system image onto the device (ie installing a newer version of Android, or even another system), managing partitions , or unlocking the bootloader is also a frequently used tool from Platform tools .
Other tools also belong to Platform tools, but usually they are not used directly, but through IDE or other components of the Android SDK.
== IDE (Integrated Development Kit ==
As part of the Android SDK, the ADT Bundle is made available, which is a set of basic tools needed to start writing applications. It includes:
Eclipse - a programming environment with an ADT plugin that adapts the application for developing Android applications
SDK Tools
Platform Tools
A set of libraries for the latest version of Android
Picture of the emulator system
From May 2013 there is a trial version of Android Studio, an environment based on IntelliJ IDEA . Its main advantages in comparison to Eclipse with ADT is the use of newer Gradle instead of Ant for software development, the ability to configure several variants of building a program for one project, as well as improvements in refactoring and code completion.
Using any IDE is optional - developers can edit XML and Java files in any editor, and later build and debug applications using the console tools provided with the SDK.
== External/Internal Links ==
* Android Studio
* SDK Tools
* Tools Help
* About Android
Category:Software developers
Category:Software
Category:Android projects
Category:Apps developed by Google