網上搜了N多解決方法,但是很多將log級別的,用法的,更多的是如何在logcat中設置filter進行log的過濾與查看,但是我遇到的問題是,模擬器怎麼著都OK,但真機、手機進行開發調試的時候卻看不到log信息,這是很惱人的事情(畢竟模擬器跑起來太慢了)。
剛開始沒有查到好的方法,就用try catch把exception打到一個alertdialog中,但是這樣只能看個大概,繞這個圈子沒用,最後還是在eoe的論壇上看到了解決辦法,恐怕原因是rom本身沒有打開log的開關
問題表現:連接手機與電腦後,驅動安裝正確,USB調試模式打開,在DDMS中可以看到device及其進程的信息,但是logcat中就是沒有信息輸出
問題原因:一些rom默認關閉logcat
問題說明:ddms中設備名字顯示為問號不影響,即adb get-serialno顯示為問號不影響.
解決方法:
1.需要root權限(部分rom不需要)
2.打開logcat,並設置level,執行命令如下(android 升級之後 adb 在 platform-tools中,不在tools中)
adb shell
echo 1 > /sys/kernel/logger/log_main/enable
說明:將1寫入日志開關文件,1為開,0為關
echo 2 >/sys/kernel/logger/log_main/priority
說明:將代表level的2寫入優先級文件
3.重啟adb,如果使用eclipse,先關閉eclipse,再重啟adb,再啟動eclipse
adb kill-server
adb start-server
4.此時logcat應該可以工作了,如果仍舊不工作,則更新adb
android update adb
5.重復第三步,此時logcat應該可以工作了,如果仍舊不工作,找到個人主目錄下的android目錄,如C:\Documents and Settings\Administrator\.android
找到這個目錄下的adb_usb.ini文件,其內容默認只有三行,全為注釋,在後面添加一行,內容為0x12d1
6.重復第三步,此時logcat應該可以工作了