4

I implemented Amazon IAP v2.0 on android application, on start of application I register PurchasingService, and call

    PurchasingService.getUserData();
    PurchasingService.getPurchaseUpdates(true);

And all is working while working in Amazon App Tester, but when I use Amazon Live Testing PurchasingService don't give any response (callbacks are not called : onUserDataResponse(), onPurchaseUpdatesResponse()). Also I used all specification for Proguard , and registered ResponseReceiver in manifest. All implementation was done using tutorial on amazon. In logs i have seen something like

D/AmazonBillingHelper﹕ checking isSubscriptionActive
D/AmazonBillingHelper﹕ currentSubscription is null

But I didnt implement AmazonBillingHelper

Also in log I found that there are some default listeners that ovveride my, is it ok ?

 D/Kiwi﹕ In App Purchasing SDK - Production Mode: d: PurchasingListener registered: com.my.package
 D/Kiwi﹕ In App Purchasing SDK - Production Mode: d: PurchasingListener registered: com.washingtonpost.android.paywall.billing.amazon.AmazonIAPListener

As I investigated this com.washingtonpost.android.paywall.billing.amazon.AmazonIAPListener is from Amazon App Tester, deleted it, but anyway it's not working

It's possible that it is connected with multidex build. Main dex should contain :

Custom, Applications, Activities, Services, Receivers, Providers, Instrumentations, Annotations

specification from amazon here and problem solving method on stackoverflow

starball
  • 20,030
  • 7
  • 43
  • 238
ilbets
  • 710
  • 1
  • 9
  • 35

1 Answers1

1

Apparently, Amazon App Test don't full fill requirements from live testing. Because generally if you call any request from onCreate() while testing in Sandbox - you'll receive response. On Live testing you should initialize listener in onCrate() but call any methods from onResume().

ilbets
  • 710
  • 1
  • 9
  • 35
  • did that finally solve it for you? i'm still experiencing this problem even when separating the calls between onResume and onCreate. it's also not clear if one should be creating a global listener at the application level or if one should do it at the activity level (like Google In-App API). you do have to specify the application context when registering the listener so i assume it's the former. – Joris Weimar Jul 17 '16 at 15:27