【问题标题】:Is there a fast replacement for deprecate `SKPaymentTransaction.transactionReceipt`?是否有快速替代已弃用的“SKPaymentTransaction.transactionReceipt”?
【发布时间】:2014-05-15 13:41:45
【问题描述】:

是否有快速替代已弃用的 SKPaymentTransaction.transactionReceipt?

完整代码:

// saves a record of the transaction by storing the receipt to disk
- (void)recordTransaction:(SKPaymentTransaction *)transaction {
    if ([transaction.payment.productIdentifier isEqualToString:[self getProductId:gFullVersion]]) {
        // save the transaction receipt to disk
        [[NSUserDefaults standardUserDefaults] setValue:transaction.transactionReceipt forKey:[self getProductId:gFullVersion]];
        [[NSUserDefaults standardUserDefaults] synchronize];
    }
}

【问题讨论】:

    标签: ios ios7 in-app-purchase deprecated


    【解决方案1】:

    正确答案应该是:

    [NSData dataWithContentsOfURL:[[NSBundle mainBundle] appStoreReceiptURL]]
    

    以及完整的代码:

    // saves a record of the transaction by storing the receipt to disk
    - (void)recordTransaction:(SKPaymentTransaction *)transaction {
        if ([transaction.payment.productIdentifier isEqualToString:[self getProductId:gFullVersion]]) {
            // save the transaction receipt to disk
            [[NSUserDefaults standardUserDefaults] setValue:[NSData dataWithContentsOfURL:[[NSBundle mainBundle] appStoreReceiptURL]] forKey:[self getProductId:gFullVersion]];
            [[NSUserDefaults standardUserDefaults] synchronize];
        }
    }
    

    【讨论】:

    • @MaciejSwic 如何在不使用已弃用的 transactionReceipt 属性的情况下验证单个交易的收据?
    • @user1681701 所有收据都在捆绑包中,iirc 你得到一个数组或字典,循环遍历它,你也会在其中找到所有 IAP 收据。
    • 否决,此代码 sn-p 不能完全替代检索与单个交易相关的收据信息。
    • 也被否决了。根本不回答问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-18
    • 1970-01-01
    • 2020-10-08
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    • 2017-06-22
    相关资源
    最近更新 更多