簡體   English   中英

如何訪問Android TV設備上的應用程序日志?

[英]How do I gain access to the application logs on an Android TV device?

我希望能夠訪問Android TV設備上運行的應用程序的logcat,但電視只有USB插頭而不是micro-USB。

Android TV設備是

  • 運行自定義Android 4.2.1 ROM(來自制造商)
  • 不提供對設備設置的訪問權限
  • 只有USB插頭
  • 環境#getStorageState()始終為MEDIA_REMOVED

如何訪問應用程序日志?

你指的是

訪問應用程序的logcat

如果您正在開發“app”,那么雖然Android現在限制已安裝的應用程序看不到全局logcat輸出,但它仍然允許您訪問您自己的進程發送給logcat的數據(無論是來自您自己的代碼,還是來自框架)在您的流程中運行的代碼)。 這是一個簡單的問題,讓您的應用程序在設備上運行logcat命令以將數據發送到文件,然后將該文件上傳到某個地方的Web服務器,以便您可以閱讀它。

在應用程序中編程方式讀取logcat給出了一般原則,即執行logcat程序,然后讀取其輸出)。

但是,如果您嘗試從設備上的所有應用程序獲取logcat輸出,那么以某種形式獲取adb是您唯一可行的選擇。

我假設您可以在設備上安裝應用程序,方法是將它們放在外部網站上,然后使用設備的webbrowser下載它們,然后打開下載的文件。

因此,您可以安裝從4.2手機中提取的設置應用程序,這可能允許您打開adb調試(盡管您指出,物理布線是不常見的)。

對於那些面臨類似問題的人,我選擇的解決方案如下:

  1. 創建了Android日志的替代品,用於裝飾Android日志,但也記錄到log4j RollingFileAppender。 這是必要的,因為某些設備上的循環logcat緩沖區非常小,只包含5分鍾的日志。
  2. 添加了一個菜單操作,將所有log4j日志文件發布到Web服務器
  3. 添加了一個Servlet到我的Web服務器來捕獲客戶端日志文件並將它們寫在有意義的地方。

這似乎運作得相當好。

除了第1項,它與zmarties建議非常相似。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM