482 Stimmen

LogCat filtern, um nur die Nachrichten von My Application in Android zu erhalten?

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?

2voto

Khaled Alanezi Punkte 311

Wenn Sie Folgendes verwenden Eclipse drücken Sie die grünes + Zeichen im logCat und geben Sie Ihren Paketnamen (com.example.yourappname) in das Feld nach Anwendungsname Box. Wählen Sie außerdem einen beliebigen Namen, der Ihnen gefällt, in Filter Name und klicken Sie auf OK. Sie sehen nur Meldungen, die sich auf Ihre Anwendung beziehen, wenn der soeben hinzugefügte Filter im linken Bereich des LogCat ausgewählt wird.

2voto

Amol Desai Punkte 792

Sie können den folgenden Befehl verwenden, um ausführliche Protokolle für Ihr Anwendungspaket abzurufen

adb logcat com.example.myapp:V *:S

Auch wenn Sie Ihre Anwendung ausgerollt haben und Fehlerprotokolle von der veröffentlichten Anwendung abrufen möchten, können Sie den folgenden Befehl verwenden.

adb logcat AndroidRuntime:E *:S

2voto

Siruk Viktor Punkte 504

Versuchen Sie es: Fenster -> Voreinstellungen -> Android -> LogCat. Ändern Sie im Feld "Show logcat view if ..." den Wert "VERBOSE". Das hat mir geholfen.

1voto

Lawyno Punkte 11

Zusätzlich zu Tom Mulcahy Wenn Sie auf der Windows-Konsole nach PID filtern wollen, können Sie eine kleine Batch-Datei wie diese erstellen:

@ECHO OFF

:: find the process id of our app (2nd token)
FOR /F "tokens=1-2" %%A IN ('adb shell ps ^| findstr com.example.my.package') DO SET PID=%%B

:: run logcat and filter the output by PID
adb logcat | findstr %PID%

1voto

Tom Ladek Punkte 570

Diese Frage zielt offensichtlich auf die Verwendung von Logcat von außerhalb des Entwicklergeräts, wenn Sie jedoch die Logcat-Ausgabe anzeigen möchten auf das Gerät (programmatisch), benötigen Sie nur dies:

Runtime.getRuntime().exec("logcat " + android.os.Process.myPid() + " *:D");

Die *:D am Ende filtert alle Meldungen unterhalb der Debug-Protokollebene heraus, aber Sie können das auch weglassen.

Um die Ausgabe z.B. in eine TextView zu leiten, siehe z.B. これ .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X