Android SDK
Android SDK | |
---|---|
Developer(s) | |
Initial release | October 2009 |
Stable release | 26.1.1
/ September 2017[1] |
Written in | Java |
Operating system | Cross-platform |
Available in | English |
Type | IDE, SDK |
Website | developer |

The Android SDK is a software development kit for the Android software ecosystem that includes a comprehensive set of development tools.[2][3] These include a debugger, libraries, a handset emulator based on QEMU, documentation, sample code, and tutorials. The SDK is part of the official Android Studio IDE but its various tools and resources can be used independently.
Currently supported development platforms include computers running Linux (any modern desktop Linux distribution), Mac OS X 10.5.8 or later, and Windows 7 or later.
Background
Until the end of 2014, the officially supported integrated development environment (IDE) for Android development was Eclipse, utilizing the Android Development Tools (ADT) Plugin. Eclipse, combined with the ADT Plugin, provided a comprehensive environment for developing Android applications, including tools for designing user interfaces, debugging, and deploying applications. However, in 2015, Google announced that Android Studio would become the official IDE for Android development. Android Studio, based on JetBrains' IntelliJ IDEA, offers a robust and feature-rich environment tailored specifically for Android development. It includes a wide range of tools and features designed to enhance productivity, such as an advanced code editor, a powerful build system, and a comprehensive suite of testing and debugging tools.
Despite the official shift to Android Studio, developers are not restricted to using it exclusively. They are free to use other IDEs if they prefer, although Google made it clear that the ADT Plugin for Eclipse was deprecated at the end of 2015. This deprecation was part of Google's strategy to focus its resources and support on Android Studio, ensuring it remains the most advanced and efficient tool for Android development. Developers who choose not to use an IDE can still develop Android applications using any text editor for writing Java and XML files. They can then use command-line tools, such as the Java Development Kit (JDK) and Apache Ant, to compile, build, and debug their applications. These tools also enable developers to control attached Android devices, performing actions like triggering a reboot or remotely installing software packages.
The development and enhancement of Android's SDK are closely linked to the overall progression of the Android platform. As the platform evolves, the SDK is updated to include new features and improvements. However, the SDK also maintains support for older versions of the Android platform, ensuring that developers can create applications compatible with a wide range of devices. This backward compatibility is crucial for developers who want their applications to reach users with older devices. The SDK's development tools are modular and downloadable, allowing developers to install the latest versions as well as older versions for compatibility testing.
Android applications are packaged in the APK (Android Package) format, which is the standard format for distributing and installing applications on Android devices. These APK files are stored in the /data/app folder on devices running the Android operating system. Access to this folder is restricted to the root user for security reasons, preventing unauthorized access to the installed applications. The APK package contains several key components, including .dex files (Dalvik Executable files) that contain the compiled byte code for the application, resource files (such as images, layout files, and strings), and other necessary components required for the application to function correctly.
The Dalvik Executable files (.dex) are a critical part of the APK package, as they contain the byte code that the Android Runtime (ART) or the Dalvik Virtual Machine (DVM) executes. These files are optimized for efficient storage and quick execution, making them well-suited for mobile devices with limited resources. The APK package also includes a manifest file that provides essential information about the application, such as its name, version, permissions, and the components it comprises (activities, services, broadcast receivers, and content providers).
While the Android SDK is not directly available on Android devices as of March 2015, development remains accessible through specialized applications and a variety of tools. The shift from Eclipse with ADT Plugin to Android Studio as the official IDE reflects Google's commitment to providing developers with the most advanced and efficient tools available. With continued support for older platform versions and a comprehensive set of development tools, the Android SDK enables developers to create, build, and test applications compatible with a wide range of devices, ensuring a broad reach for their software.
Android SDK Platform Tools
The Android SDK Platform Tools are a crucial part of the Android Software Development Kit (SDK) that can be downloaded separately. They include key command-line tools like Android Debug Bridge (ADB) and fastboot.
ADB allows developers to communicate with Android devices or emulators, helping with tasks like installing apps, transferring files, and debugging. Fastboot lets developers modify the Android file system from a computer, useful for flashing custom recoveries, updating firmware, and unlocking bootloaders.
These tools are regularly updated for compatibility with the latest Android versions and devices, ensuring developers have the resources to build, test, and deploy high-quality applications effectively.
Security
![]() | This section needs expansion with: by explaining the security issue. You can help by adding to it. (October 2023) |
Some security issues were found in 2014.[4]
References
- ^ "SDK Tools | Android Developers". Developer.android.com. Retrieved April 25, 2018.
- ^ "Tools Overview". Android Developers. July 21, 2009.
- ^ Android 3 SDK programming for dummies. Rajiv Ramnath, Roger Crawfis, Paolo Sivilotti. Hoboken, N.J.: Wiley. 2011. ISBN 978-1-118-14634-7. OCLC 759198469.
{{cite book}}
: CS1 maint: others (link) - ^ Duckett, Chris. "Android SDK suffers from buffer overflow and lack of hardening". ZDNet. Retrieved 2021-08-05.