Ich habe festgestellt, dass ich bei der Verwendung von Logcat mit Eclipse mit ADT für Android auch Meldungen von vielen anderen Anwendungen erhalte. Gibt es eine Möglichkeit, dies zu filtern und nur Meldungen von meiner eigenen Anwendung anzuzeigen?
Antworten
Zu viele Anzeigen?Dies ist wahrscheinlich die einfachste Lösung.
In Anlehnung an eine Lösung von Tom Mulcahy können Sie es wie folgt weiter vereinfachen:
alias logcat="adb logcat | grep `adb shell ps | egrep '\bcom.your.package.name\b' | cut -c10-15`"
Die Verwendung ist einfach wie bei einem normalen Alias. Geben Sie einfach den Befehl in Ihrer Shell ein:
logcat
Die Einrichtung von Aliasen ist sehr praktisch. Und die Regex macht es robust für Multi-Prozess-Anwendungen, vorausgesetzt, Sie kümmern sich nur um den Hauptprozess.
Natürlich können Sie für jeden Prozess beliebig viele Aliase festlegen. Oder Sie verwenden die Lösung von Hegazy :)
Wenn Sie außerdem Protokollierungsstufen festlegen möchten, ist es
alias logcat-w="adb logcat *:W | grep `adb shell ps | egrep '\bcom.your.package.name\b' | cut -c10-15`"
Geben Sie Ihrem Protokoll einen Namen. Ich habe meinen "Wawa" genannt.
In Android Studio gehen Sie zu Android-> Filterkonfigurationen bearbeiten
Geben Sie dann den Namen ein, den Sie den Protokollen gegeben haben. In meinem Fall heißt es "wawa". Hier sind einige Beispiele für die möglichen Filter. Sie können nach System.out, System.err, Logs oder Paketnamen filtern:
Ich bin mir nicht sicher, ob es eine Möglichkeit gibt, nur Systemmeldungen zu Ihrer Anwendung anzuzeigen, aber Sie können anhand einer Zeichenfolge filtern. Wenn Sie ein Protokoll innerhalb des Programms erstellen, können Sie einfach ein bestimmtes eindeutiges Schlüsselwort eingeben und nach diesem Wort filtern.