【问题标题】:Test Subscription Feature of In-app Billing测试应用内计费订阅功能
【发布时间】:2013-04-24 10:20:15
【问题描述】:

是否可以测试应用内结算的订阅功能?我尝试使用保留的产品 ID 进行测试(android.test.purchased),但它给出了“找不到项目”之类的错误。我使用的是应用内结算版本 3。我无法从网络上找到一个确凿的答案。任何帮助表示赞赏。

【问题讨论】:

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


【解决方案1】:

自 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

【讨论】:

  • 感谢您提供此重要信息,保存了我的 a**,KR
  • 你好 stefan,我可以用 android.test.purchased 测试应用内订阅吗?请看stackoverflow.com/questions/32756889/…
  • @kgandroid 不,此项目 ID 不适用于测试订阅 AFAIK。
  • 您好 Stefan..感谢您这么快回复:/
【解决方案2】:

可能有帮助的几点。

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

我希望这会有所帮助。

【讨论】:

  • 感谢您的回复,但我的应用程序只实现订阅而不是非托管产品。是否有像“com.android.purchase”这样的静态产品代码来测试订阅。
  • 在我们发言时,我正在处理订阅,我将继续添加我的学习内容。
  • 当您添加电子邮件时,它会询问信用卡详细信息吗???或者您能否详细说明添加电子邮件测试的程序..!!!
  • 不,有适用于测试帐户的测试信用卡。谷歌测试信用卡。
【解决方案3】:

这是我个人经验的答案。

没有正确的方法来使用开发沙箱测试 inapp。 这就是我真正测试应用程序的方式。

  • 创建一个测试应用程序来测试应用程序并对其进行配置。
  • 请记住将您的开发者公钥放在需要的地方和需要的所有清单权限
  • 添加一些应用内购买以进行测试
  • 使应用不可调试
  • 作为草稿上传到安卓市场

现在您必须等待几个小时,因为 Android 电子市场需要推送所有更改,否则您在尝试购买时会收到错误消息

现在在您的设备上本地启动应用程序(您必须将 debuggable 设为 false)并测试您在应用内购买的东西。 完成所有测试后,我进入我的谷歌钱包商家帐户,并为以下各项进行所有其他购买流程测试:

  • 退款
  • 取消应用内订阅

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

【讨论】:

  • 谢谢,您的意思是说静态产品代码不适用于订阅吗?我们已经在开发控制台中创建了 inapp 产品并进行了测试。但每当我尝试订阅产品时,我都会收到“付款被拒绝”错误。
  • 是的,这就是我所说的。还要记得检查您是否尝试使用 google 开发者帐户进行购买。这不被允许。您必须使用另一个个人帐户进行操作 :) 让我知道这是否是问题所在。
【解决方案4】:

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

【讨论】:

  • 订阅情况下怎么办?
  • android.test.purchases 仅适用于付款计费,不适用于订阅...
【解决方案5】:

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

【讨论】:

    猜你喜欢
    • 2021-11-10
    • 1970-01-01
    • 2013-03-11
    • 2016-03-17
    • 2014-02-15
    • 1970-01-01
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    相关资源
    最近更新 更多