代码之家  ›  专栏  ›  技术社区  ›  Aravind G

区分两个在应用程序中进行应用内购买的用户,以购买不同用户的不可续费订阅?

  •  1
  • Aravind G  · 技术社区  · 7 年前

    我第一次在我的应用程序中实现应用程序内购买,并且是应用程序内购买商店工具包的新成员。

    我对应用程序内购买没有什么疑问:

    1. 如果一个用户购买了订阅并从应用程序注销,而另一个用户登录并尝试购买该订阅,会发生什么情况?

    2. iTunes是否允许第二个用户使用第一个用户购买的产品?

    3. 如果允许,我们如何处理第二个用户的订阅?

    我们将从itunes获得哪些成功/失败交易后的详细信息保存在我的数据库中?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Paulw11    7 年前

    对于非续费订阅,则完全由您来跟踪过期情况,并确定用户可以访问哪些内容以及何时访问。

    例如,假设您的订阅允许访问“每日词汇”。如果订阅在1月份处于活动状态,那么用户在1月份每天都可以访问新单词。即使在订阅到期后,用户也应该能够继续看到1月份的单词,但不能看到新单词。

    如果他们在三月份重新订阅,那么整个三月份他们都会收到新单词。

    您需要在服务器上根据用户帐户跟踪所有这些内容。

    不可续费订阅IAP的行为与耗材IAP非常相似。“Restore purchases”(恢复购买)存储工具包功能不会恢复不可再生的IAP项目。

    回答您的具体问题:

    1. 如果新用户在应用程序中登录到您的帐户系统(但相同的iTunes帐户在设备上仍处于活动状态),则第二次购买将成功,您需要更新服务器上新活动帐户的订阅开始和结束日期。

    您还需要满足以下要求: -原账号重新登录;在这种情况下,需要提供原始订阅权利 -原始或第二个帐户登录到另一个设备;同样,需要提供帐户订阅权限。

    1. 否,由于不可恢复非续订订阅,第二个用户无法“使用”第一个用户的订阅。

    2. 您可以独立处理系统中的每个帐户。

    有关采购流程机制的信息,请参见 In App Purchase Programming Guide