首页 文章 记一次unity2021.3.23的ios闪退问题
游戏9月开启了一次小范围内测,一直没有删档,中间有小更新,安卓每天有大几百的活跃,ios每天有几个内部人在玩着。在11月左右大家反馈ios每天闪退几次,而且越来越频繁。
第一时间反应是根据提交的dump包分析了一下对战,全都是gfx里边,看起来像是多线程相关的渲染,而且是ios的metal。
而且几个dump的信息好像堆栈还不是完全一样。
然后看记录unity的一些打包配置好像做过一些调整,然后hybridclr从3.x升级到4.x,开启了增量式GC
还原配置,还原hybridclr,因为只有内部测试2-3台iphone,表面上看貌似有好转。
但是几天后ios的小伙伴还是说闪退情况比较明显,而且都是战斗的时候出现的。
排除近2月的代码改动,还原各种版本尝试了,好像问题并没有解决,其他也没什么改动,大部分的逻辑代码都热更工程,不会引用一些unity的新的接口。
最后各种排查发现大部分的dump都是ios17.x,看了下ios的更新日期正好是最近,难道是因为ios新版本和unity的有兼容问题。
把unity升级到了2021.3.33重新打包,测试,没问题了,基本一次都不闪退了。
项目也做了2年多都快3年了,最早是2019,一路升级到2021,想着测试了几次尽量就稳定下来不升级版本了。