亚马逊购买API错误:找不到com.amazon.testclient.iap.purchase

use*_*195 4 android amazon amazon-s3

Logcat条目

11-26 11:16:29.033: W/ActivityManager(61): Unable to start service Intent{ act=com.amazon.testclient.iap.purchase flg=0x10000000 (has extras) }: not found
11-26 11:16:29.133: W/InputManagerService(61): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@40611088
11-26 11:21:06.059: D/SntpClient(61): request time failed: java.net.SocketException: Address family not supported by protocol
Run Code Online (Sandbox Code Playgroud)

Jon*_*noB 11

亚马逊从谷歌的Play商店中的不同之处在于,你无法测试与亚马逊的服务器采购的所有,直到您的应用程序已被批准并公布:

只有通过分发门户批准和发布的应用才能与Amazon Client通信.
https://developer.amazon.com/sdk/in-app-purchasing/documentation/testing-iap.html

因此,在此之前,您调试和测试购买的唯一选择是使用模拟Amazon商店的Amazon Tester应用程序.

此行表示Amazon API正在请求Amazon的SDK测试程序App,但它未安装在您的设备上:

11-26 11:16:29.033:W/ActivityManager(61):无法启动服务Intent {act = com.amazon.testclient.iap.purchase flg = 0x10000000(有额外内容)}:未找到

Amazon Tester App + JSON文件

Amazon Tester应用程序与SDK一起打包.您需要将其加载到您的设备上,并创建并安装一个json文件,描述它应该模拟购买的产品.

在您的设备上安装之前,通过在线验证工具运行您的JSON文件是值得的,因为很难发现错误,并且SDK测试器应用程序在出现问题时不会显而易见.

使用外部收据验证

如果您要在应用程序之外的服务器上验证亚马逊的购买收据,那么您还需要设置运行亚马逊RVS沙盒代码的服务器,以便它可以模拟亚马逊的收据验证服务.然后,您需要将原始服务器指向此沙箱服务器,而不是Amazon的实时收据验证服务器.

RVS Sandbox是一个.war文件,您应该查看类似Jetty的内容来运行代码,并使用它来验证开发过程中的收据而不是Amazon的服务器.

更多信息:

在此网站上查找以下标题:
创建JSON数据文件
使用收据验证沙箱
https://developer.amazon.com/sdk/in-app-purchasing/documentation/testing-iap.html