我是否正确地检查了用户的应用内结算订阅?

时间:2012-09-28 17:05:54

标签: android google-api in-app-billing google-play subscription

我正在制作一款销售应用内每月订阅的Android应用。在我深入研究它之前,这个应该如何做的概述似乎是正确的吗?我使用的是Google Play Android Developer API。

首次安装该应用时,请在sendBillingRequest()中发送以下内容:

  • CHECK_BILLING_SUPPORTED。如果没有,请不要打扰制作“购买”用户界面。
  • RESTORE_TRANSACTIONS。如果有交易,请保存用户的购买代币。

当用户进行购买时:

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

每次启动应用时,请检查您是否有已保存的购买代币。

如果购买标记不存在:

  • 不提供对购买数据的访问权限并绘制“未购买”版本的用户界面。

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

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

1 个答案:

答案 0 :(得分:2)

是的我。

我已成功以这种方式实施了应用内结算。