google developer api android 取消订阅产品的响应是啥

Posted

技术标签:

【中文标题】google developer api android 取消订阅产品的响应是啥【英文标题】:What is the response of the cancelled subscription product from the google developer api androidgoogle developer api android 取消订阅产品的响应是什么 【发布时间】:2013-10-11 02:27:13 【问题描述】:

我已在我的应用程序中实施每月订阅,以在我们的网络服务器上激活用户。我已经在我的项目中成功实现了订阅代码。如果用户从 google play store My App profile 取消订阅,我想停用用户。如果用户根据document-1和document-2取消订阅产品,我已经实现了获取产品订阅详情。

有什么问题?

我无法根据documentation 测试订阅产品购买。因此,我会将签名的版本提供给客户,他们将使用信用卡和实际产品购买进行检查。但是如何测试用户取消订阅时客户端会得到什么响应?

对于取消产品: 我让服务每天获取访问令牌并检查 validUntilTimestampMsec 是否大于零,然后检查 autoRenewing 标志是否为假,如果两者都为真,然后停用用户。但不知道这个逻辑是对是错。

if (validUntilDateInMilli > 0) 
    if ((System.currentTimeMillis() > validUntilDateInMilli)
                        && (!autoRenewingFlag)) 
        // call web service to deactivate user

        new AsyncTaskDeActivateBusinessOwner().execute();
     

我只从开发者 api 的official document 得到这个回复如下所示:


  "kind": "androidpublisher#subscriptionPurchase",
  "initiationTimestampMsec": long,
  "validUntilTimestampMsec": long,
  "autoRenewing": boolean

根据我在 Google 和 *** 上搜索的内容,但没有任何文档,我发现以下条件的响应是什么:

what is the response 

1) if the user currently has the subscription and 
2) if user has cancelled subscription(in 15 days) or if subscription cycle is completed.

请已测试订阅端到端购买并从谷歌开发者 api 取消订阅 validUntilDate 的任何人。

任何帮助将不胜感激。提前谢谢你。

【问题讨论】:

只是一个猜测 - 检查可能有用的购买 API developer.android.com/google/play/billing/… @MKJParekh 队长,感谢您的回复。我已经浏览了这个链接并获得了我的问题上发布的其他链接。 【参考方案1】:

无论订阅取消状态如何,Google Play API get 都会为您提供类似的 Purchases result。因此,目前您无法确定用户是否取消了订阅。

您必须在到期日之后检查订阅是否有效。

仅在到期时查询订阅状态 — 一旦您的服务器检索到订阅令牌的到期日期,它不应再次向 Google Play 服务器查询订阅状态,直到订阅到达或已超过到期日期。

http://developer.android.com/google/play/billing/gp-purchase-status-api.html

validUntilTimestampMsec(在购买结果中)与当前时间进行比较,以查看订阅是否已结束。

【讨论】:

感谢您的回答,我必须在收到订阅日期到到期日期后停止查询购买状态(为此+1)。但是在到期日期之前或之后的响应是什么,以便我可以管理应用程序的流程以取消订阅。 正如您告诉我的“检查 subs 在到期日之后是否有效”,但我该如何检查呢?如果对开发人员 API 使用相同的查询,那么订阅有效或无效的响应是什么?根据响应,我找不到任何文档,例如如果 subs 有效,那么您会收到此响应或无效。 如果用户取消了订阅,如果在过期日期之后查看,购买结果中的validUntilTimestampMsec应该是过去的时间。 这已经添加到我的问题中,如果 subs 在到期日期之前有效并且 subs 在到期日期之前被取消,那么响应是什么。 到期后查看validUntilTimestampMsec——如果是未来,则订阅有效;如果是过去,则订阅不再有效。

以上是关于google developer api android 取消订阅产品的响应是啥的主要内容,如果未能解决你的问题,请参考以下文章

访问未配置。您的项目未启用 API (Google+ API)。请使用 Google Developers Console 更新您的配置

"message": "用于调用 Google Play Developer API 的项目 ID 尚未在 Google Play Developer Console 中

CORS 错误,允许来自 Google Developer Console Google Place API 的来源

获取访问令牌Google Play Android Developer API

获取访问令牌 Google Play Android Developer API

Google Play Developer API - 超出配额