Android Developmen is a software development process due to which new applications can be created for the Android operating system. Applications are developed mainly in Java programming language by using this software kit.
More than 1 million applications have already been developed for android with about 25 billion downloads.
It is created by the Open Handset Alliance that is led by Google. Issues that created the problems were bugs, lack of documentation no-public issue tracking system and inadequate QA infrastructure. The first publicly available application was the Snake game. The sim unlocked and hardware unlocked device was designed for advanced developers.
The release of SDK was done on 12 November 2007 whereas the updated version 0.9 with extended API, improved development tools and an updated design for home screen came up on 18 august 2008. The version 1.0 came up with the bug fixes along with some more smaller features and several API changes.
Official development tools here include SDK that is android software development kit that includes comprehensive set of the development tools, which further includes a debugger, handset emulator that is based on QEMU, libraries, documentation, tutorials and sample code.Some of the recently supported development platform includes computers that are running on Linux, Mac OS X 10.5.8 and windows XP. A person can even develop software on android itself by making use of AIDE-Android IDE(integrated development environment)-Java, C# app or the Java editor app. Additionally, developers also make use of text editor to edit Java and XML files as they use command line tools to build, create and debug android applications as well as control the attached Android devices.
Then comes the Native development kit in which the libraries are written in C, C# and other languages that can be compiled to MIPS, ARM or x86 native code that is installed with the help of NDK. Complete applications are compiled and installed with the help of traditional development tools. The drawback of this is that it uses C or C# because of which complexity is increased and also most of the applications do not run properly.
Then comes the Android Open Accessory Development Kit that allows external USB hardware to interact with Android powered device with the special accessory mode.