Ubuntu 下Android开发常用命令笔记

来源:互联网 发布:棋牌游戏平台源码 编辑:程序博客网 时间:2024/04/28 23:47

Ubuntu 下Android开发常用命令笔记

logcat

Android手机常用的log

通过adb shell命令,进入shell,在/dev/log/下可以看到有一下四个目录:
-events:从名字看就会了解,该目录下的log是一些关于系统事件的。如果power的休眠,screen被触摸等,都会有一些事件被触发,可以在该log文件中进行追踪查看当前手机的一系列事件活动。
-main:输出关于app应用程序的log内容。
-radio:输出射频相关的log,例如sim卡的STK, modem相关的一些数据指令等都会在这里面看到。还会包含处于framework层的一些log信息,例如framework层与modem交互的地方。
-system:输出系统服务的相关log。例如WifiService,ActivityManager等服务日志。

此外,针对Qualcomm和MTK不同的芯片平台下,还会有他们更多各自一些自己的log文件。

MTK Log
MTK平台上一般的log文件目录有:
-mobileLog:主要就是上述的events,main,radio,system。
-netlog:就是一些上网的log信息.
-mdlog:主要是针对modem底层的log,一般需要解码才能看到具体的内容。

如都会有的kernel log,就是Linux内核输出的相关log,例如driver,包括像UI的内核实现,以及相机,蓝牙等的内核实现。还有一项很重要的log信息也是在kernel log中可以查看的,就是内存等资源的使用百分比,可以具体到某个线程的使用情况。
还有关于net的log,就是一些上网的log信息。

在做手机系统研发的过程中events,main,radio,system,kernel是测试人员或者复现bug必须提供的log文件。这样才能从底层到上层去查看bug的root cause具体出现在哪个地方,从而找出solution.
像用户手机返厂检测,工程师都会从这些log文件去查看问题的原因。个人感觉这些log文件就像飞机的黑匣子一样重要。

怎样在terminal中通过命令来查看和过滤这些大量的log

adb logcat -b < system, radio, events, main(default) >

过滤:
adb logcat -b < system, radio, events, main(default) > | grep “要过滤的字符串”

输出到指定文件~/Desktop/logfile:
adb logcat > ~/Desktop/logfile

输出到指定文件,且输出时间:
adb logcat -v time > ~/Desktop/logfile

0 0
原创粉丝点击