ksi*_*mka 13 android subscription google-play-developer-api
获取订阅状态(https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get)后,API会响应
{
"error": {
"errors": [
{
"domain": "androidpublisher",
"reason": "purchaseTokenNoLongerValid",
"message": "The purchase token is no longer valid."
}
],
"code": 410,
"message": "The purchase token is no longer valid."
}
}
Run Code Online (Sandbox Code Playgroud)
我无法在Android发布商API的上下文中找到任何提及"purchaseTokenNoLongerValid"或"购买令牌不再有效"的内容,无论是在文档中还是在Google搜索中.
我可以猜出这个错误意味着什么,但更好地确切地知道,无论如何,在此错误之后我应该如何处理订阅?
zaf*_*s.m 18
我最近收到了来自Google Play团队的此消息,因此HTTP status 410订阅已过期超过60天的默认响应.
从2018年5月21日开始,Purchases.subscriptions.get将返回HTTP状态410,对于已过期60天或更长时间的订阅,响应中没有内容.对于尚未过期或已过期少于60天的有效订阅或已取消订阅,没有任何更改.
访问Android开发者网站,了解有关如何验证购买的更多信息.
事实上,我在5月22日尝试了它并获得状态410和本机构的回复:
{
"error": {
"errors": [
{
"domain": "androidpublisher",
"reason": "subscriptionPurchaseNoLongerAvailable",
"message": "The subscription purchase is no longer available for query because it has been expired for too long."
}
],
"code": 410,
"message": "The subscription purchase is no longer available for query because it has been expired for too long."
}
}
Run Code Online (Sandbox Code Playgroud)
我收到了 Google Play 支持团队关于此错误的官方回复:
我查看了一下,您提供的订单 ID 与一个现已删除的帐户关联。这就是它无法通过验证的原因。这是许可系统按预期运行的一个很好的例子。
您可以随意忽略此订阅。
在我询问更多细节后又收到一封电子邮件:
从技术上讲,即使订阅未附加到帐户,订阅仍然有效 - 因此,它不会显示为已取消。我们知道,如果没有收到有关帐户状态的明确消息而只是返回错误,则令人困惑。这是我们仍在积极研究的产品领域。
您可以做的是使用 API 撤销订阅,既然您已经确认该帐户已消失,那么就可以这样做。然后它将读取为已取消,并且在进行 API 调用时将不再抛出错误。
| 归档时间: |
|
| 查看次数: |
3832 次 |
| 最近记录: |