Google Play SubscriptionNotification - SUBSCRIPTION_PURCHASED 事件初始状态为 SUBSCRIPTION_STATE_CANCELED 且带有 systemInitiatedCancellation

问题描述 投票:0回答:1

这发生在我们的生产服务器上。我们有一个基于订阅的产品,并且我们在节点后端收听 Google Play 的实时开发者通知。我们使用

purchases.subscriptionsv2.get
来解析通知。

最近我们注意到该用户有几条SUBSCRIPTION_PURCHASED通知,购买的

subscriptionState
从一开始就是SUBSCRIPTION_STATE_CANCELED,当我们第一次收到通知时,
canceledStateContext
设置为
{"systemInitiatedCancellation": {}}

这是什么意思?我的意思是,通常 SUBSCRIPTION_PURCHASED 通知会附带 SUBSCRIPTION_STATE_ACTIVE,我们会确认该通知。从 Google 的文档 中可以看出“确保 subscriptionState 字段的值为 SUBSCRIPTION_STATE_ACTIVE。”这种情况我们该怎么办呢?为什么系统一开始就取消订阅了?

我们使用

purchases.subscriptionsv2.get
来解析通知。但如果我们用
purchases.subscriptions.get
解析相同的通知,它会显示
paymentState
为 1,表示已收到付款,而
cancelReason
也是 1,表示已被系统取消。我不确定 paymentState 是否始终保持 1 还是从 0 变为 1(待收到),我们没有收到其他通知。

请告诉我这种情况意味着什么以及最佳实践应该是什么,谢谢!

android node.js google-play google-play-developer-api
1个回答
0
投票

Google 遵循印度法规,本文中解释了印度的一些法规,这些法规将使订阅行为按照您所描述的方式进行。

总结是,这是在印度进行的 5000 印度卢比以上订阅购买的预期行为。即使在首次购买时,Google 也会发送带有

systemInitiatedCancellation
取消订阅的通知。这种行为使它们的行为类似于预付费购买。

其他博文也包含有关此订阅规则的信息。

© www.soinside.com 2019 - 2024. All rights reserved.