我是不是正确执行这些步骤来检查用户的应用内结算订阅?

Posted

技术标签:

【中文标题】我是不是正确执行这些步骤来检查用户的应用内结算订阅?【英文标题】:Am I getting these steps right for checking a user's in-app billing subscription?我是否正确执行这些步骤来检查用户的应用内结算订阅? 【发布时间】:2012-09-20 14:19:57 【问题描述】:

我正在制作一个销售应用内每月订阅的 android 应用。在我深入研究之前,这个应该如何完成的大纲看起来是否正确?我正在使用 Google Play Android 开发者 API。

第一次安装应用时,在 sendBillingRequest() 中发送以下内容:

CHECK_BILLING_SUPPORTED。如果没有,请不要费心制作“购买”用户界面。 RESTORE_TRANSACTIONS。如果有交易,保存用户的购买令牌。

当用户进行购买时:

保存购买令牌。 将带有购买令牌的 GET 请求发送到 Google Play Developer API 以验证订阅。 如果订阅有效,请保存订阅到期日期和开始日期。提供对购买数据的访问权限。 如果订阅无效,请移除购买令牌。不要提供对已购买数据的访问权限并绘制“未购买”版本的 UI。

每次启动应用时,检查您是否有保存的购买令牌。

如果购买令牌不存在:

不提供对已购买数据的访问权限并绘制“未购买”版本的 UI。

如果购买令牌存在,请检查到期日期和启动时间:

如果(过期)或(启动超过一个月前) 将带有购买令牌的 GET 请求发送到 Google Play Developer API 以验证订阅。 如果购买有效,请更新保存的到期日期和开始日期。提供对购买数据的访问权限。 如果购买无效,请删除保存的购买令牌以及到期和启动数据。不提供访问权限并绘制“未购买”版本的 UI。 其他 提供对购买数据的访问权限。

【问题讨论】:

【参考方案1】:

是的,我是。

我已经通过这种方式成功实现了应用内结算。

【讨论】:

以上是关于我是不是正确执行这些步骤来检查用户的应用内结算订阅?的主要内容,如果未能解决你的问题,请参考以下文章

获取应用内结算用户帐户详细信息

检查用户是不是真的为应用内购买付费 [iOS, Swift]

Android 应用内结算订阅验证

应用内结算的唯一产品 ID。谷歌播放

在 Android 中检查应用内订阅的状态

使用 Flutters 应用内购买插件检查订阅有效性?