Android学习笔记——log无法输出的解决方法和命令行查看log日志
本人邮箱:JohnTsai.Work@gmail.com,欢迎交流讨论。
欢迎转载,转载请注明网址:http://www.cnblogs.com/JohnTsai/p/3983936.html。
- 知识点
1.log无法输出的解决方法
2.通过命令行(command line)查看Android调试的log日志
- log无法输出的解决方法
今天调试Android程序,发现Eclipse不输出log日志了。这让我很烦恼,程序调试的log都没法看到了。Google搜索了一些资料。发现stackoverflow上有很多人也遇到过同样的问题。在这里整理了一下解决方案。
http://stackoverflow.com/questions/4228641/logcat-not-displaying-my-log-calls
http://stackoverflow.com/questions/6090849/why-cant-i-see-my-print-statements-in-logcat
试试以下方法:
1.去DDMS,双击你要调试的应用、或者你的设备
2.去除掉除了你正在调试的设备的之外的所有其他设备。
3.设置LogCat过滤器为Debug或Verbose。
4.清除一下log日志。
5.重启Eclipse
- 命令行查看log日志
在网上找了很多方法解决log不输出的问题,发现第一次都可以输出,但是后面就又输出不了了。于是我想到了命令行(Command line)adb查看logcat的办法。
试了试发现效果不错,但是adb logcat这条语句把所有的日志信息都输出了,不便于我查看要调试的log。于是又Google了一些资料,整理了一下。
http://www.herongyang.com/Android/Debug-adb-logcat-Command-Debugging.html
下面是logcat语句的各种用法的具体格式 :
为了更好的使用"adb logcat"命令,我们来研究一下它的各选项:
"adb logcat -s" 设置默认的过滤器为无记载的(silent)
"adb logcat -f<filename>"将日志信息输出写入到文件,默认是(stout -Standard Output)标准输出。
"adb logcat -r <kbytes>"循环每kbytes输出log文件,默认是16,需要-f选项
"adb logcat -n <count>" 设置循环输出log文件的最大值,默认值是4,需要-r选项
"adb logcat -v <format>"设置日志log信息的输出格式,默认是简要(brief)输出
"adb logcat -c" 清除所有的日志消息,然后退出
"adb logcat -d" 输出所有的日志信息到屏幕 然后退出
"adb logcat -g" 打印特定的日志缓存区的大小然后退出
"adb logcat -b <buffer>" 要求交替的缓存环,"main","system","radios","events",可以使用参数 -b多次,结果是交错的。默认的是-b main -b system
日志类型表标识符(优先级依次递增):
1.Verbose(V):详细(优先级最低)
2.Debug(D): 调试
3.Info(I):消息
4.Warn(W):警告
5.Error(E):错误
6.Fatal(F): 重大的
7.Silent(S):无记载的(优先级最高)