gpt4 book ai didi

ios - SKPaymentQueue restoreCompletedTransactions : no transaction restored

转载 作者:可可西里 更新时间:2023-11-01 04:44:44 25 4
gpt4 key购买 nike

我无法在我的 paymentQueue:updatedTransactions: 委托(delegate)方法中接收任何交易。只有委托(delegate)方法 paymentQueueRestoreCompletedTransactionsFinished: 被调试器命中。当我尝试检索事务数组时,我得到一个空数组。

首先,我购买了非续订产品。购买成功并通过服务器验证后,将从支付队列中移除。在启动时,我调用了 paymentqueues restoreCompletedTransactions 方法。正如预期的那样,Storekit 要求我输入我输入的密码(来自沙箱用户)。但是更新方法不会被咳嗽。只有 finish 方法被捕获并且如所描述的那样,交易是空的。

我做错了什么?是我的错,还是苹果的问题restoreCompletedTransactions broken?

谢谢和BR尼克

最佳答案

抱歉让您久等了!

问题是在苹果中 In-App Purchase Programming Guide它清楚地表明,我不能恢复非续订订阅。我必须自己存储购买的商品并实现自己的恢复功能。

我所做的是在产品名称中包含一些标识符,告诉我它是什么类型的产品。 (这是一种不使用我自己的服务器来存储产品信息的方法)所以我的产品名称是例如com.mycompany.iphone.non_renewing_30d(本产品确实配置为非续订产品)

因此,当用户进行购买时,我会将此信息存储在 iDevice 的 CoreData 数据库中。我还包括我的过期功能,因为我有购买日期和产品过期日期 (30d)。

当时间到期时,用户会看到一个消息对话框,提示进行新的购买。我真的不喜欢苹果实现非续订订阅,因为它告诉用户,他/她已经购买了该产品并要求他们重新购买,但我不得不处理这个问题。

我真的建议将购买信息存储在 iOS 设备上,因为您不需要创建自己的用户识别功能(例如用户 ID 或电子邮件地址),因为 Apple 关闭了 UDID 的唯一性。

关于ios - SKPaymentQueue restoreCompletedTransactions : no transaction restored,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8314204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com