开发须知
本文章包含开发过程中需要注意的地方
开发模式
开发模式可以大量提高开发效率,开发时无需一有修改就重新打Bundles
步骤
进入Init场景
选择Updater
勾选Development Mode即可开启开发模式,提高开发效率
开发指南
默认热更场景的Title对象,包含一个
LocalizationText
脚本,会导致该组件的Text
无法被修改,移除LocalizationText
脚本即可进行building bundle时,会弹出一个弹窗要求输入加密密码,共16位,用于加密DLL
Init场景中,找到HotFixCode,Inspector中Init方法里的Key为DLL加密密码

- 生成项目的时候,为了避免冗余,请手动删除热更场景(开发模式会自动将热更场景加入Build Settings)

常见问题
热更工程部分Unity类型不存在
热更工程中需要引用不同的Unity Module,在Unity安装目录,例如JEngine提供的UnityCoreModule等
Cannot find Delegate Adapter for: XXX:
根据报错,在Assets/Scripts/Helpers/目录下,打开不同的Helper,往
Register(Appdomain appdomain)
方法中添加报错信息里要求添加的东西即可不存在语言xx-yy,自动替换为xx-zz 多语言本地化的错误,多语言配置表格里不存在xx-yy这个语言
JEngine会自动匹配,相似的语种xx-zz,作为当前语言
该Bug可忽略,只需要在多语言表格里配置即可
如何更新
更新的方法有2种,建议第一种
方法一(推荐)
进入顶部导航栏->JEngine->Setting,打开面板后点击
更新JEngine
按钮,然后按提示的操作v0.5.5开始,JEngine完成了代码热更底层和业务层分离,这代表了您可以将自己项目中的适配器、注册委托、JSON转换注册、热更加载后事件等,写入Scripts/Helpers目录中的不同文件。这代表了您可以放心导入该整合包,可以放心替换Init.cs和InitILrt.cs,因为您自己的逻辑已被分离,您只需要确保,导入该整合包的时候,如果您的项目已有Scripts/Helper目录,请勿覆盖导入
方法二
- 覆盖更新UnityProject/Assets/Dependencies,UnityProject/Assets/Scripts/Init.cs,UnityProject/Assets/Scripts/InitILrt.cs,Init场景,手动对比HotUpdateResources的差异
- 覆盖更新UnityProject/HotUpdateScripts/JEngine和UnityProject/HotUpdateScripts/Examples目录
- 对比Scripts/Helpers目录中的文件进行删减
注意,覆盖更新热更工程后,需要重新添加JEngine目录的文件至解决方案

游戏热更新注意事项 By 清行
1. 资源热更
Updater 的 development
选项 表示 是否是开发环境
打上对号加载的是HotUpdateResources
资源
去掉对号
加载热更新资源
2. 代码热更
.Net Framework4.6.1
安装不上
1. 解决方法
右键 -> 解决方案 -> 属性 -> 应用程序 : 目标框架 选择对应的版本,需要
4.x
版本
DLL
跳过
2. 生成解决方案解决方法
方法一:菜单栏 -> 工具 -> 配置管理器
生成
的对勾 重新勾一下方法二:删除
Assets/HotUpdateResources/Dlls/Hidden~
文件夹,然后再进一下Unity,会自动重新生成文件夹,然后再生成解决方案
接入DoTween By L-Fone
前言:因DoTween插件的广泛使用,应部分JEngine用户要求,特写本篇教程教大家如何接入DoTween,如有不正确之处,还请留言指正。本人邮箱:275757115@qq.com
1、导入DoTween
2、拷贝Dll文件到HotFix的Dlls目录下
3、引入dll文件到HotFix工程中
4、使用DoTween
如果还有其他特殊情况,可以在JEngine群里求助,也可以联系QQ:275757115(L-Fone)