i notice this into my logcat:
I/Google Maps Android API(2924): Google Play services client version: 5089000
I/Google Maps Android API(2924): Google Play services package version: 5089034
i know that these are two different versions of google play services.Can someone tell me the differences between these version?
Should their version be the same?
Package version : Is what you add to your project. (Google play service Lib)
client version : Is the actual version of the google play services installed in your phone.
I wouldn't say that you should always have the "latest" version supported. For example, if you do something like this in build.gradle
compile 'com.google.android.gms:play-services:+'
it will use the latest package version available. But sometimes, an update is released through the sdk to developers much before its counterpart client version hits the Play Store. #Cimat, I believe this reason behind the problem you had. Staying only as updated as the available client version ensures crashes don't happen, while providing you with the upgrades. Android automatically updates the Google Play Services jar anyways, so you need not worry about user laziness.
#amalBit, you're wrong.
client version is what you've added to gradle dependencies.
Package version : Is the actual version of the google play services installed in your phone.
client version : Is what you add to your project. (Google play service Lib)
Related
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.
Just installed a fresh Android Studio and Marshmallow Platform. I tried to run a GCM app and this happens.
Google Play services out of date. Requires 8487000 but found 8185470
Any ideas?
Thanks
Your phone hasn't auto-updated to Google Play Services 8.4 yet (it only has 8.1), and your app was compiled using Google Play Services 8.4.
Either change the version you are compiling with in the app/build.gradle to 8.1.0:
compile 'com.google.android.gms:play-services:8.1.0'
or wait for your phone to auto-update to the latest version.
You need to update Google Play Services application. You can use GoogleApiAvailability to obtain Intent for launching recover process.
I just made an app for android, so I try to upload it for ditribution through the play store, but when I upload the apk file, an error shows up saying that I use version 5208000 of the google play services, it say that I need to use version 5100000 or lower, it makes no sense it was just the version that the sdk manager downloaded. It does not have an option to download the previous one, I try to use compile 'com.google.android.gms:play-services:5.0.77' but it says that it is not found. How can I download it? I downloaded the google play services for froyo, I tried using the support library and nothing works. How come I cant use the latest version?
Google Play Services 5.2.08 is the Google Fit Developer Preview and not yet available on all devices. You should use 5.0.89 (which replaced 5.0.77 due to issues in 5.0.77) for production apps at this time.
Hello I am trying to use google-play-services_lib in my android project. As you know in android phone there is Google Play Service APK which provide a some features to you such as location fetching etc.
So I have confusion that Suppose user have Google Play Service APK version is 4.3 and I am using Google Play Services library version is 4.0.30 in android project to build the app.
Do we require same version on both side like build with same latest Google play service library and Google Play Services installed APK to make as like Push Notification, Location fetching work in this case or there is no link between them ?
Thanks in advance
They don't have to match.
The development of the library and the application is not completely dependant, that's why thier version number is different. As far as I know, each release of the services apk defines a maximum version of the library that is supported. So the only conflict could happen when the services apk is outdated (on the target device), and your application's library is a newer one.
The best you can do is to update the library, and the services application on your device.
It should work that way.
I dont think so that there is link between APK and supported libraries in that because the APK silently gets updated about libraries
i am using google play services in my project, i am trying to use google map v2 service in my app.
For this i included play services as dependency in build.gradle file as mentioned in this thread.
for now the latest version of play services is 3.2.65 and i am pointing to it. Ok.
So my question is ,In the future when google releases newer version of play services and the device has play services version above 3.2.65 which was specified in build.gradle file, will cause any problem or not? And will my application adapts the latest feature of play services automatically or i have to release updates of my application every time google releases newer version of play services.
And if not then is there any other way or including play services in module dependency so that my application will always use updated version of play services.
Thanks
My guess is you have to recompile your project with a newer version of the library.
Various library versions are downloaded on your machine and used to compile the project.
SDK_DIRECTORY/extras/google/m2repository/com/google/android/gms
Of course Google releases things in order to preserve compatibility, so if you don't need any new feature/API you don't have to update your project.
In your build.gradle file, you can also write in this way:
compile 'com.google.android.gms:play-services:3.1.+'
So you will pick up any new 3.1.x version whatever is the latest number.
In the future when google releases newer version of play services and the device has play services version above 3.2.65 which was specified in build.gradle file, will cause any problem or not?
No, it won't cause any problems. Google Maps Android API v2 is developed in a forward-compatible way. No change will ever be made that can break older apps.
And will my application adapts the latest feature of play services automatically or i have to release updates of my application every time google releases newer version of play services.
Depends. Most of the bug fixes are made in the Google Play Services app and you don't need to update client library. Because client library has almost no code, there is low chance any bug will appear there.
If you want to use new features, you will obviously have to update the library to be able to call new APIs.