【问题标题】:IOS Auto-Renewal Subscription status can't gettingIOS自动续订订阅状态无法获取
【发布时间】:2015-12-31 07:54:28
【问题描述】:
  • 目前正在使用应用内购买自动续订订阅。
    • 如果用户订阅应用程序,无论选择计划(每月或每年),这都允许用户完全访问应用程序。
      • 获取订阅到期日期的工作正常。
      • 但如果用户可以从设备设置中关闭自动续订订阅。

那我们如何通过代码查看订阅状态或到期日期。

【问题讨论】:

    标签: ios objective-c in-app-purchase in-app-subscription


    【解决方案1】:

    如果订阅处于活动状态,则没有状态。您应该将订阅到期日期与当前日期进行比较,以了解订阅是否有效。

    例如我的项目中有这段代码:

    func isSubscriptionActive() -> Bool
    {
        if RMStoreAppReceiptVerificator().verifyAppReceipt()
        {
            let appReceipt = RMAppReceipt.bundleReceipt()
            for object in appReceipt.inAppPurchases
            {
                if let inAppPurchase = object as? RMAppReceiptIAP
                {
                    if appReceipt.containsActiveAutoRenewableSubscriptionOfProductIdentifier(inAppPurchase.productIdentifier, forDate: NSDate())
                    {
                        return true
                    }
                }
            }
        }
        return false
    }
    

    我正在使用RMStore 库。

    【讨论】:

    • 但是我们怎么知道自动订阅仍然处于激活状态... - 用户可以通过设备设置禁用自动续订订阅。
    • containsActiveAutoRenewableSubscriptionOfProductIdentifier 为您完成。它检查订阅过期日期和取消日期。
    • 以上代码足以检查订阅是否处于活动状态。另外我建议阅读“应用内购买编程指南”和 RMStore 自述文件。
    猜你喜欢
    • 2018-11-02
    • 2013-05-20
    • 1970-01-01
    • 1970-01-01
    • 2011-12-24
    • 2019-09-27
    • 2011-11-16
    • 2015-06-26
    • 2013-10-27
    相关资源
    最近更新 更多