How to find Google Play Services version from the constants? - android

I just got an e-mail from Google saying that they are deprecating the version 6.4.1 of AdMob and I need to upgrade the library in order to use the Ads in the application:
...we are deprecating versions 6.4.1 and lower of the Android Google Mobile Ads SDK on September 15th, 2016.
In order to ensure that your ads continue to serve after September 15th, 2016, please upgrade to Google Mobile Ads SDK 7.0.0 or higher...
The problem is that I have lost the entire project (source code) and certificates, and I want to know the version of my AdMob. This is what I got from reverse-engineering:
public static final int GOOGLE_PLAY_SERVICES_VERSION_CODE = 6587000;
This is the constants value of: android:value="#integer/google_play_services_version"
Is this the version of the Google Play Services or the Admob? What version 6587000 represents (6.5.8)? I cannot find anything on the internet compared to the Google Play Services release notes.

Last version of Admob standalone SDK is 6.4.1. After that all new versions comes with Play Services. I could not find which version it was introduced but as far as I remember It was with Play Services 8.
But android:value="#integer/google_play_services_version" comes with the Play Services 13. So if your app has integer/google_play_services_version then it is using new versions of Admob, so you will not have any problem with the depreciation.
Also consider this old note from Google; "On August 1, 2014, the Play Store will stop accepting new or updated apps that use the standalone Google AdMob SDK. The SDK does not use the Advertising ID, and will therefore be non-compliant with the Google Play Ad Policy on this date."
Version 6.4.1 does not have Advertising ID. So if you updated your app after August 1, 2014, then your app will have newer versions of Admob.

yes , eg play service version 4.1.00 has code 4100000 and version 6.5.87 has code 6587000.but you can not decide the ad sdk version (especially for android). In the mail they mentioned the ad sdk version. you can view some confusing version history for android here and here
if your app is published after August 1, 2014. you are not worry much about this email.
google play service introduce sdk 4.0 onwards release_notes.
note if your app has integer/google_play_services_version then that is not mean you are using new versions of Admob (after 6.4.1 introduce gps module in the ad).

Email from Admob was very confusing to me.
Here is reply I found out on admob developer forum by Admob team. Hope this helps to clarify further
****"Hi Josue,
After talking with the rest of the team, the note you have gotten about the SDK needing to be higher than v6.4.1 refers to a legacy, standalone Mobile Ads SDK that was deprecated back in February 2014, and that had its own versioning system. That deprecation does NOT refer at all to the use of Google Play services. What that means is even if you are using Google Play services 4.0 which was released back in October 2013, you are still OK.
Vu Chau
Mobile Ads SDK Team"****
Last line makes it very clear, if your google_play_services_version > 4 , you don't need to make immediate update however it's good practice to upgrade to latest versions of play services library
Date 9/9/2016 Updated link from Admob for further clarification- https://firebase.google.com/docs/admob/android-legacy-release-notes

Related

Google Play Billing Unity plugin alternative

I'm new to Unity IAP. When looking for a way to integrate Google Play IAP into a unity project, I found the "Use the Google Play Billing Library with Unity" documentation which states:
The Google Play Billing Unity plugin will not be receiving updates moving forward. This means that the plugin will remain specific to Google Play Billing Library 3. Additionally, any apps that are updated after November 1, 2022 will no longer be able to use the plugin.
Does Google provide an alternative? Or should I just use Unity's IAP integration directly instead?
I came across the same text just now. I believe you are correct in your assumption that Unity IAP is the correct replacement for this, since according to their documentation UnityIAPGooglePlay the current version of this plugin already uses Google Play Billing v4, which is the minimum required version starting Nov 1.

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.

How to resolve Google Play Services library dependency with minimum required version

I am trying to include a SMS feature from Google play services support libraries to improve the authentication process. The documentation around it recommends using atleast minimum of 10.2 play services in order to use it.
Prerequisites:
The SMS Retriever API is available only on Android devices with Play services version 10.2 and newer.
However, when I go to build my project specifying the 10.2.0 version of in gradle, Android studio tells me it is unable to resolve this dependency from either jcenter or google's repos.
compile 'com.google.android.gms:play-services-auth-api-phone:10.2.0'
Error:org.gradle.internal.resolve.ModuleVersionNotFoundException: Could not find com.google.android.gms:play-services-auth-api-phone:10.2.0.
I tried searching for the package, but couldn't find that version: google's maven repos only show 11.0 and above.
It would be really helpful if someone could point me to the minimum available version of play services libraries over 10.2 that can be used to make this work.
Versions of Google Play services prior to 11.0.0 are only available through the SDK Manager. Make sure you have installed the Google Play services item in the SDK Tools tab of the SDK Manager.
However, in the case of the SmsReceiverClient API, that class was only added in Google Play services 11.0.0 SDK. It may be that the underlying implementation did exist back to 10.2, but was not public.
In any case, Google Play services releases an SDK only after it is made available to all users and will automatically update the vast majority (99.5%+) of users within the first week or two of availability. Given that 11.0.0 has been available for over 6 months, it should not be any issue in relying on the 11.0.0 library.

Upgrade your Android Google Mobile Ads SDK to ensure ads keep serving

I received this message today:
Hi AdMob Publisher, In early July, we sent out a notice to AdMob
Publishers who have apps running on SDK version 6.4.1 and lower, to
inform them about deprecating SDK versions and the need to upgrade by
September 15, 2016. We apologize for any inconvenience or unclarity
that the email may have caused to some developers. To ensure that you
have sufficient time to make the changes, we have extended the
deprecation date to October 17, 2016. We also reevaluated the SDK
versions being deprecated, so here is the updated information. What
will happen starting on October 17, 2016: • All support for non-Google
Play Services supported SDKs and Google Mobile Ads SDK version listed
here will be deprecated. • This means that all traffic from these SDKs
will be disabled. What you will need to do: In order to ensure that
your AdMob ads continue to serve after October 17, 2016, please
upgrade your apps to run on the minimum SDK versions listed here. If
you are using a Google Mobile Ads SDK version from Play Services that
is listed on this link, you are not required to take any action. If
you have any questions, please contact us on the developer forum.
Thank you, and stay tuned for more updates and tips. Cheers, The
AdMob Team
I am using Play services Version 4.4.52-000. Is this version ok? Do I need to update?
Click on link provided in email https://firebase.google.com/docs/admob/android-legacy-release-notes
"Prior to becoming part of Google Play services, AdMob had a
standalone SDK with the following versions and release notes listed
below ( Refer to link ).
On October 17th, 2016, AdMob will stop serving ads to the SDK versions
listed below. If your apps are still using any of these SDKs, follow
our Get Started to integrate with AdMob's Google Play services SDK."
The note you have gotten about the SDK needing to be higher than v6.4.1 refers to a legacy, standalone Mobile Ads SDK that was deprecated back in February 2014, and that had its own versioning system.
If your google_play_services_version > 4 , you don't need to make immediate update however it's good practice to upgrade to latest versions of play services library.
EDIT 7-Oct-2016: If you are using a Google Mobile Ads SDK version from Play Services that is listed on this link, you are not required to take any action.
I think majority of confusion occurred due to version numbers between Admob Standalone SDK and version number of Google Play Services.

What is google play-service distribution in android devices version wise?

Just like Android give android version distribution worldwide?
I want same way google play-service distribution.
On the website, Google mentioned the only year of release.
Actually, we are using google map in our app so we wanted to confirm what should be our minimum play-services version so that it should work even if the user has not updated play-services.
My app minimum version is 15.
Afaik there is no official maintained distribution information like for the different Android OS versions.
But there are some hints about the distribution:
In 2014, Sundar Pichai made an official statement about the play services in the Developers keynote:
"Google Play Services ships every six weeks and 93% of our users are on the latest version of Google Play services across all versions of Android. In fact by shipping every six weeks we can, in many ways, iterate faster than the typical OS release cycle."
You can watch that on youtube, at around minute 45 and 35 seconds.
Since the play services are updated by the Playstore itself without requiring further interaction or confirmation of the user, I think you can assume that most users are quite up-to-date. So if you set the minimum required version to a version that was released some months ago you should include most of the users.

Categories

Resources