首页 文章 unity热更资源的依赖被代码裁剪掉真机报错的问题
unity热更资源的依赖被代码裁剪掉真机报错的问题
编辑时间:2021-09-12 16:26:07 作者:dashizi 浏览量:368

unity在il2cpp的模式下,默认会勾选Strip Engine Code,会对一些资源用到的代码进行裁剪。

使用ilruntime一般情况下我们会进行clr绑定,但也仅限于逻辑编写的代码部分。但是有些热更的资源会直接用到一些模块,默认打包会被裁剪掉,需要自己用link文件进行过滤裁剪。

根据资源加载时报错的一些信息,根据id查找对应的类名

https://docs.unity3d.com/Manual/ClassIDReference.html

比如报错找不到96:

Could not produce class with ID 96.

Assets下添加link.xml,如下:

link.xml


<linker>
    <assembly fullname="UnityEngine.CoreModule">
        <type fullname="UnityEngine.TrailRenderer" preserve="all"/>
        <type fullname="UnityEngine.SkinnedMeshRenderer" preserve="all"/>
    <type fullname="UnityEngine.LightProbes" preserve="all"/>
    </assembly>
</linker>


来说两句吧
最新评论