项目是从HDRP转到URP的。
编译到iOS的xcode项目,在m1 pro芯片的macbook中的模拟器运行时,直接闪退报错EXC_BAD_ACCESS。
起初怀疑是场景内脚本抛了异常导致的闪退,但把所有错误都解决了,甚至新建了一个项目把之前的文件拷贝过来,还是会出现闪退。
因为unity ios的模拟器target只支持编译为x86,怀疑rosetta转译的问题,但unity hub的默认模版并不会出现闪退。
后续尝试一个个删除unity场景内的object,发现只要删了大部分object(外部导入的模型跟Canvas内的部分object),就不会出现闪退。
查了好久,各种解决方案都没用。
解决
最后用unity 2020.3.33新建了项目,把之前的项目文件复制过来,居然解决了。
感觉应该是2021跟2022版本对m1芯片的适配有问题。