實時打印的主要有:logcat main,logcat radio,logcat events,tcpdump,還有高通平臺的還會有QXDM日志
狀態(tài)信息的有:adb
shell dmesg,adb shell dumpstate,adb shell dumpsys,adb bugreport
講解一下各自作用:
通過DDMS抓的其實跟用dos批處理抓的一樣都是logcat的
日志文件,ddms抓的通常是main緩存中的,就是應(yīng)用程序打印的日志文件。不過ddms好處在于能夠?qū)崟r看到帶有顏色的,如果是用dos批處理只能重定向到文件,到抓完之后才能夠看到,不是實時的。
adb logcat -b main -v time>app.log 打印應(yīng)用程序的log
adb logcat -b radio -v time> radio.log 打印射頻相關(guān)的log,SIM STK也會在里面,modem相關(guān)的ATcommand等,當(dāng)然跟QXDM差的很遠了。
adb logcat -b events -v time 打印系統(tǒng)事件的日志,比如觸屏事件。。。
tcpdump 是很有用的,對于TCP/IP協(xié)議相關(guān)的都可以使用這個來抓,adb shell tcpdump -s 10000 -w /sdcard/capture.pcap,比如抓mms下載的時候的UA profile,browser上網(wǎng)的時候,使用proxy的APN下載,streaming的相關(guān)內(nèi)容包括UA profile等。
最后是高通平臺的QXDM,不管是不是
Android,只要使用高通芯片,都會對它很熟悉,當(dāng)然了,不是高通的芯片就不用提它了。這個不多講,內(nèi)容豐富,射頻,電話,上網(wǎng),...凡是高通提供的解決方案,這個都可以抓。
狀態(tài)信息:其實一個就夠了,那就是bugreport(命令adb bugreport>bugreport.log)。里面包含有dmesg,dumpstate和dumpsys。dmesg(命令adb shell dmesg > ldmesg_kernel.log)是kernel的log,凡是跟kernel相關(guān)的,比如driver出了問題(相機,藍牙,usb,啟動,等等吧)。 dumpstate是系統(tǒng)狀態(tài)信息,里面比較全,包括
手機當(dāng)前的內(nèi)存信息、cpu信息、logcat緩存,kernel緩存等等。adb shell dumpsys這個是關(guān)于系統(tǒng)service的內(nèi)容都在這個里面,這個命令還有更詳盡的用法,比如db shell dumpsys meminfo system是查看system這個process的內(nèi)存信息。
還有其他的比如PV的log,一般都是開發(fā)人員自己寫的,可能讓你放到sd卡里面,其他的不足或需要補充的期望您的指導(dǎo)。