0

有人试过实现亚马逊的应用内购买吗?我在他们的网站上实施该示例时遇到问题。下面的例子,它给了我 INVALID_SKU 响应:

开始购买时,

PurchasingManager.initiateItemDataRequest("DeveloperSKU-1234");

上面的响应将通过以下代码收到:

public void onPurchaseResponse(final PurchaseResponse purchaseResponse) {
    Log.v(TAG, "onPurchaseResponse recieved");
    Log.v(TAG, "PurchaseRequestStatus:" + purchaseResponse.getPurchaseRequestStatus());
}

不幸的是,我总是得到“PurchaseRequestStatus:INVALID_SKU”。

你们中的任何人都知道如何进行这项工作,或者您知道本教程的好网站吗?

同样在他们的网站上,如果我得到一个我没有得到的 INVALID_SKU,对话框应该会显示。

4

2 回答 2

5

以下是我如何让应用内购买在 Kindle Fire 上工作(经过几个小时的努力......)

  1. adb install AmazonSDKTester.apk(在 Kindle Fire 上安装 SDKTester)
  2. 在 SDCARD 目录中创建一个文件 amazon.sdktester.json(连接的 KF 在您的 Mac 上的 Finder 中显示为 SDCARD)
  3. amazon.sdktester.json 的内容 - { "com.yourcompany.yourpkgname.200_coins" : { "itemType": "CONSUMABLE", "price": 0.99, "title": "200 COINS", "description": "2 COINS ", "smallIconUrl": "http://www.yourcompany.com/icon.png" } }
  4. 按下 KF 上的电源按钮并按下“断开连接”按钮 - 现在 KF 不再是您 Mac 上的已安装驱动器。
  5. 在 KF 上运行 AmazonSDKTester 应用程序。
  6. 从 Eclipse 运行您的应用程序。确保 JSON 中的包名称与亚马逊网站上的 In App Item 包名称和PurchasingManager.initiatePurchaseRequest("com.yourcompany.yourpkgname.200_coins");
  7. 现在您应该会看到应用内插页式广告出现了。
  8. 仍然不起作用 - 在 KF 上强制关闭您的应用程序和 AmazonSDKTester;硬复位 KF ; 重新启动 Eclipse 并从步骤 1 重新启动
于 2012-08-15T06:09:20.957 回答
3

当 SKU 不匹配或未在 JSON 文件中输入时发生 INVALID_SKU。如果您使用 SDK Tester 实现您的测试应用程序,请确保您在应用程序中使用的 SKU 也必须在 JSON 文件中有一个条目。JSON 文件位于 /mnt/sdcard/ 下,名称为 amazon.sdktester.json。要求您验证您是否在设备中的此路径下创建了带有 SKU 详细信息的 JSON 文件。

管理 SKU 的一个好方法是:

  1. 在应用程序的 strings.xml 文件中将 SKU 作为字符串引用——与使用任何字符串常量的方式相同。
  2. 您可以使用 SDK Tester 和 amazon.sdktester.json 文件测试您的应用程序,而无需在 Developer Portal 上执行任何操作。
  3. 当您准备好提交您的应用程序时(在使用 SDKTester 进行测试后),请确保您还在开发者门户上提交了您的 IAP 项目——注意拼写错误!

我们建议使用 . 对于 SKU 格式,只是因为它可以清楚地表明它是什么以及它属于什么应用程序。例如:

com.yoyodyne.beachblanketbingo.500_coins

于 2012-08-10T03:33:33.670 回答