Unity专用企业级SDK / 跟踪订单状态
  返回文档

Unity专用企业级SDK

跟踪订单状态

注意
通过本SDK,您可以在应用程序的客户端侧跟踪订单状态。但是,我们建议您设置支付Webhook处理程序在应用程序后端接收订单信息。这样您可以实现对完成的购买的额外验证。
用户购买后,您的应用程序可执行以下操作:
  • 在应用程序UI中显示订单状态
  • 成功支付后划走相应用户余额
  • 成功支付后发放购买的商品
以下SDK方法中包含订单跟踪逻辑:
  • Cart.Purchase — 用于购物车下单
  • Cart.PurchaseFreeCart — 用于通过购物车购买免费商品
  • Catalog.Purchase — 用于一键购买商品
  • Catalog.PurchaseForVirtualCurrency — 用于使用虚拟货币购买商品
  • Catalog.PurchaseFreeItem — 用于一键购买免费商品
SDK参考文档
了解SDK方法及其参数的详细信息。

要处理成功的购买,只需在onSuccess参数中传入订单变为done状态时调用的函数即可。

购买方法封装了多个订单状态跟踪方法。根据应用程序的面向平台不同,机制也有所不同:

  • 对于WebGL编译版本,跟踪基于支付界面小组件的postMessage事件。如果支付中心小组件发送了一条订单状态已变为donecancel的消息,则跟踪停止。

  • 对于其他平台的编译版本,跟踪使用简单HTTP请求(短轮询)和WebSocket请求。跟踪根据以下算法执行:

    1. 建立一个Web socket连接。
    2. 如果订单状态在5分钟内未变成donecancel,则关闭Web socket连接。如果订单状态变为donecancel,则跟踪停止。
    3. 通过短轮询继续跟踪订单状态。每3秒钟发送一次简单HTTP订单状态请求。遇以下条件停止跟踪:
      • 订单状态变为donecancel
      • 订单状态在10分钟内未变成donecancel
注:
如Web socket连接失败,则使用短轮询跟踪订单状态。
您也可以实现对传入购买方法onSuccess回调函数的订单内容的处理。
本文对您的有帮助吗?
谢谢!
我们还有其他可改进之处吗? 留言
非常抱歉
请说明为何本文没有帮助到您。 留言
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。

有用链接

上次更新时间: 2024年1月22日

发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

报告问题
我们非常重视内容质量。您的反馈将帮助我们做得更好。
请留下邮箱以便我们后续跟进
感谢您的反馈!