Understanding the Android ecosystem
Android is a challenging ecosystem with numerous customized releases. The following figure shows the usage of an Android version at the time of writing this book. As you will notice, at any given time there are different versions of an Android stack in use. Understanding the nuances and special needs of each version is a full time job in itself. You can always check the latest usage statistics available at http://developer.android.com/about/dashboards/index.html.
To add to the preceding problem, each manufacturer has a customized version of the Android stack with their chosen features and capabilities. On top of this stack, carriers add their customizations as well. This has created a highly fragmented market.