zoukankan      html  css  js  c++  java
  • Unity:Andriod部分手机频繁闪退,vivo y55a等,Skipped 62 frames! The application may be doing too much work on its main thread

    问题描述:
      部分手机频繁闪退的问题。比如:vivo y55a,在升级、交任务、穿戴装备等都有概率闪退...

    表现:
      卡几帧就马上闪退。
      在学习技能、穿戴装备、升级等概率出现,新角色第3个任务“拦截少年”完成后指引穿戴武器后大概率闪退,这时同时还预加载2个剧情资源,处理较多事情。
      闪退日志:Skipped 62 frames! The application may be doing too much work on its main thread,主线程做了太多事

    解决历程:
      最开始以为单帧处理东西太多,但这个手机之前在单帧处理大量消息时都没闪退【PS:1秒1000多条消息都处理过来了,虽然后面优化了,不是这个数量级了】。
    所以逻辑处理能力应该不错,后来发现每次出现“战力提升”这个特效时就概率闪退。
    至于怎么发现是特效,这个是不停尝试和打log试出来的,这个过程比较痛苦,不细说了,特效拿掉之后就不闪退了。
    
      既然定位到特效,就检查特效资源:
      1.先查是否挂了异常脚本,然没有。
      2.那就可能是shader了。
    
    这个设备默认是低配选项,无意发现手动切换成其他配置时,不会崩溃,那就是跟shader设置有关了,我们在切换配置的时候,会修改shader的LOD!而低端配置LOD为100!
    问题越来越清晰了,那就查这个特效引用的shader的LOD处理。发现其中用到一个shader,它的Subshader最低是200,而Fallback又没配置!
    意味着低端的话,这个shader没有执行逻辑!而这就是导致概率崩溃的最大元凶。最后改法,将最低LOD 200改为LOD 100,问题解决了。
  • 相关阅读:
    ld: cannot find lgcc_s
    Ubuntu 12.10 图形显示未知
    awk分析Nginx日志中的cookie
    Ubuntu 10.04 WPS 问题汇总
    objc[20556]:Class JavaLaunchHelper is implemented in both xxx 警告处理
    在Linux安装配置Tomcat 并部署web应用 ( 三种方式 )
    Spring Boot 系列(二)单元测试&网络请求
    Java自定义注解
    Spring Boot 系列(一)快速入门
    Spring 自定义注解,配置简单日志注解
  • 原文地址:https://www.cnblogs.com/hewei2012/p/8372502.html
Copyright © 2011-2022 走看看