如何防止UnityEngine.Debug.Log将多行写入ADB

noo*_*ntz 2 android remote-debugging adb unity-game-engine

我正在使用 ADB 从在连接的 Android 设备上运行的 Unity 构建的应用程序登录 Windows PowerShell。我只对在脚本中调用的我自己的消息感兴趣,例如 UnityEngine.Debug.Log(" ## State set to SolvingAnchor "),但 Unity 在此消息中附加了 8 行:

  • .\adb logcat -s Unity -e "^[#]{2}" -m 1
  • --------- 崩溃开始
  • ---------系统开始
  • --------- 主程序开始
  • 02-11 10:07:42.658 8293 8315 I Unity : ## 状态设置为 SolvingAnchor
  • 02-11 10:07:42.658 8293 8315 我 Unity: UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
  • 02-11 10:07:42.658 8293 8315 I Unity: UnityEngine.Logger:Log(LogType, 对象)
  • 02-11 10:07:42.658 8293 8315 我 Unity: UnityEngine.Debug:Log(对象)
  • 02-11 10:07:42.658 8293 8315 我统一:Assets.Scripts.TrackedImageHandler:SetState(状态)
  • 02-11 10:07:42.658 8293 8315 我统一:Assets.Scripts.TrackedImageHandler:Update()

  • 02-11 10:07:42.658 8293 8315 我统一:

  • 02-11 10:07:42.658 8293 8315 I Unity:(文件名:./Runtime/Export/Debug/Debug.bindings.h 行:35)
  • 02-11 10:07:42.658 8293 8315 我统一:

正如在正则表达式上的输出过滤中所看到的那样,它并没有像我希望的那样工作。有没有办法只打印消息并跳过 Unity 生成的冗余行?

fra*_*mes 5

您可以在控制台窗口的右上角菜单中更改项目的堆栈跟踪日志记录设置:

在此输入图像描述

将其设置为“None”将使 Unity 忽略所有这些额外的堆栈跟踪行。您可以单独为错误、警告、日志等设置它,也可以为“全部”下的所有类型的消息更改它。