【发布时间】:2012-03-02 17:26:24
【问题描述】:
我正在构建一个使用应用内购买的应用。我使用的是非消耗品类型。
一切正常(设置产品、购买...)。
我想做的是验证用户已经购买了哪些产品(重新安装应用或更换设备时)?
这可能吗?
谢谢
【问题讨论】:
标签: ios in-app-purchase product verify
我正在构建一个使用应用内购买的应用。我使用的是非消耗品类型。
一切正常(设置产品、购买...)。
我想做的是验证用户已经购买了哪些产品(重新安装应用或更换设备时)?
这可能吗?
谢谢
【问题讨论】:
标签: ios in-app-purchase product verify
请参阅应用内购买指南的Restoring Transactions 部分。这是它具体说的:
Store Kit 提供内置功能来恢复交易 非消耗性产品、自动更新订阅和免费 订阅。要恢复事务,您的应用程序调用 支付队列的restoreCompletedTransactions 方法。支付队列 向 App Store 发送请求以恢复交易。在 返回时,App Store 会为每个 之前完成的交易。
【讨论】:
你可以打电话
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
它将返回给您已经完成的交易。
然后您可以验证您的产品是否在集合中。
【讨论】:
Apple 在 In-App Purchase Programming Guide 中的 Restoring Transactions 下处理此主题。
基本上,您要做的就是向支付队列发送restoreCompletedTransactions 消息。
【讨论】: