我有一個我在市場上發佈的Android應用程序。有些客戶報告了某些設備的兼容性問題。我相信我需要查看這些設備的LogCat以發現問題。問題是我沒有那些方便測試的設備。在客戶端設備上登錄Android應用程序
是否有某種方式可以使應用程序在其活動期間記錄logcat輸出?我知道我可以添加手動日誌記錄並將其寫入文件,但我不想僅記錄我的應用程序的輸出,而是從LogCat中的所有內容。然後,我可以讓客戶向我發送日誌文件以供分析。
我有一個我在市場上發佈的Android應用程序。有些客戶報告了某些設備的兼容性問題。我相信我需要查看這些設備的LogCat以發現問題。問題是我沒有那些方便測試的設備。在客戶端設備上登錄Android應用程序
是否有某種方式可以使應用程序在其活動期間記錄logcat輸出?我知道我可以添加手動日誌記錄並將其寫入文件,但我不想僅記錄我的應用程序的輸出,而是從LogCat中的所有內容。然後,我可以讓客戶向我發送日誌文件以供分析。
如果他們有SDK安裝的只是連接手機和做:
adb logcat -d > logcat.txt
我不認爲有對Android操作系統的「開箱即用」的解決方案爲你想。這將是一個安全風險恕我直言。可能有一個應用程序。
你可以找到關於這個主題在這裏:http://forum.xda-developers.com/showthread.php?t=543128
來處理,這是當應用程序有一個崩潰或出現故障做一些事情(在try..catch或者...)的一種方式,你可以再保存棧爲用戶要發送的文件你,或者將其自動發送到你的服務器(當然,你應該提醒用戶)
編輯:
與另外anwswer說:「有一個爲一個應用程序「:https://market.android.com/details?id=org.jtb.alogcat
這也可以是有用的:https://market.android.com/details?id=net.robotmedia.bugreporter 一個真正用於Bug Reporting的應用程序。
編輯2:
我錯了,你可以從你的應用程序內趕上的logcat:
Process logcat = Runtime.getRuntime().exec("logcat"); // start process
BufferedReader reader = new BufferedReader(new InputStreamReader(logcat.getInputStream())); // grab output stream
這應該在一個獨立的線程來完成。
您可以要求用戶安裝logcat應用程序,如aLogCat。這似乎是最快sollution