Google Play Services got the new update today with new API level support. Google added 14th level APi support. The App is now updated to v10.0.14, It’s latest version of Google Play Services which is released by Google.
Know everything in detail at below.
Play Services v10.0.0 and Firebase client libraries for Android, will be the last version which support API level 9. Over versions now supports API level 14.
The new library release will increase the minimum support to API level 9 to 14. Know why Google discontinued Android Gingerbread and Honeycomb support in Google Play Services?
As per the Google, Gingerbread is now a very old platform. Almost six years old. According to the Google’s survey, many developers have already discontinued Gingerbread, support for their apps. Just to build the better apps for users with new Android Platform compatibility. Google is also thinking the same and that is why they discontinued the Google Play Services support for Gingerbread and Honeycomb Android Platforms.
Click Below to Download the Latest APK Version
Know, How Discontinuing decision effect to your Android apps?
If you are using Google Play Services version 10.0.0 and Firebase or below currently. It will continue to work with both Gingerbread and Honeycomb devices.
But, When you choose to upgrade to the new Google Play Services version 10.2.0, and if your app minimally supports API level 14 or greater (typically specified as “minSdkVersion” in your build.gradle), you will not encounter any versioning problems. However, if your app supports lower than API level 14, you will encounter a problem at build time with an error that looks like this:
“Error:Execution failed for task ‘:app:processDebugManifest’.
> Manifest merger failed : uses-sdk:minSdkVersion 9 cannot be smaller than version 14 declared in library [com.google.android.gms:play-services:10.2.0]
Suggestion: use tools:overrideLibrary=”com.google.android.gms:play_services” to force usage”
Now, If you are facing the above problem, then here is the best solution for it.
Running your app on older devices will not work here. In order to use latest Play Services
v10.2.0 and later, go trough the below suggestion.
1: Target Minimum API level 14 For Your App:
Here is the first solution, To discontinue support for API levels that will no longer receive Play Service updates, simply increase the minSdkVersion value in your app’s build.gradle to 14th.
So once you update your app in Play Store with this action, users of less than that level device will not able to see or download the update from Play Store.
According to the Google survey, the percentage of Android device users with less than 14 level API is too small. I personally believe that many of these old devices are not actively being used.
If your app is still having a big number of users with older devices, then go with the second option. Use multiple APK support in Google Play to deliver an APK that uses Google Play Services v10.0.0.
2 Build Multiple APKs to Support Less than 14 level Android devices.
With some configuration and code management, you can create multiple APKs of your app that support different minimum API levels, with different Google Play Services versions.
Build variants in Gradle can help you to accomplish this. You just need to define build flavors for legacy and newer version of your app.
i.e: In your build.gradle, define two different product flavors, with two different compile dependencies for the components of Play Services you’re using:
versionCode 901 // Min API level 9, v01
versionCode 1401 // Min API level 14, v01
If your app is in the above situation, there are two product flavors being built against two different versions of the Google Play services client libraries.
This action will work fine if only APIs are called that are available in the 10.0.0 library. If you need to call newer APIs made available with 10.2.0, you will have to create a compatibility library for the newer API calls so that they are only built into the version of the application that can use them:
Declare a Java interface that exposes the higher-level functionality you want to perform that is only available in current versions of Play services.
Build two Android libraries that implement that interface. The “current” implementation should call the newer APIs as desired. The “legacy” implementation should no-op or otherwise act as desired with older versions of Play services. The interface should be added to both libraries.
Conditionally compile each library into the app using “legacyCompile” and “currentCompile” dependencies.
In the app’s code, call through to the compatibility library whenever newer Play APIs are required.
Now, publish your both version on Play Store, and device will update with the most suitable version for that device.