Android is an open source and Linux-based operating system for mobile devices such as smartphones and tablet computers. Android was developed by the Open Handset Alliance and other companies. Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android.
Android application development is the process by which new applications are created for the Android operating system. Applications are usually developed in Java programming language using the Android Software Development Kit (SDK).
The Android software development kit (SDK) includes set of development tools. These tools include a debugger, libraries, documentation, sample code, and tutorials. Additionally, developers may use any text editor to edit Java and XML files, then use command line tools to create, build and debug Android applications as well as control attached Android devices.
Enhancements to Android's SDK go hand in hand with the overall Android platform development. The SDK also supports older versions of the Android platform in case developers wish to target their applications at older devices. Development tools are downloadable components, so after one has downloaded the latest version and platform, older platforms and tools can also be downloaded for compatibility testing.
The mobile back-end facilitates data routing, security, authentication, working off-line, and service orchestration. This functionality is supported by a mix of middleware components including mobile application servers, mobile backend as a service(MBaaS), and service-oriented architecture (SOA) infrastructure.