Unity 卡死排查方法(游戏死循环、打包卡死)

适用场景

  1. 游戏运行一半卡住了

  2. 打包卡住了

工具

  • visual studio

方法

  1. visual studio 启动工程,调试->附加到Unity,如果开了多个unity,可以用附加到进程找unity
    在这里插入图片描述
  • 打开线程窗口,调试->窗口->线程
    在这里插入图片描述

  • 点击暂停按钮,中断所有线程
    在这里插入图片描述

  • 查看当前unity的线程就可以定位什么问题了
    在这里插入图片描述

  • Unity Main

  • Unity Network

  • Unity 动画

真机环境

  • Andorid studio

  • 打包需要勾选ScriptDebugging
    在这里插入图片描述

  • unity附加如果看不到设备,确认下是否有adb链接上

    • 不同模拟器端口不一致,需要百度查下,例如mumu的是:adb connect 127.0.0.1:16384

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传


  • unity2021.3.20f1目前打这种包会失败,提示代码量过大,后续unity2022升级NDK后解决,临时解决办法:https://forum.unity.com/threads/android-builds-failing-when-script-debugging-is-enabled.1027357/#post-7627372

  • 加个参数--linker-flags=\"-Wl,--stub-group-size=115343360\"

  • 只打arm64架构包。