在使用Amazon App Tester测试应用内购买时,应用在此行中崩溃
RequestOutput response = IAPService.Purchase(request);
我正在跟踪code sample from here
在"输出"窗口中,似乎已成功调用购买。
06-06 19:42:56.238 D/Mono (24121): Searching for 'nativePurchaseJson'.
06-06 19:42:56.238 D/Mono (24121): Probing 'nativePurchaseJson'.
06-06 19:42:56.238 D/Mono (24121): Found as 'nativePurchaseJson'.
06-06 19:42:56.240 D/AmazonIapV2 Bridge(24121): Executing native Purchase
06-06 19:42:56.246 I/AmazonIapV2(24121): purchase called
06-06 19:42:56.247 I/AmazonIapV2(24121): purchase sku:carquiz.coinsforsale1
06-06 19:42:56.247 D/c (24121): In App Purchasing SDK - Sandbox Mode: sendPurchaseRequest
06-06 19:42:56.267 D/AmazonIapV2 Bridge(24121): java method called
06-06 19:42:56.268 D/AmazonIapV2Android(24121): Successfully called native code in 30 ms
我还在AndroidManifest.xml文件中添加了以下权限:
<receiver android:name="com.amazon.device.iap.ResponseReceiver">
<intent-filter>
<action
android:name="com.amazon.inapp.purchasing.NOTIFY"
android:permission="com.amazon.inapp.purchasing.Permission.NOTIFY" />
</intent-filter>
</receiver>
我已经注册了PurchaseResponse
事件,但这从来没有调用,因为它在购买过程中崩溃。
iapService.AddPurchaseResponseListener(EventHandler);
我错过了什么?
- 更新日期:**
我注意到我的手机通知栏中有一条来自Amazon App Tester的通知。它只是部分可见,无法展开以显示完整的消息。点击它会将我带到Amazon App Tester。它说
Implementation Problem Detected
com.myapp.carquiz failed to call PurchasingS..
我猜是PurchasingService
- 更新2**我的日志目录
06-07 15:35:07.548 E/AndroidRuntime( 9699): FATAL EXCEPTION: main
06-07 15:35:07.548 E/AndroidRuntime( 9699): Process: com.amazon.sdktestclient, PID: 9699
06-07 15:35:07.548 E/AndroidRuntime( 9699): Theme: themes:{default=overlay:com.cyngn.themes.hexo, iconPack:com.cyngn.themes.hexo, fontPkg:com.cyngn.themes.hexo, com.android.systemui=overlay:com.cyngn.themes.hexo, com.android.systemui.navbar=overlay:com.cyngn.themes.hexo}
06-07 15:35:07.548 E/AndroidRuntime( 9699): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.amazon.sdktestclient/com.amazon.sdktestclient.iap.ui.PurchaseActivity}: java.lang.IllegalArgumentException: Path must not be empty.
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2450)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2510)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.ActivityThread.-wrap11(ActivityThread.java)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1363)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.os.Handler.dispatchMessage(Handler.java:102)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.os.Looper.loop(Looper.java:148)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.ActivityThread.main(ActivityThread.java:5461)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at java.lang.reflect.Method.invoke(Native Method)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
06-07 15:35:07.548 E/AndroidRuntime( 9699): Caused by: java.lang.IllegalArgumentException: Path must not be empty.
06-07 15:35:07.548 E/AndroidRuntime( 9699): at com.squareup.picasso.Picasso.load(Picasso.java:297)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at com.amazon.sdktestclient.iap.ui.PurchaseActivity.updateProductDetails(PurchaseActivity.java:214)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at com.amazon.sdktestclient.iap.ui.PurchaseActivity.onCreatePurchaseActivity(PurchaseActivity.java:120)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at com.amazon.sdktestclient.iap.ui.PurchaseActivity.onCreate(PurchaseActivity.java)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.Activity.performCreate(Activity.java:6251)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108)
06-07 15:35:07.548 E/AndroidRuntime( 9699): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2403)
06-07 15:35:07.548 E/AndroidRuntime( 9699): ... 9 more
06-07 15:35:07.552 W/JsonSuggestProvider( 4000): ext: null, mimeType: null, handles: false
06-07 15:35:07.552 D/ApplicationSuggestionService( 4000): handles? false
06-07 15:35:07.552 W/ActivityManager( 831): Force finishing activity com.amazon.sdktestclient/.iap.ui.PurchaseActivity
06-07 15:35:07.555 W/DropBoxManagerService( 831): Dropping: data_app_crash (1687 > 0 bytes)
06-07 15:35:07.556 W/ActivityManager( 831): Force finishing activity com.borneomobile.carquiz/md546d24a5175fed40732720790778ad3a9.GameView
2条答案
按热度按时间x759pob21#
我通过我的开发者 Jmeter 板提交应用程序内的项目来修复这个问题,下载JSON文件只是为了确保我使用正确的格式和adb推到我的设备。
当我再次运行测试时,它工作正常,没有错误。
eagi6jfj2#
我通过更新JSON文件为JSON中指定的每个项包含一个smallIconUrl来修复这个问题。
例如: