Android is the world’s most popular mobile operating system currently running on almost 90% of all smartphones worldwide.
The Android operating system is developed in-house by Google and then for each new version the source code is made available to the Android Open Source Project members (e.g. hardware manufacturers such as Samsung, HTC, LG, etc.). These manufacturers then tend to spend time adapting the Android source code for their devices. As we always like to be developing against the latest version of Android (with backward compatibility of course) we make sure the core Android devices we have here in the office are from Google's Nexus range (or since October 2017 from their Pixel range) so we get the latest "pure" version of Android to develop and test our apps against and of course we get the very latest updates and security patches before they would be released by OEM manufacturers such as Samsung on their devices.
Android has the largest installed base of any operating system, more than Microsoft Windows!
Whilst Android apps can be written in a number of programming languages, for now we are sticking with the tried and trusted official Android programming language, Java. However, we are keeping an eye on Google’s new Android programming language Kotlin to see how this pans out in case it allows us to offer better Android apps in the future. Once we have coded an app in Java we then use the Android SDK to compile that code into an APK file (the Android Package) and it is this .apk file which users then install on their Android smartphone or tablet (or for that matter any number of different Android-enabled devices).
When we first started developing Android apps back in circa 2009, the developer support was terrible i.e. Android development software was very poor and kept crashing - there was basically only the Eclipse IDE with the Android Development Tools (ADT) plugin. At that time the Android API and operating system documentation was forever out of date and always changing.
Thankfully these days there is a choice of robust Android development software (we use the latest version of Android Studio as this is maintained by Google and allows us to stay cutting-edge) and the Android team at Google are now great at providing detailed APIs with up-to-date documentation.
Below is an example of a first-generation (almost prehistoric) Android app we developed for an aviation logistics client back in 2009 when Android was first released (this allowed their fleet of 30 trucks to get real-time job details so they could for example get an aircraft braking system component to an aircraft stuck on the ground at Heathrow airport).