有没有一种简单的方法可以在App Store上检查用户的订阅状态,或者唯一的方法是进行收据和订阅验证?

时间:2018-08-24 14:43:49

标签: ios swift subscription storekit subscriptions

有人知道在应用加载时检查用户是否已经购买了订阅的简便方法吗?

我只需要检查用户是否已经购买了订阅,什么都没有。似乎很容易,但实际上并不现实,因为我需要验证收据并检查订阅日期。...订阅验证技术似乎不是一件容易的事,而且我也没有找到好的教程或指南说明如何逐步实施。 I've read Apple documentation here 有没有简便的本地收据验证和订阅验证技术来检查用户是否订阅?

也许有人知道可以快速实现的框架或方法?任何帮助表示赞赏。

使用:Swift 4,Xcode 9.4

3 个答案:

答案 0 :(得分:1)

好的,这是您的答案。我也遵循了相同的教程,对我有帮助。我验证了收据并确认已付款。请参阅下面的链接。希望对您有所帮助。

In App Purchase in Swift, with Receipt Validation

答案 1 :(得分:0)

RevenueCat SDK为此提供了很好的现成解决方案。

为什么我喜欢这种方法有多个原因:

  • 验证收据服务器端(不需要我设置服务器)
  • 检查带有服务器时间戳记的“活动”订阅,因此不能通过更改设备时钟来进行欺骗
  • 缓存结果,使其超快并可以离线工作

此问题有更多详细信息:https://stackoverflow.com/a/55404121/3166209

归结为:

subscriptionStatus { (subscribed) in
    if subscribed {
        // Show that great pro content
    }
}

答案 2 :(得分:-1)

我正在使用IAPHelper https://github.com/JonasTillges/IAPHelper

它真的很容易使用!

IAPHelper.verifyPurchase(with: IAPHelper.proSubscription, sharedSecret: IAPHelper.sharedSecret, type: .autoRenewable)

在IAPHelper.swift中,您可以为.purchased .expired和.notpurchased设置UserDefaults