我正在開發一個android應用程序。我的應用經常崩潰。我想將logcat消息保存在SD卡中,而應用程序崩潰找到根本原因。有沒有辦法做到這一點?崩潰時在sd卡中寫入logcat消息
2
A
回答
2
一些想法可能會幫助您邁向全自動崩潰日誌收集。我們還沒有一卷一個完整的系統,我們已經有足夠的運氣就可以抓取設備,他們已經墜毀後,或要求從我們的QA小組的詳細信息,但是:
- ACRA是比較容易實現的,並且即使您沒有實現它,源代碼也會在github上供您參考。
- 相關問題Android crash reporting library (pre Froyo)有許多鏈接和解決方案,其中包括android-remote-stacktrace,上述ACRA,Android-Error-Reporter和其他商業解決方案。
- 某些設備會自動捕獲崩潰輸出,您可以通過
adb pull /data/log/dumpstate_app_native.txt.gz
或類似設備抓取它 - 路徑應顯示在logcat中。不過,這些往往會在每次崩潰時被覆蓋。 (如果任何人都可以回答這是一個製造商特定的功能還是出現在某個版本的Android核心中的東西,我很想知道!) - 您可以獲得一個logcat應用程序,例如, aLogCat或許多其他,您可以在您的設備上安裝。
- TestFlight正在Android端進入beta版;他們在iOS方面有崩潰報告,並且也應該在Android方面,而且使用他們的服務還有其他許多可愛的好處 - 而且我們的體驗非常簡單。
如果您正在推出自己的應用程式中,你需要的READ_LOGS和WRITE_EXTERNAL_STORAGE清單權限(即使是本地版本),那麼你可以使用日誌API或常規File.copy甚至一個系統調用關閉到logcat
本身。還有在「相關」鏈接到這個問題的側一堆選項和示例:
- Stream android logcat output to an sd card
- How to redirect my log output from logcat to the SD-Card on an android device?
- ...等等。
希望這有助於。
0
閱讀您自己的logcat消息也包含在其他問題中。
how can i access logcat file on device Read logcat programmatically within application
爲了做到這一點,當你的應用程序崩潰,你需要安裝一個defaultUncaughtExceptionHandler。
無論您在創建活動或您的應用程序創建。添加下面的代碼。
final Thread.UncaughtExceptionHandler oldUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable throwable) {
// DO your error handling here.
// Write your log cat, or write your exception stack trace here.
// Get rid of this line if you don't want a popup letting you know that your app has crashed.
oldUncaughtExceptionHandler.uncaughtException(thread,throwable);
}
});
相關問題
- 1. SD卡寫入方法崩潰在AlarmReceiver
- 2. 在android中寫入SD卡
- 3. 寫入SD卡
- 4. 寫入SD卡
- 5. 寫入SD卡
- 6. 在Python中崩潰時顯示消息?
- 7. 寫入SD卡Android
- 8. Android寫入SD卡
- 9. 當USB忙時捕獲LogCat(到SD卡)
- 10. Android在文件中寫入整個logcat消息
- 11. 寫入SD卡時出現問題
- 12. 錯誤寫入SD卡
- 13. 讀取/寫入Ext4 SD卡
- 14. 無法寫入到SD卡
- 15. SD卡寫入失敗?
- 16. failling寫入到SD卡
- 17. 允許寫入SD卡
- 18. 卡夫卡:消費者崩潰
- 19. IOCTL寫入崩潰
- 20. Django崩潰沒有消息
- 21. 同時讀寫SD卡
- 22. EACCES權限在寫入SD卡時在奇巧中被拒絕
- 23. 無法在SD卡上寫入文件
- 24. 在Android上寫入內部SD卡
- 25. 在SD卡上寫入.3gp文件
- 26. 如何在SD卡寫入數據
- 27. 流的Android的logcat輸出到SD卡
- 28. 防止Windows中的崩潰消息
- 29. 崩潰與多UIAlertView中消息
- 30. Obj-C在substringWithRange消息上崩潰
這是僅用於本地調試,還是你想要的東西,可以與應用程序一起發貨? – leander 2013-05-05 15:13:43
你可能會對http://stackoverflow.com/questions/3378550/android-crash-reporting-library-pre-froyo感興趣,也可以看看ACRA和其他解決方案。如果你需要發貨,你需要一個非常可怕的「讀取敏感日誌數據」權限。 – leander 2013-05-05 15:14:51
我需要它進行本地調試 – vignesh 2013-05-05 15:20:10