in-app-billing

Android: how to update an Android app with inapp billing?

[亡魂溺海] 提交于 2019-12-01 02:33:37
问题 Another way to ask the question: how to make inapp billing working with all versions of my app? I have got an app with inapp billing. I want to update it. My active apk on the developer console is in version 1. My problem is the following: when I install my updated app (signed package) in version 2 on my device using adb, I get the following message: "This version of the application package is not configured for Market billing" when I install my updated app (always signed package) in version

Are there multiple formats of In App Billing transactions?

↘锁芯ラ 提交于 2019-12-01 00:49:08
We're having problems verifying some of payment transactions (Google In App Billing V3). It looks like data of cumbersome transactions follows a different format than what we can see in transactions we have no problems verifying. Transactions that we are able to verify OrderId : Two numbers separated with a dot: 92299713162054702728.1224255970239541 Signature : Always includes base64 padding at the end, 345 characters long Transactions that fail to verify OrderId : One number: 5643493869375537013 Signature : Is missing base64 padding, 343 characters long (those are not actual ids) Adding

Google Play Developer API: “startTimeMillis” is updated when it should not

核能气质少年 提交于 2019-12-01 00:26:03
问题 I am developing an application with in-app subscriptions. On our servers, I check the validity of each subscription through the Google Play Developer API. As stated in the docs, a request to the Purchases.subscriptions endpoint, returns something like that: { "kind": "androidpublisher#subscriptionPurchase", "startTimeMillis": long, "expiryTimeMillis": long, "autoRenewing": boolean } However, I am finding some strange behavior with it. When a user cancels a subscription through Google Play app

in app billing fails in new version of my app

陌路散爱 提交于 2019-12-01 00:15:27
问题 My app has been in the play store for a while, and it worked. Yesterday I released an update, and found a bug in it, which I want to fix today. After uploading my alpha apk to the publisher page with a new version and versioncode(so I can test purchases), in app purchases do not work in this new version. I did not change any code related to in app billing. I'm using v3 of the iab library. I get this error message: 01-16 13:15:34.365: E/Parcel(707): Class not found when unmarshalling: com

In App Billing v3 IllegalArgumentException using IabHelper

房东的猫 提交于 2019-11-30 23:45:23
问题 I've had in app billing v3 implemented in my app for about a week now. I used a lot of android's sample code to simplify the integration. I've been logging a crash fairly often that I can't seem to reproduce: Exception Type: java.lang.RuntimeException Reason: Unable to destroy activity {[package].billing.BillingActivity}: java.lang.IllegalArgumentException: Service not registered: [package].billing.util.IabHelper$1@40646a70 It seems to be breaking on this line: if (mContext != null) mContext

Making in-app purchases with an google play account different from the device primary account

僤鯓⒐⒋嵵緔 提交于 2019-11-30 23:25:59
问题 Sorry if the title sound confusing. I hope that I can explain better here. We know that each device can have multiple google account of which the first created google account in the device will be the primary account. In google play app, user can actually select different google account to sign in to Google Play store on the device. If for example, the device primary account is myprimary@gmail.com and the user sign in to Google Play app with "anotheraccount@gmail.com". The user then made an

Google In-App Billing causing Exception

北城以北 提交于 2019-11-30 23:14:16
In one of my Android apps, I'm trying to implement a simple grab of the inventory from Google's In-App billing, but it keeps giving me errors at the line of mHelper.queryInventoryAsync(mGotInventoryListener); with the message that IabHelper is not setup. Can't perform operation: queryInventory Here is all the IabHelper code. mHelper = new IabHelper(this, base64EncodedPublicKey); mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() { public void onIabSetupFinished(IabResult result) { if (!result.isSuccess()) { // Oh noes, there was a problem. Log.d(TAG, "Problem setting up In-app

Google In-App Billing causing Exception

百般思念 提交于 2019-11-30 18:56:17
问题 In one of my Android apps, I'm trying to implement a simple grab of the inventory from Google's In-App billing, but it keeps giving me errors at the line of mHelper.queryInventoryAsync(mGotInventoryListener); with the message that IabHelper is not setup. Can't perform operation: queryInventory Here is all the IabHelper code. mHelper = new IabHelper(this, base64EncodedPublicKey); mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() { public void onIabSetupFinished(IabResult result) {

In-app billing. How to store information that user has paid?

醉酒当歌 提交于 2019-11-30 18:24:48
问题 There was a similar subject here Okay. We can find out about user's purchase using RESTORE_TRANSACTIONS request to Google Play. But. It is written in documentation that " You should use the RESTORE_TRANSACTIONS request type only when your application is installed for the first time on a device or when your application has been removed from a device and reinstalled." Why not after every start? It looks comfortable and possible to query Google Play every time when the app starts. Otherewise 1)

How to test in-app-purchases easily, without publishing or signing it first?

故事扮演 提交于 2019-11-30 17:47:50
Background My app has some in-app billing (like this one ), and I wish to test it out before publishing it. I've watched some google IO lectures and read some articles, and prepared everything. According to what i've learnt (talked about here ), all I need to do is just add my email to the test accounts, and it won't be charged. The problem It seems that in the developer console, the in app items cannot be activated. I think it's because the app isn't published yet, but that's the whole point of testing - I want to test the app before publishing it... As I've also found out, in order to test