-
-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Android] Warnings re version of version of Google Play Developer API #221
Comments
Hi @jrc14 - we are using this plugin and have not yet received an email from Android. I'll be keeping a close eye on this just in case 👀 Maybe you just need to update the Xamarin.Android.Support files and/or Xamarin.GooglePlayServices to their latest? If you see a newer version being offered (in brackets to the right of each entry highlighted) then I would update those first. I'm not sure how you can verify what version of the Google Play API client libraries otherwise. |
Yes, it is using version 2. I will put this on my list to implement version 3 soon. |
Looking forward to seeing this fixed as well. Aside: would it make sense for this plugin to fold into Xamarin Essentials? |
Hi @jamesmontemagno How soon do you think we can have version 3 support by? |
@jamesmontemagno any movement on the upgrade to v3 on billing? |
Yes, we have a binding in place and I plan on working on it by end of this month. Not sure how large the change is just yet. |
Would be awesome to see this updated soon. Hope it's not too major. Thanks for this great plugin. |
Heh, how is the work going ? , I have three apps using this so need to schedule time to upgrade and test them all before the Dec 1st cut off. |
Work has started on this :) https://github.com/jamesmontemagno/InAppBillingPlugin/tree/feature/android-billing-client I am working with @Redth on the binding to the new API. It is going to be some work that is for sure. |
I can see three commits on this feature branch. Does this mean that there will be a release anytime soon? I'm holding back on a new app until this issue is resolved. |
Does this affect absolutely everyone who uses this module? I use it for making and retrieving purchases, but I have never seen a warning in the Google Play Console regarding this... ...a little surprising considering the effect it would have if I were to take no action. |
This is every single app ever created for Android regardless of framework. @bellissimo I wouldn't hold back your app release @erviem99 based on this. I am not sure if just adding the new library will actually pass or if I need to implement the fully new API, so we will see. I'll probably push out a new beta soon to test, but need to see what the console says. |
@bellissimo I just recently saw a notice in the Play developer console (no e-mail), suspect it is this. Perhaps Google is just very slowly checking all the apps on the store for compatibility? @jamesmontemagno Thanks for working on it. |
@BioTurboNick Still nothing for me in the console, so you may be right. Considering this is such a serious breaking change, I am surprised they have not been more pro-active in raising this with developers. This would cause a major issue for my app if I don't address it well in advance of 1st Dec. @jamesmontemagno While waiting for this module to be fixed, would be it be fine to use the Xamarin.Android.Google.BillingClient package in the meantime? This has very few downloads in NuGet, but seems to be a wrapper for the Google Play Billing Library. Presumably this avoids the API issue we have here? |
@jamesmontemagno Is there a fix for this coming anytime soon? Dec. 1 is not very far away and Google is warning me about this. |
I am wondering how about this nuget. Is that something we can use ? https://github.com/xamarin/XamarinComponents/tree/master/Android/GoogleBillingClient |
@EmilAlipiev I asked this a month ago, but not heard back yet. From the looks of it that is a relatively new binding for the Android Billing library, so I guess it should be fine to use. I will have to switch to that package instead, if this library is not updated soon. Users need time to update their apps and I don't want to leave it till the last minute. |
@jamesmontemagno how is progress going on integrating with the new billing V3 API? As mentioned, we're not far off from 1st December and I'm sure we would all like time to integrate, test and prepare for new app releases ahead of this date, realistically by 1st Nov which is only 28-days away. Could you give us an indicated ETC please? |
Also, what can we do to help? |
I second the request for an update. While I would much prefer to keep using this plugin, it would be good to know if there will be an update completed for the start of November so that we can start to code and test an alternative integration. |
It looks like that is the billing client that James has started to use already if you check his PR: https://github.com/jamesmontemagno/InAppBillingPlugin/pull/237/files#diff-08c081149f48aedb20064b092c4d9217R55 @jveltd being OSS, I don't believe you can ask for, let alone get, a ETC considering it is being done in someones free time. Unfortunately you are right, and we are fast approaching a deadline, and knowing how poor users are at updating their apps, this is not looking great. The PR is open and can be branched, so I guess it is up to us to try to work in a solution and then contribute that back to the community. |
+1 for a definitive route for Google Play IAP's v3 asap - we too would like to roll out before November to iron out any issues. |
Not everyone has the experience to do this - I certainly don't, but I'd be willing to learn if there's a resource that guides you (Git pulls, Android bindings, adding automated tests, etc). I think that if Microsoft want to continue pushing Xamarin as their platform for mobile then it's them that should be ensuring key nugets are maintained (I think IAP falls firmly in this category), not relying on James, or falling back to the good will of contributors - who are all amazing. I have seen the Sponsor button in #237 - not sure if this is the best place to sponsor, or directly in this page? Would sponsoring assist getting this completed earlier? |
I saw this too - I would be happy to sponsor this fix to be rushed into this library, but it seems to point towards James's podcast as a recurring monthly subscription thing? It wasn't clear if it related directly to this library. |
@mgoodfellow I think the point is that if there is an update imminent, then people can hold off from doing their own separate implementations. It was stated a while ago that work has started on this, so it doesn't seem unreasonable to ask whether it may be ready in time, regardless of whether this is a voluntary project or not. I am certainly not expecting an exact release date, just an idea of which direction to take based on whether James has the time to complete this or not. I must admit I thought that James worked for Microsoft and that this was an officially endorsed plugin. There does not seem to be any other working IAP module for Xamarin Android (other than the recently created Android Billing nuget). |
@bellissimo Judging by the activity on this library and on the PR, it seems work was started when James was last active on this thread, and nothing has happened since then. Even after further posts on this issue thread. Unfortunately, it is OSS, and it is fully dependent on someone's free time - hence I just wanted to make sure we were maybe asking for things in a mindful manner, rather than being demanding about this. Yes it affects all of us, and yes we have looming deadline. James is active elsewhere on github judging by his activity in my feed, but not on here, so I guess we need to work on something ourselves. Now unless I'm going crazy - going on from what @devology-rob said - actually I just checked the Xamarin docs and I can find iOS StoreKit docs: https://docs.microsoft.com/en-us/xamarin/ios/platform/in-app-purchasing/ But actually it seems the Android docs have been pulled (tried searching), and I cannot find them in the menu here: https://docs.microsoft.com/en-us/xamarin/android/ So that is pretty shocking if Microsoft have dropped support for it... |
Were the docs ever there though? They would have to have pointed surely to this library (given that until recently there was no other library available for Android IAPs), and if this library is not official then that seems unlikely... |
No, they were there previously - it spoke about using the Xamarin Android Support libraries (as this library uses) When I started the project I was working on a few years back, I was looking at building a shim layer myself when I found this library which made my life a lot easier. I'm almost certain that Microsoft have pulled the old docs as they are no longer supported by Google, but don't seem to have documented the alternative :( |
I guess when the AIDL was a supported way of doing things, it was possible to provide C# based documentation without relying on any third party libraries. If they want to provide example code in C# now, it would have to be based on the new Android Billing Library in nuget I suppose. Hopefully it will be updated in time. |
Well, the new GoogleBillingClient is raw bindings, and I noticed that they were added by @Redth who James referenced earlier in this thread - #221 (comment) Might be time to start referring to the raw Java docs - I must admin I haven't had to generate any platform specific bindings before - I've been lucky enough that someone has always mapped them before me |
I have done it a few times. It can be tricky, but you can usually muddle through. If you checkout the bindings and change AAR_VERSION to 2.0.3 in the build.cake file, you should then be able to build the bindings for the latest version of the library. |
I have released version 3.0.0-beta. See information here on this: https://github.com/jamesmontemagno/InAppBillingPlugin/pulls/237 I documented what I did in the PR. |
Thanks @jamesmontemagno ! I will load this into a beta and get it out, if all is good I will ship to full production With regards to the warning however:
https://android-developers.googleblog.com/2019/03/changes-to-google-play-developer-api.html This means that even an old version being used could trigger the warning I think, so hard to tell if it is effective. Might be worth spinning off a new app and see if the warning comes up maybe? |
So reading this thread: https://stackoverflow.com/questions/56700332/what-is-we-ve-detected-that-your-app-is-using-an-old-version-of-the-google-play I don't actually think it is this library at all to be honest with you. It is saying that your app somehow is connected. I don't get this warning at all on my apps and neither have others. |
My assumption here is that some CI or other tool uploaded to Google Play and used these APIs such as VS, App Center, HockeyApp, CircleCI, Bitrise, DevOps, etc. Or there is receipt validation on the backend. From what I have seen this is not with the use of this library as I have confirmed in my app and in others that they don't get this warnings. Others are saying that this is a false positive on their end. |
A question: for those of you seeing the warning, are you seeing it persistently or transiently? If persistently, where are you seeing it? Thanks. (I ask because I recall seeing it once many months ago, but I haven't seen it since.) |
In Google Play Console, if I go Dashboard for my app it appears there. |
I put out a new version of my app and stopped seeing the warning. I enabled 64-bit builds for the APK (another coming requirement) and updated Xamarin.Forms, so I wonder if between those things it got fixed? |
I received an email warning a few months ago saying my app was using the old API. However as I mentioned previously, I have never seen the warning in the console. I wonder if the warning was generated by Visual Studio, which may use the API to upload builds to the console. If this is a false positive that is great news. Will check out the beta as well, thanks @jamesmontemagno |
Just adding to also confirm that this package was not the cause of the warning for us. We found we were using v2 endpoints to verify Google Play IAP receipts. After updating those to v3 the warning has not shown up again and there had been no app updates during that period. |
Hi @leenephi can you describe how you have updated your endpoints to v3? We are also verifying Google receipts and its the only thing I can think of that is the issue. In the Google Cloud Platform I use the Google Play Android Developer API to verify receipts and publish app to the store, but I do not see any reference to what version it is or how to update it (or maybe I going down the wrong path). |
Hi @c-lamont if you are on .NET on your server, simply swap: https://www.nuget.org/packages/Google.Apis.AndroidPublisher.v2 for https://www.nuget.org/packages/Google.Apis.AndroidPublisher.v3 The contracts are the same, and no code change is required. It fixed the issue for me too. |
Hi @mgoodfellow We are indeed using https://www.nuget.org/packages/Google.Apis.AndroidPublisher.v3 We had an old version of the app still retained in our account (which is using an old backend) which I have removed and hope that this is the reason I am still getting the error message. Google Play says it checks for up to 7 days if the old API is used so I just have to wait and see if this is the issue. |
Just to confirm again, this warning affects server-to-server comms only so this nuget doesn't require an update. I believe on our own server we're already on V3 so we've not seen any of the warnings on the Google Play console.
https://android-developers.googleblog.com/2019/03/changes-to-google-play-developer-api.html |
Hi I've many apps on Google Play, all with In App Xamarin billing controll, but and I've seen the "Warning" only in 2 Apps that I've updated recently. To be sure last week I've modified 1 app with the more recent Montemagno sotware and the beta release 3.0.0, but the Warning still remains. |
I'm quite clueless on what causes this issue. As @jamesmontemagno stated, this has nothing to do with this plugin but probably VS2019 distribution. My question is then, how do I change this to use Api V3? edit I'm using Google Play distribution inside VS2019 to publish directly to Production. |
@ludas96
|
@SalvinoM I chose "Ad Hoc" after archiving my new build and uploaded the APK directly on Play Console. |
Hi
It’s the approach I intended as “manually”.
Salvino Marras
From: Ludvig Åslund
Sent: Thursday, November 7, 2019 9:10 AM
To: jamesmontemagno/InAppBillingPlugin
Cc: SalvinoM ; Mention
Subject: Re: [jamesmontemagno/InAppBillingPlugin] [Android] Warnings re version of version of Google Play Developer API (#221)
@SalvinoM
Right.
I chose "Ad Hoc" after archiving my new build and uploaded the APK directly on Play Console.
Is this the same as manually uploading, or do i have to move away from VS completely while archiving/signing etc?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
…--
Questa email è stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
|
Update on previous comment. Manually uploading the App made the warning go away after 7 days. |
Google have sent me a warning email saying that "versions 1 and 2 of the Google Play Developer API will no longer be available" and mentioning that "you are currently using one of these versions". As far as I can see, my project is not directly referencing any version of the Google Play Developer API, so I think this must be triggered by the InAppBillingPlugin.
Is the current build of InAppBillingPlugin using v3 of the Google Play Developer API?
Bug Information
Version Number of Plugin: 2.0.0
Device Tested On: various
Simulator Tested On: none
Version of VS: 2017 15.9.3
Version of Xamarin: 4.12.4.73
Versions of other things you are using:
Steps to reproduce the Behavior
Run the app in production.
Expected Behavior
Google do not send me emails about deprecated versions of the Google Play Developer API.
Actual Behavior
Google do send me emails about deprecated versions of the Google Play Developer API.
Code snippet
n/a
Screenshots
None - but here is the text of Google's email to me:
Hello Google Play Developer,
Starting December 1, 2019, versions 1 and 2 of the Google Play Developer API will no longer be available. We’re reaching out because you are currently using one of these versions, and we wanted to make sure you are aware that if you do not migrate to version 3 by this date, API calls will result in errors.
At last year’s Google I/O, we introduced version 3 of the Google Play Developer API. In addition to all the features offered in versions 1 and 2, version 3 allows you to transactionally start, manage and halt staged releases on all tracks, including production, open testing, closed testing (including the new additional testing tracks) and internal testing.
Action required
For more information, please reference our blog post.
We hope you enjoy the new features of the Google Play Developer API, and we look forward to your continued feedback to help us improve the developer experience on Google Play.
The text was updated successfully, but these errors were encountered: