adb logcat,只显示自定义日志事件?

Dev*_*ate 0 android adb unity-game-engine android-logcat

我正在使用adb logcat -s Unity从我的Android版本查看日志输出.但是,我得到了许多我并不总是需要的东西:

08-10 15:53:25.956 17278 17297 D Unity   : Sensor :        Accelerometer ( 1) ; 0.002394 / 0.00s ; BMI160 accelerometer / Bosch
08-10 15:53:25.960 17278 17297 D Unity   : Choreographer available: Enabling VSYNC timing
08-10 15:53:26.133 17278 17297 I Unity   : Launching UI...
08-10 15:53:26.133 17278 17297 I Unity   : UnityEngine.DebugLogHandler:Internal_Log(LogType, String, Object)
08-10 15:53:26.133 17278 17297 I Unity   : UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
08-10 15:53:26.133 17278 17297 I Unity   : UnityEngine.Logger:Log(LogType, Object)
08-10 15:53:26.133 17278 17297 I Unity   : UnityEngine.Debug:Log(Object)
Run Code Online (Sandbox Code Playgroud)

有没有办法只获取我故意输出的消息,即上面的"启动UI ..."?

目前我正在使用Debug.Log()输出这些消息.

Kev*_*lou 7

您可以为发送的每条日志消息添加前缀.

Debug.Log("<my-prefix> Hello World");
Run Code Online (Sandbox Code Playgroud)

然后,在linux上:

adb logcat | grep '<my-prefix>'
Run Code Online (Sandbox Code Playgroud)

或者在Windows上:

adb logcat | find "<my-prefix>"
Run Code Online (Sandbox Code Playgroud)

您还可以使用自己的日志方法自动为日志消息添加前缀.

编辑

使用logcat的-e选项可以获得相同的行为:

adb logcat -e <my-prefix>
Run Code Online (Sandbox Code Playgroud)