我有一臺連接到電腦的Android設備,並打開了多個顯示logcat信息的shell。每個人都使用特定的過濾器運行 所以我現在的問題是,這些過濾器在哪裏應用?已經在手機上,所以只有過濾的消息通過USB發送。或者它們是否應用於adb服務器或客戶端上的pc上?我只是想防止有多個未經過濾的logcat流在USB上同時運行,因爲我限制了bandwitdh。 謝謝哪裏應用了logcat過濾器?
2
A
回答
1
通過設備上的logcat
命令將數據從內核緩衝區中取出。如果您運行
% adb logcat -\?
可以看到使用信息,其中包括「filterspecs」的說明。這些可以在命令行上設置,也可以通過設置ANDROID_LOG_TAGS
來設置。例如:
% adb logcat '*:W'
會告訴你只在警告或錯誤級別的消息。
這裏的訣竅是,adb logcat
只是adb shell logcat
的簡寫,還會將ANDROID_LOG_TAGS
環境變量傳播到設備。該過濾由logcat
命令完成,該命令僅通過adb轉儲文本輸出。 logcat
命令的輸出沒有得到任何特殊處理。
所以你的問題的答案是:過濾發生在設備上,單獨爲每個窗口。
DDMS的工作方式不同。
1
或者他們是應用在pc上的adb服務器或客戶端?
它們應用於呈現LogCat信息的任何應用程序。
1
目前對於在不同設備上運行的相同版本是不可能的。如果您有不同的版本,則可以根據設備名稱或版本應用過濾器。
正如你想做到這一點,那麼它可能會實現一些技巧。 Log.v(LOG_TAG,"message");
在您的LOG_TAG附加設備ID,可以通過TelephonyManager識別。
並添加使用它的過濾器。
1
Android將設備上的日誌信息存儲到4個不同的緩衝區(事件日誌,系統日誌,無線電日誌,主日誌)中。之後,adbd
守護進程可以訪問這些信息並將其發送給客戶端。因此,只有在客戶端,您纔有能力過濾信息,因爲在手機上存儲了所有信息。
0
過濾器應用在手機上。所以你輸入一個不存在的logcat標籤的過濾器,然後沒有流量超過了USB。 但是每個使用cmd shell打開的logcat會創建一個新的流,從而增加總流量。
相關問題
- 1. 在哪裏調用ArrayAdapter的過濾器?
- 2. Android中的Logcat過濾器
- 3. Logcat過濾?
- 4. 過濾logcat?
- 5. 我應該在哪裏過濾記錄?
- 6. 映射$過濾器,以LINQ哪裏
- 7. 過濾logcat輸出
- 8. 在哪裏過濾狀態?
- 9. 以編程方式應用logcat過濾器
- 10. 加載應用了過濾器的jqgrid
- 11. JBoss 4:我應該在哪裏部署全局過濾器?
- 12. eclipse logcat中的導出過濾器
- 13. Eclipse Logcat過濾器加號不可見
- 14. 奇怪的logcat過濾器行爲
- 15. android DDMS logcat過濾器名稱
- 16. Visual Studio LightSwitch的高級過濾器控件存儲過濾器在哪裏?
- 17. logcat過濾和行數
- 18. 應該在哪裏用Acl進行過濾?
- 19. 通過應用程序命令行不帶標籤的Logcat過濾器
- 20. 過濾器應用
- 21. 使用RegExp過濾Logcat中的郵件
- 22. Android logcat文件存儲在哪裏?
- 23. 過濾GridView填充EntityDataSource由哪裏
- 24. 哪裏錯了?
- 25. Excel VBA:找出哪一行啓用了過濾器
- 26. tomcat7過濾器使用了錯誤的過濾器類路徑
- 27. YESNO過濾器裏面裏面blocktrans
- 28. 過濾logcat的從我的應用程序
- 29. 無法在Android應用程序中過濾logcat
- 30. 我通過的信息去了哪裏?
是的,我認爲它不存在.. –