【问题标题】:iOS 7+ server verified inapp purchasing sending many receiptsiOS 7+ 服务器验证应用内购买发送许多收据
【发布时间】:2014-10-11 02:09:57
【问题描述】:

我正在尝试让新的应用内购买 API (ios 7+) 工作,当我以这种方式阅读收据时,我发现收据数据要大得多:

        NSURL *receiptURL = [[NSBundle mainBundle] appStoreReceiptURL];
        NSData *receiptData = [NSData dataWithContentsOfURL:receiptURL];

我正在这样做:

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

所以我注意到我将收据发送到 "https://buy.itunes.apple.com/verifyReceipt"; 而且我发送的数据比 transaction.transactionReceipt 大很多。

事实上,苹果的响应似乎在“in_app”数组中有几十个的收据。 这正常吗?我已经完成了这些交易,但是统一收据里有这么多的收据。是对的吗?我的大手笔(购买了数千个 IAP 的人)会发送包含数千笔交易的巨额收据吗?

还有什么是 SKReceiptRefreshRequest?

更新!我发现在实时环境中,所有消耗性收据在调用完成事务后都会被删除。在沙盒环境中不是这样,它只是保留它们,因此收据的数量可以达到数百个。

【问题讨论】:

    标签: ios in-app-purchase storekit


    【解决方案1】:

    iOS7 引入了许多 IAP 更改。其中: 1)收据存储在应用程序包中(是的,收据上的复数) 2) 特定收据是否保留在捆绑包中取决于产品的种类。例如,我认为消耗品的收据不会被保留

    你们有什么样的产品?

    查找收据刷新的 API。有时收据不在捆绑包中,您可以刷新它。系统会提示用户输入苹果 ID/密码,因此如果/当您使用它时,用户可能会很烦。

    【讨论】:

      【解决方案2】:

      是的,这是正常的

      Apply 会向您发送一堆所有收据。你必须自己弄清楚如何处理这些。这是因为即使交易完成,您也可能需要收据来处理购买的内容。

      【讨论】:

        猜你喜欢
        • 2014-07-19
        • 1970-01-01
        • 2018-11-30
        • 1970-01-01
        • 1970-01-01
        • 2011-10-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多