2012-01-24 50 views
0

我有一個應用程序/電話,我正在開發這個應用程序/電話給那些將在偏遠地區使用它的人,而不是技術精通的人。我想要一個機制能夠遠程讀取他們的日誌文件。 Android應用程序正在使用logcat日誌記錄。我希望能夠通過某種遠程機制爲我的應用程序讀取我的日誌。我正在考慮更多地閱讀logcat,然後定期將其發佈到REST服務,在那裏我可以將這些數據庫進行數據庫化。所以問題是如何從我的應用程序中以編程方式讀取Logcat文件?記錄我的應用程序並遠程查看

+0

的'logcat'通常有一噸的由OS和寫得不好的應用程序,(不要)日誌默認情況下,一切都記錄在它的信息。除非您可以設置過濾,否則您將發送大量額外的日誌信息,而這些信息不需要。如果您只需要查看您自己的應用的日誌,我會考慮將您的應用日誌輸出到您定期發送到Web服務器的獨立文件。如果您的用戶位於數據連接較差的偏遠地區,則您傳輸的信息越少越好。 –

+0

@Jakobud好吧,那我該怎麼做? – JPM

回答

1

如果調用:

Proccess p = Runtime.getRuntime().exec("logcat"); 
InputStream in = p.getInputStream(); 
//code to process the InputStream 

我真的不知道獲取輸入流回來的全過程,但上面的代碼可以讓你的應用讀取logcat的文件。您可以去here獲取可能的「logcat」命令行參數。 exec方法通過linux shell運行字符串,順便說一句。

您必須具有的權限READ_LOGS

+0

呃那看起來很危險/不是線程安全的。 – JPM

+0

@JPM我相信你是對的。所以使用一個線程和一個處理程序。我真的不知道輸出日誌文件的整個過程,我只知道我在答案中提供的內容應該給你一個體面的起點。您也可以使用[ACRA](http://code.google.com/p/acra/wiki/AdvancedUsage#User_Interaction)。另外,如果您在StackOverflow或Google上進行一些搜索,您可能會找到答案。像http://stackoverflow.com/questions/8417389/how-can-i-access-logcat-file-on-device。 [this](http://goo.gl/LqUtk)也可能有幫助。 – Jakar

相關問題