0
サブスクリプションの有効期限について質問があります。私は領収書を検証する場所でエラーが発生していない作品と次のコードを持っています。私の有効期限は変わりません。ですから、定期購読を何度も購入した場合、有効期限は同じに留まり、有効期限は「新しい」よりも「古い」ため、常にelse句になります。自動更新サブスクリプションの有効期限
私はそれに間違っていますか?
private func complete(transaction: SKPaymentTransaction) {
let receiptValidator = ReceiptValidator()
let result = receiptValidator.validateReceipt()
switch result {
case let .success(receipt):
guard let purchase = receipt.inAppPurchaseReceipts?.filter({ $0.productIdentifier == IAPProducts.autoRenewable.rawValue }).first else {
NotificationCenter.default.post(name: Notification.Name(transaction.payment.productIdentifier), object: nil)
return
}
if purchase.subscriptionExpirationDate?.compare(Date()) == .orderedDescending {
print("expirationDate: \(purchase.subscriptionExpirationDate!)")
print(" now's date: \(Date())")
// true clause stuff
} else {
// false clause stuff
print("Subscription has ended")
}
// other stuff
case let .error(error):
print("receipt is invalid")
print(error.localizedDescription)
}
paymentQueue.finishTransaction(transaction)
}
したがって、このようなコンソール出力:
EXPIRATIONDATE:2017年11月1日午前9時08分11秒0000
今の日付:2017年11月1日午前10時35分11秒 +0000
私は何を欠場しますか?
ありがとうございました!