2013-04-25 31 views
0

我正在處理重型日誌機制的解決方案,以便註銷例如在特定軟件包名稱下發生ANR時發生的情況。我想要實現的是在手機連接到計算機時記錄LogCat輸出的信息。 當手機斷開連接並由「普通」用戶使用時,可以這樣做嗎?通過特定軟件包名稱記錄在android中發生的事情

我發現這個很棒post,它輸出som相關logcat的東西到SD卡上的文本文件。

我已經使用命令:logcat -b main -d -v time作爲用於排序日誌記錄的字符串參數。

我還發現了一個possbile解決方案,通過擴展命令在Level(DEBUG,VERBOSE,ERROR等)之後進行排序。

所以命令會是這樣的:

adb -d logcat com.my.package:E *:S 

我在這個post發現了這個命令,但它wouldnt't登出什麼我的文件。

所以我的問題是:

我怎麼能基於上述信息,註銷logcat的信息,通過ERROR水平,在手機SD卡一個.txt文件,而不必連接到手機電腦和日食。它有可能嗎?

非常感謝!

+1

從Android 4.1開始是不可能的,除非包名稱是您自己的應用程序。 http://commonsware.com/blog/2012/07/12/read-logs-regression.html – CommonsWare 2013-04-25 12:41:25

+0

我只想註銷我的應用程序輸出的信息。 – 2013-04-25 12:49:14

+0

那你爲什麼還要用這些無證的廢話來打擾呢?只需將你的'Log.d()'和KIN調用封裝到你自己的文件中。有大量的Java日誌記錄框架,其中一些可以在Android上工作,其中一種(java.util.logging)被嵌入到Android中。 – CommonsWare 2013-04-25 12:52:58

回答

0

經過漫長的試驗和錯誤,我找到了解決方案,希望這可以幫助其他人。要將特定於應用程序的日誌寫入SD卡中的文本文件,請使用此命令。

"logcat -b main -d -v time ['your package name will go here']". 
相關問題