webentwicklung-frage-antwort-db.com.de

Logcat zeigt meine Protokollaufrufe nicht an

Ich bin ein absoluter Neuling bei der Android-Programmierung und wollte lernen, wie man meine Apps debuggt. Ich kann meine Log.i | d | v-Aufrufe nicht im LogCat anzeigen. 

Hier ist der Code, den ich verwende. Wie Sie sehen, habe ich eine LOG_TAG-Konstante definiert, kann sie aber in der LogCat nicht finden. Ich habe auch Android.util.Log importiert und ich habe dafür gesorgt, dass ich in meinem AndroidManifest "debuggable" auf TRUE gesetzt habe.

Ich habe auch http://developer.Android.com/reference/Android/util/Log.html ohne Glück bei der Lösung dieses Problems geprüft. 

Was mache ich falsch? Bin ich überhaupt am richtigen Ort? Ich habe versucht, die DDMS- und die Debugperspektive zu verwenden, auch ohne Glück. Jede Hilfe zu diesem Noob wäre sehr dankbar. Vielen Dank.

Meine Umgebung: Windows XP IDE = Eclipse-Version: 3.6.1, Build-ID: M20100909-0800 Emulator = mit Verweis auf Android SDK 2.1 api 7

// sehr einfacher HELLO World-Code mit ein paar Log.i-Aufrufen

import Android.app.Activity;
import Android.os.Bundle;
import Android.util.Log;

public class debugger extends Activity {
    private static final String LOG_TAG = "debugger";

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        Log.i(LOG_TAG, "line 13");
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Log.i(LOG_TAG, "CREATING NOW");
    }
}
113
Cavachon

Stellen Sie bei Verwendung von Eclipse in der DDMS-Perspektive sicher, dass das richtige Gerät (möglicherweise Emulator-xxxx) ausgewählt und hervorgehoben ist. Nur dann erhalten Sie die Logcat-Ausgabe in der Logcat-Ansicht.

Auch das Android-Plugin ist etwas unübersichtlich und zeigt manchmal nur die letzte Zeile in der Logcat-Ansicht. Versuchen Sie in diesem Fall das Protokoll zu löschen. Danach sollten Sie alle Protokolleinträge erneut abrufen (funktioniert bei mir trotzdem).

143
ddewaele

Wenn alle Stricke reißen:

Ich habe alle oben genannten Dinge getan und konnte nicht herausfinden, was falsch war. 

Test mit:

adb logcat

um herauszufinden, dass meine Einträge in logcat richtig waren, waren es aber zwei Macken. 

Fix:

Eclipse neu starten

Dies war das einzige, was es reparierte.

71
Dheeraj Bhaskar

Ich hatte das gleiche Problem mit Android Studio und konnte durch Auswählen von No Filters im Auswahlfeld in der rechten oberen Ecke von LogCat herumkommen. Auf diese Weise erhielt ich alle Android-Protokolle im Hintergrund in LogCat, einschließlich meiner fehlenden Log-Aufrufe.

enter image description here

11
CIRCLE

Starten Sie Eclipse neu und prüfen Sie, ob die Protokollierungsliste angezeigt wird.

9
anjaneya

Ich habe herausgefunden, dass ich automatisch com.sileria.Log (aus irgendeinem Bibliotheksprojekt) anstelle von Android.util.Log importierte, wobei letzteres das richtige war. Überprüfen Sie auch Ihre Importe.

6
Marek Walasek

Ich musste den ADB-Dienst mit dem Befehl adb usb neu starten.

Zuvor hatte ich die gesamte Protokollierung und konnte debuggen, erhielt jedoch keine eigenen Protokollzeilen (ja, ich bekam die Systemprotokollierung, die meiner Anwendung zugeordnet ist).

4
Jim Rush

Ich habe festgestellt, dass Eclipse beim Starten einer Android-App manchmal eine Ausnahme auslöst, und LogCat beendet die Aktualisierung. Ich habe das korrigiert, indem ich Eclipse einfach neu gestartet habe. Ich bin mir nicht sicher, ob Sie das probiert haben, und ich weiß, dass es bei weitem keine optimale Lösung ist, aber ich vermute, dass das Eclipse-Plugin noch ein paar Fehler enthält, die Sie ausbügeln können.

3
Mike Yockey

Einfachster Weg:

Überprüfen Sie in Ihrem Logcat-Fenster - OBEN RECHTE Ecke PAUSE-Taste || (Anhalten neuer Logcat-Nachrichten anhalten)

Ein paar Klicks + Eclipse neu starten (funktioniert normalerweise in meinem Fall)

3
fider

Es gibt eine Reihe von Gründen, warum Protokolle möglicherweise nicht angezeigt werden. Die meisten davon sind unten aufgeführt. Hier sind einige Schritte, um die meisten Gründe zu überprüfen:

  1. Stellen Sie sicher, dass in Ihrem AndroidManifest.xml nicht "Android: debuggable =" false "" vorhanden ist
  2. Stellen Sie sicher, dass Ihr Logcat nicht pausiert ist, und stellen Sie sicher, dass Sie nach unten scrollen
  3. Ihre Filter sollten entweder "keine Filter" oder Ihre aktuelle App sein
  4. Sie haben in Ihrer Liste der logcat-Geräte das richtige Gerät ausgewählt
  5. Wenn Sie keine any messages erhalten, starten Sie adb neu. Sie können dies von Android Studio aus tun, indem Sie auf das Symbol 'neustart' klicken. Es befindet sich direkt hinter dem Drucksymbol für logcat und sieht aus wie ein grüner gekrümmter Pfeil, der aus einer Box kommt. Wenn Sie es nicht sehen, fahren Sie mit der Maus über das '>>', das das Symbolmenü fortsetzt, wenn der Logcat zu klein ist.
2

Unter Android Studio: Klicken Sie auf den grünen Pfeil nach rechts, um die Protokollierung erneut zu starten. Wenn es nicht sichtbar ist, klicken Sie auf die >> Symbole, um es zu finden.

2
Weapon X

Gehen Sie zum Task-Manager und beenden Sie den Prozess adb.exe. Starten Sie Ihre Eclipse erneut.

oder 

try adb kill-server und dann adb start-server befehl.

1
Arghya

SCHNELLE LÖSUNG.

Starten Sie einfach die Eclipse neu

Funktioniert perfekt.

1
Ali Akram

Es gibt noch etwas, auf das Sie achten sollten:

Auf der rechten oberen Seite des logcat befindet sich eine Dropdown-Tabelle zum Filtern von Nachrichten nach Typ. Stellen Sie sicher, dass es sich auf dem Level befindet, nach dem Sie suchen (wenn es auf dem Assert-Level ist, wird Ihr Logcat wahrscheinlich leer bleiben).

1
Itai Hanski

Wahrscheinlich ist es nicht korrekt und ein bisschen länger, aber ich habe dieses Problem (Android Studio) mit dem folgenden Problem gelöst:

System.out.println("Some text here");

So was:

try {
       ...code here...
} catch(Exception e) {
  System.out.println("Error desc: " + e.getMessage());
}
1

Ich bin auch ein Neuling in Android-Eclipse. So brauchte ich, um LogCat-Nachrichten in Eclipse anzuzeigen: 1: Fügen Sie dies der Klasse hinzu, in der die logcat-Nachricht aufgerufen wird:. (laut Dokumentation hier )

2: fügen Sie dieses Log.i hinzu (TAG, "inLayout - beendet"); wenn Sie wo möchten Sie eine Nachricht anzeigen

Wenn das oben genannte nicht funktioniert, schalten Sie Eclipse herunter und starten Sie es erneut, und führen Sie das Projekt erneut aus.

Es sollte dann funktionieren.

1
Jazzmine

Ich habe mehrere Stunden für diesen Fall verbracht. Ich habe nur Protokolle mit Berührungstasten gesehen. Nichts mehr. Problem war ... Smartphone. Nach dem Neustart war OK. Das Entfernen des Kabels hat zu einem Problem geführt. Musste ihn neu starten ... __ Sieht aus, als wäre die Android-USB-Kommunikation nicht gut ausgelegt.

1
Alex Burton

Für Eclipse: 1) Wechseln Sie zur Perspektive ddms . 2) Stellen Sie sicher, dass das richtige Gerät ausgewählt ist . 3) Wenn bereits Protokolle angezeigt werden, starten Sie ABD . * lösen.

0
Karthik

Beste Lösung für mich war ADB-Server neu starten (während ich ADB-Integration in Android Studio aktiviert habe - Tools - Android - überprüft). Um dies schnell zu machen, habe ich eine adbr.bat-Datei im Android-sdk\platform-tools-Verzeichnis (wo sich adb.exe befindet) mit folgendem Inhalt erstellt:

adb kill-server
adb start-server

Da ich diesen Ordner in der PATH-Systemvariablen habe, kann ich immer, wenn ich adb von Android Studio aus neu starten muss, nur in das Terminal adbr schreiben und es ist fertig.

Eine weitere Option ist über Android Device Monitor in der Registerkarte Devices - Menü nach dem Klicken auf den kleinen Pfeil nach rechts - Reset adb.

0
Atiris

Ich habe den Fehler gemacht, einen Suchbegriff in das Logcat-Suchfeld einzugeben ... Ich habe vergessen, ihn zu löschen und konnte daher die neuen Protokolle nicht sehen. Da sie nicht mit meinem Suchbegriff übereinstimmten und nicht angezeigt wurden.

0
Pritesh Desai

Ich hatte dieses Problem und nichts schien zu funktionieren, bis ich den Protokollanruf in einen Handler verlegte. Jetzt funktioniert es jedes Mal, egal wo Sie sich gerade befinden.

0
a54studio

Mit dem SDK 4.0.3 müssen Sie es explizit in Debug-Konfigurationen> Projekt> Ziel auswählen, sonst wird es nie mit Eclipse Indigo (3.7) angezeigt. Natürlich erfolgt ein Eclipse-Neustart.

0
Luis Robles

In meinem Fall musste ich diese Zeile entfernen:

    <application
         Android:debuggable="false"  <!-- Remove this line -->
         ..../>

Vom Anwendungs-Tag in meiner Manifest-Datei.

0
nmvictor

Ich hatte auch ein Problem mit der einfachen Protokollausgabe in logcat. Mein Problem wurde gelöst, als ich das neueste JDK installierte. Ich habe gerade eine neue Entwicklungsmaschine eingerichtet und hatte nur die JRE installiert und das JDK für mich installiert.

0
jlafay

schließen Sie Ihre Anwendung einmal Dadurch wird LogCat erneut gestartet ...

verwenden Sie diese Option für das Schließen mit Gewalt:

setContentView(BIND_AUTO_CREATE);
0
user4254398

Keine der anderen Antworten funktionierte für mich, aber dies tat:

Ich habe mein Projekt aus meinem Arbeitsbereich entfernt und dann alles gelöscht, das mit einem Punkt (.settings, .project usw.) begann, aus dem Projektordner. Dann habe ich das projizierte neu importiert. Ich vermisse einige Einstellungen und Haltepunkte, aber es funktioniert zumindest.

0
rmooney

In meinem Fall musste ich dem String einfach einen Namen hinzufügen. In der ersten Instanz hatte ich nur ein Leerzeichen zwischen den Klammern

private static final String TAG = " ";

aber nachdem ich einen Namen hinzugefügt hatte, funktionierte es perfekt. 

private static final String TAG = "oncreate";
0
Populus_Tremula

Ich habe auch den ADB-Dienst mit "adb usb" neu gestartet und das Problem für mich behoben. Tatsächlich protokollierte nur eine meiner Aktivitäten nicht mehr. Alle anderen haben sich angemeldet. Nach dem Neustart funktioniert alles wie neu. Für die anderen Personen, die nach einer anderen Lösung suchen: adb kill-server, adb start-server in CLI wird Ihr Problem häufig beheben.

0
Jordy

Ich habe diese Probleme und behoben, String TAG ohne Leerzeichen:

"Mein Tag" // Notiz anzeigen
"mein_tag" // ist in Ordnung

0
jahangiri

manchmal liegt das Problem nicht an einem PC auf der anderen Seite, IDE, ADB usw., sondern es entsteht von Ihrem Gerät, das keine Protokolle an ADB sendet. Wenn Sie also alle zuvor genannten Methoden ausprobiert haben und Ihr Logcat noch leer ist Versuchen Sie, Ihr Gerät neu zu starten, und versuchen Sie es erneut. Ich habe alle oben genannten Methoden ausprobiert, und keiner von ihnen hat funktioniert, aber nach einem Neustart auf meinem Telefon funktionierte logcat wie ein Zauber

0
Code_Worm