An easy to use operating system, accessible to the general public at cheap prices, millions of applications and games in the best app store … All these are some features that make Android an excellent operating system, in fact the most bought operating system on 2016 in the United States. However from Android Apple Pie to Android Marshmallow, fragmentation has been a problem.
Android is an open software, and this cause that the Android devices are all different, have different features in terms of resolution or internal memory capacity, among others. Due to this while Android brings to market better versions of the system, Smartphones with old systems are no longer receiving support.
What’s happening now
With each new version of Android launched by Google, the company publishes a document that defines the rules of compatibility that manufacturers must follow in order to launch terminals with Google Apps and Google Play; This year, two and a half months after its presentation, the Android 7.0 Compatibility Definition Document, known by its acronym CDD, is now available.
While it is true that Android is defined as open source, most of Google applications are not, so manufacturers must sign a license agreement called the Mobile Application Distribution Agreement (MADA), in addition to passing compatibility tests Of Google to ensure that their terminals run applications correctly on Android.
It is in the CDD where important updates have been made, most of them are about how manufacturers should code the new features of Android 7.0, but there are also new statements that draw attention, as is the mention of Android Extensions, in the Section 3.1.1 below.
Android includes the support of extending the managed APIs while keeping the same API level version. Android device implementations MUST preload the AOSP implementation of both the shared library ExtShared and services ExtServices with versions higher than or equal to the minimum versions allowed for each API level. For example, Android 1.0 device implementation, running API level 24 MUST include at least version 1.
This section, which was not present in the Android Marshmallow CDD, refers to an Android extension of functionality using the ExtShared and ExtServices shared libraries, which should be compulsorily included by manufacturers on their, Android Nougat smartphones and tablets.
What does it means?
One of the theories is that Google is want for these libraries to work as Google Play Services does, which is actually just an apk that can receive updates from the app store. In the case of Android Extensions, it would be GoogleExtShared.apk and GoogleExtServices.apk, two files that could be updated without difficulty through Google Play.
If this interpretation that Ars Technica has given to Nougat’s CDD, we would be talking about a possible solution to the fragmentation problem that has been affecting Android for a long time, because it would allow the latest version of the operating system to be distributed more efficiently.
Google is the culprit
Some users comment that it will be difficult for manufacturers to comply with Google’s requirements to install Android Nougat updates.
Usually as mentioned above, it is common for manufacturers to blame, because they do not want to devote time and resources to upgrading smartphones for those who are no longer going to receive benefits. Already have sold, and prefer to sell new mobile to update the previous. However, this is not what happens on this occasion. Rather, it is that Google is putting too many demands so that the mobile can upgrade to the new version of the operating system.
It is considered that the characteristics that ask Google to manufacturers are very limiting. One of the Google’s requirements is that, the mobiles must have components that are supported by Android AOSP. This is not the case for the Qualcomm Snapdragon 800 and Qualcomm Snapdragon 801. This means that mobile phones such as Sony Xperia Z3, ZUK Z1, OnePlus X or Xiaomi Mi Note, among others, will not upgrade to the new version, at least not officially. This is the Google’s fault, and so with some other Google’s requirements.