marchbold / marketbilling

Automatically exported from code.google.com/p/marketbilling
1 stars 0 forks source link

buying android.test.purchased get a verification error. #150

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
STEPS TO REPRODUCE:
I am testing In-app Billing. And I make a request buying 
android.test.purchased. The billing is success. However, the 
OnIabPurchaseFinishedListener gets a error reply.

EXPECTED OUTPUT:
the OnIabPurchaseFinishedListener get a succes replay

ACTUAL OUTPUT:
The log showes that:
10-18 08:48:39.688: E/IABUtil/Security(2910): Purchase verification failed: 
missing data.

The data signature is null, so the purchase verification failed.

It seems that the google play server returns a response without data signature.

Original issue reported on code.google.com by itop...@gmail.com on 18 Oct 2013 at 1:02

GoogleCodeExporter commented 9 years ago
yes, even i am facing the same issue, please let me know how to solve this 
issue.

Original comment by varunagp...@gmail.com on 23 Oct 2013 at 10:20

GoogleCodeExporter commented 9 years ago
I get a similar error:
5370-5370/? E/Main activity﹕ Failed to query inventory: IabResult: Error 
refreshing inventory (querying owned items). (response: -1003:Purchase 
signature verification failed)

The bug had appeared in the commit 
https://code.google.com/p/marketbilling/source/detail?r=7bc191a004483a1034b758e1
df0bda062088d840

Original comment by mashin87 on 28 Oct 2013 at 7:54

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Has there been a solution to this yet? 

Original comment by lukasz.s...@pixelpines.com on 20 Dec 2013 at 4:40

GoogleCodeExporter commented 9 years ago
same problem

Original comment by mikealbe...@gmail.com on 15 Jan 2014 at 8:39

GoogleCodeExporter commented 9 years ago
This issue has been resolved

Original comment by damcogro...@gmail.com on 24 Jan 2014 at 8:47

GoogleCodeExporter commented 9 years ago
Good. Where and how was this resolved?

Original comment by neean...@gmail.com on 5 Feb 2014 at 4:38

GoogleCodeExporter commented 9 years ago
I don't think it has been.  I'm getting this error on a gingerbread device, 
although it seems to work perfectly on Kitkat.  Not only is the data signature 
null, but the data itself is empty too.  And the weird thing is that the status 
is 0, so no error, and the subscription (this is a subscription) shows up in 
the play store app.  So its' there, but it's not being passed properly at least 
on gingerbread.

Original comment by f4tt...@gmail.com on 28 Mar 2014 at 5:36

GoogleCodeExporter commented 9 years ago
Updating myself--  I had a scary few hours where after purchasing a 
subscription on a Kitkat nexus 5 phone, another phone (old gingerbread one) 
logged in with the same account was getting this annoying -1003 error instead 
of recognizing that the subscription had been purchased.  I traced it down to 
the fact that the getpurchases() method was returning ONLY the 
INAPP_PURCHASE_ITEM_LIST (an array of strings of list purchases). The 
INAPP_PURCHASE_DATA_LIST and INAPP_DATA_SIGNATURE_LIST however were returned as 
null. (This was even though I could see the subscription in the Play app.)

The signature returned was null, so of course it got a signature verification 
error. After a lot of head-scratching/panicking about why it wasn't working, 
suddenly it started working (okay, like 6 hours later) without me doing 
anything.  Now it works reliably.  I presume Google Services/Play app finally 
flushed the cache and updated itself.

Given this, I think the solution may be to just silence that error until the 
full purchase info propagates to Play's local cache.  Or at least your program 
should know that it's possible that for a time you'll get your purchase(s) 
(just the sku(s)) without any signature or accompanying data.

Original comment by f4tt...@gmail.com on 29 Mar 2014 at 6:36

GoogleCodeExporter commented 9 years ago
Please tell me, How to resolve this issue.. In test purchase with real SKUs

Original comment by Bharath....@gmail.com on 23 May 2014 at 10:05

GoogleCodeExporter commented 9 years ago
Any solution to this? Makes v3 impossible to use.

Original comment by cory.tr...@gmail.com on 14 Dec 2014 at 3:02

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Tried to test in-app purchase verification using static responses.
Tested on Android 2.3.6(tester account), Android 4.2(developer account) and 
Android 4.4(tester account). Same signed version of app installed was on device 
and uploaded as draft in production to developer console.
In all cases INAPP_DATA_SIGNATURE was empty, but INAPP_PURCHASE_DATA was 
returned:
"packageName":"com.***","orderId":"transactionId.android.test.purchased","produc
tId":"android.test.purchased","developerPayload":"","purchaseTime":0,"purchaseSt
ate":0,"purchaseToken":"inapp:com.***:android.test.purchased"
Empty signature makes it impossible to test purchase verification with static 
responses.

Original comment by raschupk...@gmail.com on 23 Feb 2015 at 10:09

GoogleCodeExporter commented 9 years ago
At this point it is best to NEVER purchase any static response item. Not only 
do they not work, they actually block testing with real SKUs.

Original comment by cory.tr...@gmail.com on 23 Feb 2015 at 2:47