前期准备
InjectFix/README.md at master · Tencent/InjectFix · GitHub
https://github.com/Tencent/InjectFix/blob/master/Doc/example.md
在自己写的配置类配置好可能要热更的类
把东西都准备就绪之后,开始踩坑。
在本地测试,需要先进行Fix
把代码修改完,加完标签后 点击 Fix。。。然后
Error: the new assembly must not be inject, please reimport the project!
遇到这个提示,一般是要求你重新导入资源,对着Assets 右键--reimport。然后
报错依旧。
我们需要打开项目目录 把Library文件夹 以及 几个unity生成的 assembly-CSharp 删掉。
然后重启unity。
然后就Fix 成功了。
然后把生成的Assembly-CSharp.patch.bytes 移动到资源文件夹即可。
然后Inject。然后运行项目。。。然后
assembly may be not injected yet, cat find IFix.ILFixInterfaceBridge
出现这句话有几种可能
1.确实没更新,意思是测试的时候代码还没回退
2.配置类没有把你修改的类配置上
3.在加载完毕热更文件之前,你需要热更的类就已经实例化了(本人猜测),需要把你的类放在之后实例化。
4.可能需要再走一遍上面的流程
我们需要打开项目目录 把Library文件夹 以及 几个unity生成的 assembly-CSharp 删掉。
然后重启unity。
处理完以上问题后
再次inject 运行项目。
我好了,你继续。