Android日志系统有多个循环缓冲区,并不是所有的LOG信息都把LOG输出到默认循环缓冲区。为了看到其他缓冲区的LOG信息,你需要通过-b 选项来启动logcat 。来看其他循环缓冲区。这些缓冲区有:
· radio — 查看与无线/电话相关的缓冲区里的信息。
· events — 查看和事件相关的的缓冲区。
· main — 查看main缓冲区里的LOG (缺省)
-b 选项使用方法:
[adb] logcat [-b <buffer>]
下面的例子演示怎么查看包含radio 和 telephony信息的LOG缓冲区:
adb logcat -b radio
查看stdout和stderr
在默认状态下,Android系统输出stdout 和 stderr (System.out 和System.err)到/dev/null。在运行Dalvik VM的进程中,有一个系统可以备份日志输出。在这种情况下,系统会用stdout 和stderr和优先级 I.来记录日志信息。
通过这种方法来指定输出的路径,你可以停止运行的模拟器/设备,然后通过用命令setprop 使输出重定向。
$ adb shell stop
$ adb shell setprop log.redirect-stdio true
$ adb shell start
系统在你关闭模拟器/设备前设置会一直保留这些设置。为了使这个设置作为你的模拟器/设备的默认设置,可以通过添加到设备的文件/data/local.prop 中。
Logcat命令选项列表
选项
描述
-b <buffer>
加载一个指定的LOG Buffer供查看,比如event 或radio。 默认值是main 。具体参考查看指定的Log Buffers.
-c
清除整个 log并退出。
-d
输出LOG到屏幕上并退出。
-f <filename>
写LOG信息到 <filename>。默认是stdout.
-g
打印指定LOG Buffer的大小并退出。
-n <count>
设置日志的最大数目<count>,默认值是4,需要和选项-r一起使用。
-r <kbytes>
Rotates每输出<kbytes> 写LOG文件,默认值为16,需要和选项-f一起使用。
-s
设置默认的过滤级别为silent。
-v <format>
Sets 设置LOG的输出格式,默认的是brief 格式,要知道更多的支持的格式,参看控制LOG输出格式.
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
附,大家看两张在WORD里编辑的效果:
一、开头
二、结尾