ProcessReceipt

格式

ProcessReceipt(functionReceiptInfo)

简介

当玩家通过AcquireProduct(Player,ProductId) 引起的弹窗购买Product时这个事件被触发,回调函数被调用。本回调会针对某一product进行多次触发,如果该product没有购买成功回调会一直返回Enum.ProductPurchaseDecision.NotAllow,则再玩家再次进入这个游戏时会触发;购买成功了一些其他商品后,该product的购买回调仍然会触发,直到返回Enum.ProductPurchaseDecision.AllowPurchase。
这个回调中包含了玩家点击弹窗的购买按钮后的全部流程。首先,会从服务器获取这次购买的ReceiptInfo信息表,根据表中的数据查询开发者自定义的购买记录(一个数据存储),如果有这次购买记录,则说明上次购买的流程已经完成,返回Enum.ProductPurchaseDecision.AllowPurchase。如果没有这次购买记录,则检测玩家是否在游戏中,如果不在,则返回Enum.ProductPurchaseDecision.NotAllow,等玩家下次再进游戏,自动触发本回调继续本次购买流程。如果在,则触发购买的商品的起效函数。然后,将本次购买存入开发者自定义的购买记录中,记录完成后返回Enum.ProductPurchaseDecision.AllowPurchase。

实例

MarketExchangeService:ProcessReceipt(function(value)
        print("特殊回调函数")
        dump(value)
        return Enum.ProductPurchaseDecision.AllowPurchase
    end)
文档更新时间: 2020-07-11 17:11   作者:孙晓艺