Status of Google Play Services 3.1 - android

Android documentation here says new Google Cloud Messaging API requires Google Play services version 3.1 or higher on the device.
What is the status of implementation of this service?
Are all android devices updated with Google Play services version 3.1 or higher?

Since Google Play Services are automatically updated on devices via Google Play, the vast majority of devices are running the latest version. It updates whenever the user connects to the internet, without user interaction.
I can't seem to find any statistics on this, but I'm fairly sure that all 2.2 and above devices will be running the latest or penultimate version.

Related

How to add firebase to android project with Google Play Services 14.x

I want to add firebase to my react-native project.
As the documentation says it needs a device running Google Play services 15.0.0 or later.
I have a device which has Google Play Services version 14.7.99 and it is the latest version for my device. (As i understood Google Play Services latest version differs from device to device)
So is there a way to use firebase in devices with Google Play Services version 14?
Thx in advance
As it quite clearly states in the documentation
A device running:
Android 4.1 (API level 14, Jelly Bean) or later
Google Play services 15.0.0 or later
If your device cannot run Google Play Services 15.0.0 or later then there is no way to get Firebase to run on that device.

What is the correct version of Google Play Services needed for Firebase Performance Monitoring?

I'm trying to integrate Firebase Performance Monitoring on an application in which I have already successfully installed Firebase (in fact, I'm already using Crashlytics in this app).
The documentation states that in order to use Firebase Performance Monitoring, the device must have Google Play Services installed.
However, my problem is that I've found what appears to be a bunch of inconsistencies between the documentation and the actual version of Google Play Services available in the Play Store.
The prerequisites section of the documentation states:
Before you begin, you need a few things set up in your environment:
A device running Android 4.0 (Ice Cream Sandwich) or newer, and Google Play services 16.1.2 or higher
Also, further in that same page, it says:
Test your app using an Android emulator with a recent image and Google Play services 15.0.0 or later, or using a test device with Google Play services 15.0.0 or later.
On the other hand, the Play Store app on my device (running Android 6.0.1) shows that I have Google Play Services up-to-date, having version 13.2.80, updated on September 6th, 2018:
On top of that, APK Mirror shows that the most recent stable version to the date is 14.3.66, updated on October 3rd, 2018
Nevertheless, the official release notes show that there are no 13.2.80 or 14.3.66 versions and that starting on version 15.0.0, launched on April 12th (almost six months before 13.2.80!), they use SemVer with different versions for their different products.
So my question is: how do I get the correct version of Google Play Services needed for Firebase Performance Monitoring installed on my device?
Any clarifications on why this 13.2.80 version that I have installed or the 14.3.66 version provided in APK Mirror are not mentioned in the official release notes would be appreciated, too.
You have not got an update by Google on your device (6.0.1), latest versions of Android OS are updated to the stable version of Google play services 14.3.66. So you can test your application on emulators or any other devices.

Firebase: How can I ensure compatibility with various versions of Google Play Services?

I want to incorporate messaging/Push notifications in my Android App and since FCM is the newest version recommended, I just checked the Firebase prerequisites and it says,
Prerequisites
A device running Android 4.0 (Ice Cream Sandwich) or newer, and Google Play services 10.2.0 or higher
The Google Play services SDK from the Google Repository, available in the Android SDK Manager
The latest version of Android Studio, version 1.5 or higher
But, it isn't so that all the devices running ICS will have Google Play Services >= 10.2.0. Infact, this is the latest version of it. So, if I decide to go with FCM, all the devices having Play Services <= 10.2.0 will be out of my reach. If then I decide to bump the version down, Firebase doesn't seem to support any.
I want to use Firebase's and Google Play Services newest features and extend my support for devices running Google Play services >= 9.0.0.
This seems to be a fundamental problem with any library. Android provides Support library to mitigate this.
What is the recommended approach to support all these Play Services versions?
Just have the user update to the latest Google Play Services, by placing checkers. From the docs:
Apps that rely on the Play Services SDK should always check the device for a compatible Google Play services APK before accessing Google Play services features. It is recommended to do this in two places: in the main activity's onCreate() method, and in its onResume() method. The check in onCreate() ensures that the app can't be used without a successful check. The check in onResume() ensures that if the user returns to the running app through some other means, such as through the back button, the check is still performed.
If the device doesn't have a compatible version of Google Play services, your app can call GoogleApiAvailability.makeGooglePlayServicesAvailable() to allow users to download Google Play services from the Play Store.
Every device API 14 or higher (the new minimum SDK version as of 10.2.0) that has Google Play services is automatically upgraded to the latest version of Google Play services - in fact, a new version of the API only becomes available to developers when it is available on 100% of devices.

Find out if Google Play Services can't be updated

I have an app that is released and working great. Every now and then few users post me and say that the app requests them to update Google Play Services but Google Play doesn't show the update. This is because their device is no longer supported by the latest version of Google Play Services.
Is there any other way to determine if a device is supported by the version of Google Play Services which you are using, other than checking if the device runs Android 2.3 or higher? (2.3 or higher is quaranteed to have the latest version)
You can use PackageManager to get versionCode of Google Play Services installed on the device (if present):
int versionCode = getPackageManager().
getPackageInfo("com.google.android.gms", 0).versionCode;
and show Dialog to the user, but I'd personally do nothing about that. If the latest version of platform is 2.3 just set minSdk to 2.3 - that would eliminate users on older versions (which makes no difference as they would not be able to use your app anyway).
EDIT
If you care your pre 2.3 users then you can release separate app that is build against Google Play Services for Froyo.

Is google play services app required for GCM to work?

I was trying to run the Google Cloud Messaging code on Eclipse. The Error SERVICE_NOT_AVAILABLE was coming on emulator and a tablet running 2.2.
So after looking on the internet for some time i included isGooglePlayServicesAvailable() check in my code which returned status code 1 meaning SERVICE_MISSING.
from developer.android.com docs i came to know this
To test your app when using the Google Play services SDK, you must use either:
A compatible Android device that runs Android 2.2 or higher and includes Google Play Store.
The Android emulator with an AVD that runs the Google APIs platform based on Android 4.2.2 or higher.
So my question is that for registering an android 2.2 device which has a Google Play app, is Google play services required as well?
Since my tablet is running on android 2.2 with a google play app but no google play services and the emulator i was running was less than 4.2.2, is this the reason that GCM was giving an error of SERVICE_NOT_AVAILABLE.
I didn't see any other error in Logcat as well.
Any help would be appreciated.
Thanks
So my question is that for registering an android 2.2 device which has a Google Play app, is Google play services required as well?
If you are going to use GoogleCloudMessaging, my understanding is yes, you need Play Services. The older GCM API that does not use the GoogleCloudMessaging class should work on devices without Play Services, as it worked on such devices before Google I|O 2013, when there was no GoogleCloudMessaging class.

Categories

Resources