Version: 6000.3
语言: 中文
托管代码剥离和 Unity 链接器
使用注释保留代码

配置托管代码剥离

“托管剥离级别”属性确定 Unity 链接器在分析和剥离应用程序代码时遵循哪些规则。提高托管剥离级别会扩展链接器对未使用代码的搜索范围,但也会增加生成时间。

要更改“托管剥离级别”属性,请执行以下作:

  1. 转到 编辑>项目设置(Project Settings) > 播放器。
  2. “其他设置”中,导航到“优化”标题。
  3. “托管剥离级别”属性设置为所需值。
财产 功能
禁用 Unity 不会删除任何代码。

此设置仅适用于 Mono 脚本后端,并且是该情况下的默认设置。
极小 Unity 仅搜索UnityEngine以及用于未使用代码的 .NET 类库。Unity 不会删除任何用户编写的代码。此设置最不可能导致意外的运行时行为。

此设置对于可用性优先级高于构建大小的项目非常有用。如果使用 IL2CPP 脚本后端,则这是默认设置。
Unity 在所有UnityEngine和 .NET 类库。它还会搜索用户编写的程序集,但前提是播放器生成中包含的场景中没有引用它们的任何类型。此设置应用一组规则,用于删除一些未使用的代码,但最大程度地减少意外后果的可能性,例如使用反射的运行时代码的行为更改。

低托管剥离级别被标记为将来弃用,不建议使用它。请改用“最小”或“中”
中等 Unity 会部分搜索所有程序集以查找未使用的代码。此设置应用一组规则,用于剥离更多类型的代码模式以减小生成大小。尽管 Unity 不会删除所有可能的未使用代码,但此设置确实会增加不良或意外行为更改的风险。
Unity 对所有程序集执行广泛的搜索,以查找未使用的代码。在此设置下,Unity 将缩小大小置于代码稳定性之上,并删除尽可能多的代码。

此搜索可能比较低的剥离水平花费更长的时间。仅将此设置用于紧凑构建大小极其重要的项目。彻底测试您的应用程序并谨慎使用
[Preserve]attributes 和link.xml文件,以确保 Unity 链接器不会剥离重要代码。

其他资源

托管代码剥离和 Unity 链接器
使用注释保留代码