问题汇总
登录对接
1. 无法搜索到当前接入的游戏
参考调试说明,或联系平台人员,告知需要调试的迅雷平台用户 ID。
2. 如何查看迅雷平台用户 ID ?
- 登录迅雷个人中心。
- 页面中显示的数字账号就是迅雷平台用户 ID。

3. 无法进入游戏,启动游戏报错?
支付对接
1. 无法调起内购支付?
检查后端的内购支付功能是否已经正确接入。
iOS 特性
1. localStorage 无法持久化导致游戏进度丢失
一些游戏会将游戏进度保存在本地的 localStorage
,这在许多浏览器场景(包括未开启“阻止跨站跟踪”的 Safari 浏览器)没有问题。
然而,iOS 迅雷客户端使用的 WKWebView
默认开启“阻止跨站跟踪”。这导致端内的浏览器在 iframe
内页面的 localStorage
数据会随浏览器进程的关闭而丢失,从而导致用户进度丢失,引发负反馈。
解决方案
我们提供了一个 storage-proxy
SDK 来尽量规避此问题,这需要游戏方在 html 顶部引入一个脚本。
<!-- 此脚本用于代理iOS环境下的localStorage方法,src中type=child的参数必须保留 -->
<!-- 此脚本需要在游戏涉及localStorage的操作之前引入 -->
<script src="https://xlgamebox-youxi.xunlei.com/xl-libs/storage-proxy/1.0.0.js?type=child"></script>
<!-- ……任意代码…… -->
<!-- 非强制要求,但建议引入上面的storage-proxy脚本后,再引入迅雷游戏的JS-SDK -->
<script src="https://xlgamebox-youxi.xunlei.com/xl-libs/xl-game-sdk/latest-v2.js"></script>
SDK 核心原理是在 iOS 端通过代理用户的 localStorage,在 setItem
removeItem
clear
的同时持久化一份数据到父 window ;同时在页面每次启动时,会将父 window 持久化的数据写入到 localStorage,进而模拟 localStorage 的持久化能力
注意
storage-proxy
脚本链接存在type=child
参数,这个参数目前是必需的。因此,如果游戏方不采用链接引用脚本,而是直接将此脚本打包进游戏中,会因为链接参数缺失而导致脚本失效。- 由于 SDK 的机制问题(存在异步操作),
storage-proxy
脚本需要尽可能早的引入,且不建议添加defer
或async
属性,也不建议使用动态插入的方式。 - 如游戏同时接入了
小川科技
的小游戏平台,且使用了他们提供的 storage-proxy.1.0.0.js 脚本 解决相同问题,请勿将这个脚本和此处提供的脚本同时引入。 - 虽然上述方法能尽量解决 iOS 端进度丢失问题,但仍然建议有条件的游戏方将游戏进度保存在服务器。
其它
1. 游戏接入方需要提供几个回调地址?
一个游戏仅需要提供一个回调地址,平台 POST 请求这个回调地址时会携带 notify_type
字段表示需要执行的接口功能。
2. 游戏横屏(全屏)表现异常?
请阅读文档前端横竖屏指引,文档对可能的游戏情况提供了不同的解决方案。如未能解决问题,请联系平台技术人员。