跳到主要内容

FAQ

FAQ

Q: 需要手动创建 TudadaSDKHandler GameObject 吗?

不需要。首次访问 TudadaSDK.Instance 时会自动创建。无需手动创建,也请不要更改其名称。

Q: 可以在 Unity Editor 中测试吗?

可以。所有 API 在 Editor 中均以模拟(mock)方式运行。Storage 使用 PlayerPrefs,广告会立即模拟成功/完成。

Q: Storage 和 TudadaStore 有什么区别?

  • Storage(SetStorage/GetStorage):保存在设备本地。卸载应用后数据丢失。最大 10MB。
  • TudadaStore(TudadaStoreSave/TudadaStoreGet):保存在云端。更换设备后数据仍然保留。value 最大 2KB。

建议将游戏进度等重要数据存储在 TudadaStore 中,将设置值或缓存等数据存储在 Storage 中。

Q: 广告的 isEnded 为 true/false 时有什么区别?

onClose 事件的 isEndedtrue 表示用户观看了完整广告,此时应发放奖励。false 表示中途关闭了广告。

Q: WebGL 构建后 C# API 调用不工作

请确认 TudadaSDK.jslib 插件文件是否位于 Assets/Plugins/WebGL/ 路径下。该文件在 Unity WebGL 构建时会被编译包含在构建产物中,是 C# 调用 JavaScript 函数所必需的。通过 .unitypackage 安装会自动放置到正确位置,但如果导入后移动了文件,请将其恢复到原始位置。

Q: 每次 Unity 构建都需要修改 index.html 吗?

是的,Unity WebGL 构建时 index.html 每次都会重新生成。每次构建后都需要重新应用 WebGL 构建应用 中的修改内容。

如需自动化,可以自定义 Unity 的 WebGL Template

  1. 创建 Assets/WebGLTemplates/TudadaTemplate/ 文件夹
  2. 将修改完成的 index.html 放入该文件夹(保留 Unity 变量 {{{ }}} 语法)
  3. Project Settings > Player > WebGL > Resolution and Presentation > WebGL Template 中选择 TudadaTemplate

这样每次构建时都会自动生成包含 SDK 的 HTML。

Q: 压缩(Gzip)构建中 SDK 也能正常工作吗?

可以。SDK 与 Unity 构建文件是独立的,无论是否使用 Gzip 压缩,工作方式都相同。index.html 的修改方法也相同。但 不支持 Brotli 压缩,请在 Unity Build Settings 中将 Compression Format 设置为 Gzip 或 Disabled。