Unity2022.3打包Android后从AB包加载场景发现丢失大量脚本问题

问题

这两天遇到一个问题,在VR项目打包Android的时候,加载场景后,Timeline工作不正常,找不到原因。

现象

看到有很多警告,丢失脚本的Log。
因为场景本身也有一些丢失的脚本所以没在意,但是又不是所有脚本都丢失。至少Timeline在工作。

在这里插入图片描述

在这里插入图片描述
一直以为是Timeline的问题,后来在Timeline激活的某个脚本的Awake上加Log,发现竟然没有输出,那么就是脚本丢失了。

解决

考虑到这里就发现忽视了IL2CPP Stripping Level等级问题。之前项目是Unity的2021,升级到2022后默认选择的Low级别。
在这里插入图片描述
看了2022的帮助文档,Low级别可能会搜索一些用户的未使用的脚本进行删除,所以这就是问题的原因了,选到Minimal就好了。或者使用mono吧。

官方原文
Low : Unity searches some user-written assemblies and all UnityEngine and .NET class libraries for unused code. This setting applies a set of rules that removes some unused code but minimizes the likelihood of unintended consequences, such as changes in behavior of runtime code that uses reflection.

2021的Low就是最低级别,2022之下还有一个Minimal。

当时考虑到是Stripping的问题,但是就是看了下就是Low就没管了,然后看了2021的文档,也没发现问题。2022还是有点区别。

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值