Googleplayservicescomponents: Xamarin GooglePlayServices version vs Google Play Services version

Created on 2 Aug 2016  路  3Comments  路  Source: xamarin/GooglePlayServicesComponents

I'm struggling to understand which Google Play Services version does the Xamarin binding map to.
This is important when for some reason you want to target a specific version of Google Play Services , for example you know there's a bug in a specific version.

So how does the Xamarin version map to the Google version?
I see it a very important information.... Maybe it's written somewhere already but I can't find it

https://developers.google.com/android/guides/releases
https://www.nuget.org/packages/Xamarin.GooglePlayServices.Location/

As of today, released version of Xamarin Google Play Services is v29.0.0.2 and Google Play Services is Google Play services updated to 9.2.1

Most helpful comment

This is a good question. Unfortunately historically the versioning of components (and eventually nugets) was dependent on the integer revision of the SDK released via Google's SDK manager, not their actual Google Play Services version string. We have discussed various ways to try and reversion the nugets, but short of changing all the nuget package id's, there isn't an obvious solution to the problem.

Instead going forward, I'm planning on doing a couple of things:

  • [x] 1. Add a table of version mappings to the repository's README
  • [x] 2. Add the current version string to the NuGet description

This should make things more clear in the future.

All 3 comments

I've installed the latest NuGet package Xamarin.GooglePlayServices.Ads, which is v29.0.0.2, and in logcat I can see this message:
_You are using version 8.5 of the Google Play Services Ads SDK. Please consider updating your SDK to the most recent SDK version to get the latest..._

And I'm also struggling with issue #16, which is a misleading error message, because I'm certainly setting the adSize attribute in my AXML. Maybe it's misleading because of the outdated SDK version?

This is a good question. Unfortunately historically the versioning of components (and eventually nugets) was dependent on the integer revision of the SDK released via Google's SDK manager, not their actual Google Play Services version string. We have discussed various ways to try and reversion the nugets, but short of changing all the nuget package id's, there isn't an obvious solution to the problem.

Instead going forward, I'm planning on doing a couple of things:

  • [x] 1. Add a table of version mappings to the repository's README
  • [x] 2. Add the current version string to the NuGet description

This should make things more clear in the future.

We've improved our versioning since this issue. Basically we are now following the rule:

[SDK Manager Revision].[Play Services Version].[Xamarin Version]

So for instance, the current latest stable is in the _Android SDK Manager revision_ 42, and _Play Services_ version is 10.0.1, we end up with 42.1001.0.

Was this page helpful?
0 / 5 - 0 ratings