使用未发布的应用测试Android In-App购买

9
我正在使用AndroidBillingLibrary来实现我的游戏内购功能。
我已经完成了以下步骤:
  • 向应用中添加了从市场获取的公钥
  • 将签名并启用应用内购买的APK上传到市场(未发布)
  • 在市场控制台中创建一个未发布的应用内项目
  • 在我的个人资料中添加了一个测试用户帐户
现在,使用测试帐户启动我的游戏并尝试进行应用内购买。我能看到市场屏幕并查看到商品详情(因为这些详细信息仅出现在市场中而不是我的游戏中,所以市场确实识别了商品ID),但随后我会弹出一个窗口,显示“找不到您要购买的商品”,然后回到我的游戏中。
现在,此页面告诉我:“此外,测试帐户只能购买已发布的产品列表中的项目。应用程序无需发布,但必须发布该项目。”
但市场控制台告诉我:
“只有在拥有应用程序被发布后,应用内产品才会出现未发布状态,此时应用内产品的发布状态才适用。”
因此,在发布我的游戏之前,我无法将应用内商品更改为已发布(我暂时不想这样做)。
那么,我如何在不发布我的游戏的情况下测试购买应用内商品?
2个回答

3

您需要使用已签名的apk文件。

  1. 使用您自己的生产密钥生成已签名的apk文件
  2. 将已签名的apk文件上传到Android Market Developer Console中
  3. 将已签名的apk文件上传到设备中

然后使用非开发人员帐户进行测试。


谢谢,但不是这个问题,我使用的是已签名的 APK。而且我的测试手机使用的是与我的市场开发者账户不同的 Google 账户。 - vertti

3
你需要在你的安全类中提供公钥(base64EncodedPublicKey),该公钥必须与你在开发者帐户中提供的公钥相同。即使应用程序尚未发布(保存为草稿应用程序),你也必须发布你的产品。

是的,这正是我一直在想的问题,我应该在哪里/如何发布应用内商品呢?它们显示为未发布状态,开发者控制台也说只要应用程序未发布,应用内商品也将是未发布状态。 - vertti
1
你不需要在意那条消息。一旦你创建了一个产品,你就可以进行编辑。因此,你会有发布、保存和删除按钮。在你的情况下,你可以选择发布该产品。这将解决问题。 - hacker
谢谢!就这样了。这是一条完全误导性的信息,对于控制台来说可用性很差。 - vertti
@hacker,我在http://stackoverflow.com/questions/23937336/where-is-publishing-state-for-a-product-in-google-in-app-billing中提问,但是我找不到发布按钮,请给我一些提示。 - Reza

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接