应用内结算的测试订阅功能

时间:2013-04-24 10:20:15

标签: android in-app-billing google-play-services

是否可以测试应用内结算的订阅功能?我尝试使用保留的产品ID进行测试(android.test.purchased),但它给出了'item not found'这样的错误。我正在使用应用内结算版本3.我无法从网上找到确凿的答案。任何帮助表示赞赏。

5 个答案:

答案 0 :(得分:14)

截至2015年2月/ 3月,也可以在Android上测试应用内订阅。现在,具有测试访问权限的Google帐户(在开发者控制台的Settings菜单中配置)将收到消息

This is a test subscription. It will recur daily. You will not be charged when trying to buy in-app subscriptions.

这也意味着所有订阅似乎都是"结算"日常。您仍会收到正常的Google Play订单收据电子邮件,但会以Test为前缀:

Test: Your Google Play Order Receipt from Mar 12, 2015

此外,如果您查看此电子邮件,您会注意到订单号是一个随机的字母串,而不是http://developer.android.com/google/play/billing/billing_subscriptions.html#payment中描述的常规订单号。

Order number: lhjelkffelbnmmcmklbkhkbd

答案 1 :(得分:1)

这是我个人经验的答案。

没有一种正确的方法可以使用开发沙箱测试inapp。 这就是我真正测试inapp的方式。

  • 创建测试应用程序以测试inapp并对其进行配置。
  • 请记住将开发人员公钥放在需要的位置,并且需要所有明确的权限
  • 添加一些inapp购买以进行测试
  • 使应用程序无法调试
  • 在Android市场上将其作为草稿上传

现在您需要等待几个小时,因为Android Market需要推送所有更改,否则当您尝试购买时会出现错误

现在在您的设备上本地启动应用程序(您必须将debuggable设置为false)并测试您的inapp购买内容。 在所有测试之后,我进入我的谷歌钱包商家帐户,我还进行所有其他购买流程测试:

  • 退款
  • 取消Inapp-Subscription

如果您找到更好的方法来使用真正的沙箱进行测试,请告诉我:)

答案 2 :(得分:1)

可能会有所帮助。

  1. 如果您发布的应用程序没有应用内,则需要发布您的下一个inapp版本才能对其进行测试。
  2. 您需要将具有应用内功能的apk上传到开发者控制台(不要发布),在手机上安装相同的应用
  3. 在应用产品中创建(非托管)并确保代码引用这些非托管产品ID
  4. 为测试目的而使产品便宜
  5. 从您的应用程序中购买产品
  6. 从您的商家帐户自行退款(如果您在24小时之前退款,则不会被收取费用,并且您将获得全额退款。(我认为,只需确认一下,它会不断更改)。
  7. 在你开心之后,点击发布。
  8. 您可以添加朋友的电子邮件ID作为测试帐户,以帮助他们购买产品而不会收取费用。事实上你也可以模仿他们“失败”:)
  9. 我希望这会有所帮助。

答案 3 :(得分:0)

使用android.test.purchased作为产品ID。

答案 4 :(得分:-2)

创建一个类来模拟您在Google Play服务中使用的apis。