介绍

项目由 Unity 5.3 升级到 Unity 2018.4,DoTween 旧版本并未适配,因此需要升级到最新版本。

DoTween DLL 中存在过期 API 引用,导致每次编译完都会有编译警告,而且无法通过外部方法屏蔽。

环境

旧版本 新版本
Unity 5.3.8f2 Unity 2018.4.0f1
DoTweenPro v0.9.290 DoTweenPro v1.0.178
DoTween v1.0.750 DoTween v1.2.3355

更新日志

首先要确定 DoTween 新版本都改了些什么,会不会有某些破坏兼容性的改动导致无法升级。

仔细检查评估后发现可以升级到最新版本。

任务

  • DoTweenPro v0.9.290 升级到 DoTweenPro v1.0.178
  • DoTween v1.0.750 升级到 DoTween v1.2.335
  • 修正 DoTweenPro 升级导致的编译错误
  • 更新 DoTweenPro 升级后的配置文件

流程

官网提供了旧版本升级说明,需要严格按照步骤操作:

在做第二步关闭 Unity 工程后,使用比较软件对比 Demigiant 目录,保证工程内的与裸工程的 DoTween 文件完全一致,除了 DOTweenUpgradeManager.dll 等升级相关文件。

这里的关键点就是要保证项目内的 DoTween 插件目录文件与新版本完全一致,删除多余的旧版本目录文件。

然后在做完以上步骤后需要修正 xLua 导出类型,将旧的废弃的类型删除。注意 DoTween 修改了部分扩展 API 所在的类,需要将更新后的类添加到导出 API 列表

xLuaExportType.cs

1
2
3
4
5
        typeof(DG.Tweening.ShortcutExtensions43),
        typeof(DG.Tweening.ShortcutExtensions46),
        typeof(DG.Tweening.ShortcutExtensions50),
        // 新增的扩展类,将部分原有 API 移动到了此类中
        typeof(DG.Tweening.DOTweenModuleUI),

最后要删除多余 DoTweenSettings.asset,DoTween 只能从默认的三个位置中读取,因此需要保证项目内只存在一份路径正确且有效的配置。

验收

升级完成后需要进入游戏测试使用 DoTween 的地方效果都是正确的。