Version: 6000.3
语言: 中文
发起购买
处理购买失败

处理购买

ProcessPurchase函数在购买完成时调用。您的应用程序应该满足用户购买的任何内容;例如,解锁本地内容或向服务器发送购买收据以更新服务器端游戏模型。

将返回一个结果,以指示您的应用程序是否已完成购买处理:

结果 描述
购买处理结果.完成 应用程序已完成购买处理,不应再次通知。
PurchaseProcessingResult.Pending 应用程序仍在处理购买,并且下次应用程序启动时将再次调用 ProcessPurchase,除非ConfirmPendingPurchase功能IStoreController被称为。

请注意,在成功初始化后,可以随时调用 ProcessPurchase。如果您的应用程序在执行ProcessPurchasehandler,则下次再次调用Unity IAPUnity In App Purchase
的缩写 术语表
初始化,因此您可能希望实现自己的附加重复数据消除。

可靠性

Unity IAP 要求明确确认购买,以确保在发生网络中断或应用程序崩溃时可靠地完成购买。在应用程序脱机时完成的任何购买都将在下次初始化时发送到应用程序。

立即完成购买

什么时候PurchaseProcessingResult.Complete返回时,Unity IAP 会立即完成事务(如下图所示)。

不得退货PurchaseProcessingResult.Complete如果您销售消耗品并从服务器配送它们(例如,在在线游戏中提供货币)。

如果这样做,则在云保存发生之前卸载您的应用程序时,购买的消耗品可能会丢失。

立即完成
立即完成

将购买内容保存到云端

如果您要将购买的易耗品保存到云中,则必须返回PurchaseProcessingResult.Pending并调用ConfirmPendingPurchase仅当您成功坚持购买时。

返回时Pending,Unity IAP 会在基础商店上保持交易开放,直到确认为已处理,确保即使用户在消耗品处于此状态时重新安装您的应用程序,消耗品购买也不会丢失。

待购买
待购买
发起购买
处理购买失败