ILRuntime 的学习

ILRuntime是基于C# 的热更插件,详细信息请百度

一· ILRuntime 的安装

一.直接打开Package Manager即可找到ILRuntime

二.如果步骤一无法找到

1.项目的Packages/manifest.json中,添加ILRuntime的源信息,在这个文件的dependencies节点前增加以下代码

"scopedRegistries": [
  {
    "name": "ILRuntime",
    "url": "https://registry.npmjs.org",
    "scopes": [
      "com.ourpalm"
    ]
  }
],

2.然后通过Unity的Window->Package Manager菜单,打开Package Manager可找到ILRuntime

三.如果还是无法找到

1.那就在项目的manifest.json中的dependencies段的开头,增加如下代码手动将ILRuntime添加进项目

"com.ourpalm.ilruntime": "1.6.0",

2.然后通过Unity的Window->Package Manager菜单,打开Package Manager可找到ILRuntime

三.解决导入报错

按照以上步骤导入后,会出现一堆报错,没关系,我们一个个来解决
1.开启unity的不安全代码就可以了


至此,ILRuntime的安装和官方demo的导入就完成了




二 ·ILRuntime 尝试运行Demo

一.打开01_HelloWorld尝试运行

二.运行报错


1.使用VS打开HotFix_Project.sln



2.右键HotFix_Project——生成



3.在StreamingAssets文件夹下生成新的文件

4.再次运行打印如下

OK 现在可以正常运行了!!!!!!




三 · ILRuntime 尝试打印"Hello World!"

一.打开HelloWorld脚本

1.找到OnHotFixLoaded函数,请看下图注释


二.尝试打印HelloWorld

1.打开打开HotFix_Project工程,找到对应的InstanceClass类,找到我们刚才在unity调用的那个方法StaticFunTest



2.重新生成一下,然后运行试试


ok 成功的通过ILRuntime打印出了"Hello World!"




四 · ILRuntime 安装调试插件

一.官方gitHub下载插件 注意VS版本

1.地址:https://github.com/Ourpalm/ILRuntime/releases

二.插件安装

1.关闭VS
2.打开 ILRuntimeDebuggerLauncher.vsix 安装



3.按步骤进行即可


点击Install

如果不关闭VS一直停留在这里

正在安装

安装完成

OK 调试插件已经安装完成




五· ILRuntime 开始调试

一.为了方便调试,先改一下代码

1.当按下F1的时候就打印信息
HelloWorld脚本,在update里面添加以下代码:

 if (Input.GetKeyDown(KeyCode.F1))
    OnHotFixLoaded();

2.调试插件使用时需要在Unity工程里添加appdomain.DebugService.StartDebugService(56000);该代码,其中的appdomain指向你的热更程序集


二.打断点,运行unity

1.HotFix_Project工程,打上断点。运行unity


HotFix_Project工程

2.在HotFix_Project工程里面打开调试插件的窗口 Debug(调试)->Attach to ILRuntime



3.在弹出来的窗口中填入被调试的主机的IP地址以及调试服务器的端口,点击attach,就开始调试了。

4.开始调试,在unity内选中运行中的Game窗口按下F1,就可以跟正常的VS调试一样用了


ok 调试插件运行成功




六· 生成dll 位置

如果HotFix_Project文件夹没有放在项目中,那么生成的dll文件还在StreamingAssets下。





ILRuntime基本原理

ILRuntime热更流程

ILRuntime主要限制


官方文档https://ourpalm.github.io/ILRuntime/public/v1/guide/performance-optimization.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容