“Android Studio 真機除錯時LogCat無顯示問題”的解決
使用 LogCat
Android 中的日誌工具類是 Log(android.util.Log),提供瞭如下的幾個方法供我們列印日誌。
Log.v() 對應 Verbose
Log.d() 對應 Debug
Log.i() 對應 Info
Log.w() 對應 Warn
Log.e() 對應 Error
Log.wtf() 在輸出日誌的同時,會把此處程式碼此時的執行路徑(呼叫棧)打印出來。
介紹完畢,我們來演戲一下吧。開啟 HelloWorldActivity,在 onCreat()方法中新增一行列印日誌的語句,為了讓日誌明顯一點我加了一些下劃線,如下所示:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_hello_world);
Log.d(“HelloWorldActivity”,”_________onCreate execute_________
}
Log.d() 方法中傳入了兩個引數,第一個引數是 tag,一般傳入當前的類名就好,主要用於對列印資訊進行過濾。第二個引數是 msg,即想要列印的具體內容。
現在重新執行一下專案,點選工具欄中的綠色小箭頭,或者按 Shift+F10。等程式執行完畢,使用模擬器的戰友可能已經能看到日誌了,如下圖
使用真機的戰友,可能看到的還是空蕩蕩的LogCat。需要做這麼一件事,選單欄 Tools → Android → Enable ADB Integration 把這個勾上,然後再次執行。
這次應該能看到日誌了吧?看看能不能找到我們想要打印出來日誌資訊。過濾器中一定要選中 app:com.xxxx.helloworld 哦。如果有日誌,但是找不到我們想要列印的日誌 HelloWorldActivity: _________onCreate execute_________
我們來嘗試解決這個問題。
手機的開發人員選項打開了麼,其中的 USB 除錯打開了麼?搞定他們並重新執行,是否能找到我們的日誌?否,轉到 2。
日誌中是否有這樣 could not disable core file generation for pid 3963: Operation not permitted 的資訊麼? 是,轉到 3;否,那我也不知道怎麼搞,或者你可以把日誌貼到評論中我看看。
是華為手機麼?是,轉到 4;否,你可以參考 4 自己 Google Baidu 一下。
在撥號介面輸入:##2846579##
Project Menu → 後臺設定 → LOG設定
LOG 開關 → LOG 開啟 LOG 級別設定 → VERBOSE
Dump&Log → 全部選中
重啟手機,重啟 Android Studio。
PS:根據系統版本的不同,可能會有些許差異。
重啟完畢,開啟 Android Studio,執行專案,這下應該能找到我們的日誌了。如果還沒找到,對不起洗洗睡吧,我只能幫到這兒了。(或者你可以換個手機)