免费商品
免费商品是一种用户无需使用虚拟货币或真实货币购买即可获得的商品类型,包括:
- 虚拟物品
- 捆绑包
- 虚拟货币套餐
免费商品仅适用于授权用户。未授权用户只能查看免费商品的目录。
使用示例:
- 可在项目的一些重要日子(如项目筹建当天)向用户送出免费商品来回馈用户忠实度。
- 可在商店中送出新手套装来吸引新用户加入游戏。
可在用户已拥有的情况下限制特殊商品的免费发放。
要设置免费商品:
将免费商品添加到目录
关于创建商品的详细信息,请参阅以下文档章节:
创建或编辑免费商品时,需在付费或免费部分选择免费物品、免费套餐或免费捆绑包。
用户下单免费商品
用户可以通过两种方式下单免费商品:
一键下单免费商品
要实现此方式,请在用户点击目录中的按钮下单免费商品时调用Store库的createOrderWithSpecifiedFreeItem
方法。
成功向该方法发送请求后,艾克索拉侧向用户物品库发放商品将立即发生(无需打开支付中心)。
通过购物车下单免费商品
对于用户通过购物车下单的情况:
- 如果用户购物车同时包含付费和免费商品:
- 使用Store库的
createOrderWithCart
方法获取支付令牌和订单ID。 - 获取打开支付UI的URL。方法是调用Store库的
createPaymentUrl
方法并传入支付令牌和订单ID。 - 实现支付UI的打开:
- 使用Store库的
- 要在外部浏览器中打开支付UI,请调用
UIApplication.shared.open
静态方法并向其传入上一步中获得的URL。 - 要在内置浏览器中打开支付UI,请实例化Payments库的
PaystationWebView
类,然后调用loadPaystation
方法。演示项目提供了PaystationVC
类中的实现示例。
- 要在外部浏览器中打开支付UI,请调用
- 如用户购物车中仅包含免费商品,请调用Payments库的
createOrderWithFreeCart
方法。向该方法发送请求成功后,艾克索拉侧向用户发放商品将立即发生(无需打开支付中心)。
将免费商品发放给用户
您可以重复调用Store库的getOrder
方法来跟踪免费商品的订单状态。
如果订单成功,请使用显示用户物品库的SDK方法来更新应用程序用户端侧的数据。
注:
如果配置了让您的应用程序服务器来处理艾克索拉Webhook,可在收到order_paid Webhook时更新应用程序客户端侧的数据。
本文对您的有帮助吗?
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。有用链接
上次更新时间: 2024年1月22日发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。