我正在尝试使用Google Play应用内结算来实现付款处理器的后端。
Google Play计费api专为无用场景而构建,要使其在正常的世界情况下正常工作是一项艰巨的工作,在这种情况下,应用程序的后端需要验证和处理付款逻辑。
我正在关注本教程:https://developer.android.com/google/play/billing/getting-ready#configure-rtdn
但是只有在实现了整个逻辑之后,我才读到一小段
实时开发者通知(RTDN)是一种接收机制 只要用户的 您的应用内的权利。 RTDN利用了Google Cloud 发布/订阅,可让您接收推送到 您使用客户端库设置或查询的URL。这些 通知可让您立即对订阅状态做出反应 进行更改,从而无需轮询Google Play开发者API。注意 Google Play开发人员API的低效使用可能导致API 配额限制。
所以我的逻辑集成做得很好,播放控制台中的测试消息有效,但是Google Play结算未发送真实的通知,因为我的应用处理的是应用内商品而不是订阅
然后我读了本教程https://developer.android.com/google/play/billing/rtdn-reference,上面写着
注意:仅针对某些类型的邮件发送OneTimePurchaseNotification 一次性购买。有关更多信息,请参阅集成。
但链接为https://developer.android.com/google/play/integrate的是404
有人知道如何使Google Play控制台发送有关应用内购买的付款状态的通知吗?
还有如何获得退款购买通知
答案 0 :(得分:3)
+1 你的问题,因为这是一个奇怪的场景,缺少谷歌的文档。
当我通过单击“发送测试通知”测试来自 google play 控制台的通知时,它可以工作,但是当我尝试使用测试客户端计费从我的 android 应用程序这样做时,它不起作用!
但这个截图说
...for updates to your in-app products and subs...
答案 1 :(得分:1)
OneTimeProductNotification于2019-05-07引入,其主要目的是处理现金购买
https://developer.android.google.cn/google/play/billing/release-notes#release-2_0
如发行说明所述: “此通知类型仅针对与延迟付款方式(例如现金)相关的购买发送”
答案 2 :(得分:0)
Heeeey @Rafael Lima 现在正在为一次性产品工作,我刚刚测试了发布/订阅
我得到了 oneTimeProductNotification
^_^
答案 3 :(得分:0)
只需将以下代码行复制并粘贴到权限输入框中,然后将其添加到成员中即可。
google-play-developer-notifications@system.gserviceaccount.com
接下来向发布/订阅发布者授予权限,您就可以开始了。
您可能会犯的错误是您添加了一个不正确的服务帐户,该服务帐户已经存在于您的 google 云帐户中。
以上解决方案对我来说非常好!
答案 4 :(得分:0)
为了获得退款购买,您可以尝试Voided Purchases API
<块引用>Google Play Voided Purchases API 提供与用户已作废的购买相关的订单列表。您可以使用此列表中的信息来实施撤销系统,以防止用户访问这些订单中的产品。
<块引用>此 API 适用于一次性应用内订单和应用订阅。
<块引用>可以通过以下方式取消购买:
<块引用>