I'm working on getting an app on Amazon. It's been live for over a year on iTunes and Google Play as a free app with in-app purchases. I have the app setup for the Amazon store with the same in-app products, all showing a "live" status on their developer console. I've been using the IAB plugin from http://giderosmobile.com/labs/iab
, but that uses a deprecated version (1.x) of the Amazon purchasing library. The exported app built fine, and Amazon approved it, warning that it was incompatible with some newer Amazon devices due to the outdated IAP library.
In the Gideros source on GitHub I see the Amazon interface has been updated to use the current (2.x) version of the Amazon library: https://github.com/gideros/gideros/blob/master/plugins/iab/source/Android/src/com/giderosmobile/android/plugins/iab/frameworks/IabAmazon.java
Dropping that into my project, swapping in the new Amazon IAP library, and updating the manifest receiver element as per the current Amazon IAP sample, all builds and runs without errors, and Amazon approved the app, showing it compatible with all devices for which they test.
The problem is that IAB isn't actually working. Stepping through it in Eclipse I see that onUserDataResponse() is never called. That's a callback that should be called in response to PurchasingService.getUserData(), but it's not, so the Amazon IAB interface code decides that the IAP SDK is not accessible and gives up.
Has anyone encountered a similar situation and found a solution?
I'm basically grasping at straws at this point.
When you submit an app to Amazon they alter the APK, resigning the app. Does anyone know if that has to happen before the IAP will work? If so that would explain what I'm seeing when debugging in Eclipse, but not why the app delivered through the Amazon app store for live app testing isn't getting any response from the store. That would also be quite a barrier to further troubleshooting.
Any help would be greatly appreciated!