一.logcat抓log方法:adb logcat命令兴使,可以加條件過(guò)濾
1.安裝SDK(參考android sdk環(huán)境安裝)
2.使用數(shù)據(jù)線鏈接手機(jī)霜医,在手機(jī)助手的sdcard中建立一個(gè)1.log的文件或在抓日志時(shí)直接導(dǎo)出到電腦位置
3.程序運(yùn)行cmd,進(jìn)入到含有adb.exe目錄
4.輸入adb devices 查看設(shè)備是否連上
5.輸入抓取命令:adb logcat -s *:E > /mmt/sdcard/1.log或logcat -s '*:E' >d:/1.log,
6.使用手機(jī)打開app操作崩潰一次(如果想中途停止按下ctrl+c)
7.查看日志抓取文件,分不清楚是那個(gè)時(shí)間段所造成的后果
8.加入命令:-v time 就會(huì)顯示出時(shí)間
9.輸入命令adb logcat -v time -s *:E > /mmt/sdcard/1.log(eg:adb logcat -v time -s appname:E>d:/1.log)
10.查看結(jié)果
ps:
adb logcat -v time -s appname:E>d:/1.log
-v 顯示日志格式 ?-v time 以時(shí)間為顯示格式
-s 默認(rèn)過(guò)濾隧期,不顯示默認(rèn)tag。系統(tǒng)把tag的默認(rèn)過(guò)濾級(jí)別是設(shè)置為Verbos,tag需要顯示邑贴。如果設(shè)置-S等同于*:V
appname:E 顯示appname操作中優(yōu)先級(jí)大于等于“error”的日志
二、log過(guò)濾--根據(jù)Log信息級(jí)別
??F — 嚴(yán)重錯(cuò)誤??S — 無(wú)記載 (最高優(yōu)先級(jí)叔磷,沒(méi)有什么會(huì)被記載)
三拢驾、?
?log過(guò)濾器使用(?
過(guò)濾器表達(dá)式的格式是tag:priority ... ,其中tag是標(biāo)記(可以是具體的改基,*表示所有)繁疤, priority是最小的優(yōu)先級(jí),可以是組合
adblogcat ActivityManager:I MyApp:D *:S
adblogcat * :W -----所有優(yōu)先級(jí)大于等于“warning”的日志
adblogcat * :E -----所有優(yōu)先級(jí)大于等于“error”的日志
四、log輸出-log控制日志格式 adb logcat -v 格式
brief — 顯示優(yōu)先級(jí)/標(biāo)記和原始進(jìn)程的PID (默認(rèn)格式)
process — 僅顯示進(jìn)程PIDtag — 僅顯示優(yōu)先級(jí)/標(biāo)記
thread — 僅顯示進(jìn)程:線程和優(yōu)先級(jí)/標(biāo)記
raw — 顯示原始的日志信息秕狰,沒(méi)有其他的元數(shù)據(jù)字段
time — 顯示日期稠腊,調(diào)用時(shí)間,優(yōu)先級(jí)/標(biāo)記封恰,PID
long —顯示所有的元數(shù)據(jù)字段并且用空行分隔消息內(nèi)容
eg:adb logcat -v thread
五.log輸出-附加緩沖區(qū):adb logcat -b?
radio?—?查看包含在無(wú)線/電話相關(guān)的緩沖區(qū)消息
events?—?查看事件相關(guān)的消息
main?—?查看主緩沖區(qū)?(默認(rèn)緩沖區(qū))
adb logcat -b ?radio
什么也不加代表默認(rèn)緩沖
六.log輸出-log選項(xiàng)列表
-b? 指定要查看的日志緩沖區(qū)麻养,可以是system,events?,radio,main?. 默認(rèn)值是system和main?。
-c?清楚屏幕上的日志.?
-d?輸出日志到屏幕上.?
-f? 指定輸出日志信息的诺舔,默認(rèn)是stdout .?
-g?輸出指定的日志緩沖區(qū)鳖昌,輸出后退出.?
-n? 設(shè)置日志的最大數(shù)目.,默認(rèn)值是4低飒,需要和 -r 選項(xiàng)一起使用许昨。?
-r? 每時(shí)輸出日志,默認(rèn)值為16褥赊,需要和-f 選項(xiàng)一起使用.?
-s?設(shè)置默認(rèn)的過(guò)濾級(jí)別為silent.?
-v? 設(shè)置日志輸入格式