2
在Android源代碼中,我經常看到像Slog.v(WindowManagerService.TAG, "First window added to " + this + ", creating SurfaceSession");
這樣的行我怎麼能看到那些Slog在android監視器下? Slog和Log之間有什麼區別?是否有可能在android監視器中讀取Slog?
在Android源代碼中,我經常看到像Slog.v(WindowManagerService.TAG, "First window added to " + this + ", creating SurfaceSession");
這樣的行我怎麼能看到那些Slog在android監視器下? Slog和Log之間有什麼區別?是否有可能在android監視器中讀取Slog?
簡短的回答
你獲得與登錄由Slog
默認的日誌,但他們有其他的日誌信息之間的「隱藏」。爲了得到記錄與Slog
使用只是那些命令:
adb logcat -b system
龍答案
我看着Slog.java
來源:
public static int v(String tag, String msg) {
return Log.println_native(Log.LOG_ID_SYSTEM, Log.VERBOSE, tag, msg);
}
相比Log.java
:
public static int v(String tag, String msg) {
return println_native(LOG_ID_MAIN, VERBOSE, tag, msg);
}
如您所見,差異僅在LOG_ID
參數中。
然後我看着adb logcat -help
:
...
-b <buffer> Request alternate ring buffer, 'main', 'system', 'radio',
'events', 'crash' or 'all'. Multiple -b parameters are
allowed and results are interleaved. The default is
-b main -b system -b crash.
...
我沒有任何進一步的檢查 - 它看起來像-b
選項對應於不同LOG_ID
PARAMS一個安全的賭注。
感謝vasiliy,如果我做adb logcat -b系統我會看到日誌顯示在Android監視器或只是在Windows控制檯? – loki
@loki我總是使用命令行。也許有一種方法可以在Android Studio中獲得它,但我不知道如何... – Vasiliy