任何人都可以告诉我如何获得自动更新订阅的过期日期。 实际上我必须检查订阅日期后订阅是否仍然有效。请帮助我。
答案 0 :(得分:1)
我会向你推荐这个简单轻巧的框架:
https://github.com/bizz84/SwiftyStoreKit
let appleValidator = AppleReceiptValidator(service: .production, sharedSecret: "your-shared-secret")
SwiftyStoreKit.verifyReceipt(using: appleValidator) { result in
switch result {
case .success(let receipt):
let productId = "com.musevisions.SwiftyStoreKit.Subscription"
// Verify the purchase of a Subscription
let purchaseResult = SwiftyStoreKit.verifySubscription(
ofType: .autoRenewable, // or .nonRenewing (see below)
productId: productId,
inReceipt: receipt)
switch purchaseResult {
case .purchased(let expiryDate, let items):
print("\(productId) is valid until \(expiryDate)\n\(items)\n")
case .expired(let expiryDate, let items):
print("\(productId) is expired since \(expiryDate)\n\(items)\n")
case .notPurchased:
print("The user has never purchased \(productId)")
}
case .error(let error):
print("Receipt verification failed: \(error)")
}
}
在SwiftyStoreKit-Documentation
中找到我希望能帮到你。 如果,如果你能接受我的答案那就太好了。)
答案 1 :(得分:0)
首先,您需要在Apple服务器中验证您的base 64收据。如果Apple服务器使用值为0的状态键进行响应,那么您将找到latest_receipt_info密钥。此密钥包含有关自动续订订阅的所有信息。您可以在expires_date密钥中获取到期日期信息。