Ich bin ein absoluter Neuling in der Android-Programmierung und wollte lernen, wie ich meine Apps debugge. Ich kann meine Log.i | d | v-Aufrufe nicht in LogCat anzeigen lassen.
Hier ist der Code, den ich verwende. Wie Sie sehen, habe ich eine LOG_TAG-Konstante definiert, kann sie aber im LogCat nicht finden. Ich habe auch android.util.Log importiert UND ich habe sichergestellt, dass ich in meinem AndroidManifest "debuggable" auf TRUE gesetzt habe.
Ich habe auch http://developer.android.com/reference/android/util/Log.html überprüft, ohne Glück, dieses Problem zu lösen.
Was mache ich falsch? Suche ich überhaupt am richtigen Ort? Ich habe versucht, die DDMS- und Debug-Perspektive auch ohne Glück zu verwenden. Jede Hilfe für diesen Noob wäre sehr dankbar. Vielen Dank.
Meine Umgebung: Windows XP IDE = Eclipse Version: 3.6.1, Build-ID: M20100909-0800 Emulator = 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");
}
}
quelle
Antworten:
Stellen Sie bei Verwendung von Eclipse in der DDMS-Perspektive sicher, dass das richtige Gerät (wahrscheinlich Emulator-xxxx) ausgewählt und hervorgehoben ist. Nur dann erhalten Sie die Logcat-Ausgabe in der Logcat-Ansicht.
Außerdem ist das Android-Plugin etwas eigenartig und zeigt manchmal nur die letzte Zeile in der Logcat-Ansicht an. Versuchen Sie in diesem Fall, das Protokoll zu löschen. Danach sollten Sie alle Protokolleinträge erneut erhalten (funktioniert bei mir trotzdem).
quelle
Wenn alle Stricke reißen:
Ich habe all die oben genannten Dinge getan und konnte nicht herausfinden, was los war.
Test mit:
um herauszufinden, dass meine Einträge in logcat infact waren, aber es waren die Macken von adt.
Fix:
Dies war das einzige, was das Problem behoben hat.
quelle
adb logcat
ist aber ein guter Tipp. Es funktioniert so positiv.Ich hatte das gleiche Problem mit Android Studio und konnte mich durch Auswahl
No Filters
im Auswahlfeld in der oberen rechten Ecke von LogCat fortbewegen. Auf diese Weise erhielt ich alle Android-Protokolle im Hintergrund in LogCat, einschließlich meiner fehlenden Protokollaufrufe.quelle
Starten Sie Eclipse neu und überprüfen Sie, ob die Protokollkatze angezeigt wird.
quelle
Ich fand heraus, dass ich automatisch com.sileria.Log (aus einem Bibliotheksprojekt) anstelle von android.util.Log importierte , wobei letzteres das richtige war. Überprüfen Sie auch Ihre Importe.
quelle
Ich habe festgestellt, dass Eclipse beim Starten einer Android-App manchmal eine Ausnahme auslöst und LogCat dann die Aktualisierung beendet. Ich habe das korrigiert, indem ich Eclipse einfach neu gestartet habe. Ich bin mir nicht sicher, ob Sie das versucht haben und ich weiß, dass es alles andere als eine optimale Lösung ist, aber ich vermute, dass das Eclipse-Plugin noch einige Fehler zu beseitigen hat.
quelle
Einfachster Weg:
Checken Sie in Ihrem Logcat-Fenster ein - TOP RECHTE Ecke PAUSE-Taste || (Unterbrechen Sie den Empfang neuer Logcat-Nachrichten.)
Wenige Klicks + Starten Sie Eclipse schließlich neu (funktioniert normalerweise in meinem Fall)
quelle
Ich musste den ADB-Dienst mit dem Befehl neu starten
adb usb
Zuvor hatte ich die gesamte Protokollierung und konnte debuggen, bekam aber keine eigenen Protokollzeilen (ja, ich habe die mit meiner Anwendung verknüpfte Systemprotokollierung erhalten).
quelle
Es gibt eine Reihe von Gründen, warum möglicherweise keine Protokolle angezeigt werden. Die meisten davon sind unten aufgeführt. Hier sind einige Schritte, um die meisten Gründe zu überprüfen:
quelle
Unter Android Studio: Klicken Sie auf den grünen Pfeil nach rechts, um die Protokollierung neu zu starten. Wenn es nicht sichtbar ist, klicken Sie auf die >> Symbole, um es zu finden.
quelle
Ich bin auch ein Neuling bei Android-Eclipse. Folgendes brauchte ich, um LogCat-Nachrichten in Eclipse anzuzeigen: 1: Fügen Sie dies der Klasse hinzu, in der die Logcat-Nachricht aufgerufen wird: private static final String TAG = "MyActivity"; (gemäß der Dokumentation hier )
2: füge dieses Log.i hinzu (TAG, "inLayout - fertig"); wenn Sie, wo Sie eine Nachricht anzeigen möchten
Wenn das oben genannte nicht funktioniert, schließen Sie Eclipse und starten Sie es neu und führen Sie Ihr Projekt erneut aus.
Es sollte dann funktionieren.
quelle
Es gibt noch etwas zu beachten:
Oben rechts im Logcat befindet sich eine Dropdown-Tabelle zum Filtern von Nachrichten nach Typ. Stellen Sie sicher, dass es sich auf der Ebene befindet, nach der Sie suchen (wenn es sich auf der Assert-Ebene befindet, wird Ihr Logcat wahrscheinlich leer bleiben).
quelle
Gehen Sie zum Task-Manager und beenden Sie den Prozess adb.exe. Starten Sie Ihre Eclipse erneut.
oder
Versuchen Sie es mit adb kill-server und dann mit dem Befehl adb start-server .
quelle
Wahrscheinlich ist es nicht richtig und ein bisschen länger, aber ich habe dieses Problem (Android Studio) folgendermaßen gelöst:
So was:
quelle
Ich habe mehrere Stunden mit einem solchen Fall verbracht. Ich habe nur Touch-Key-Protokolle gesehen. Nichts mehr. Problem war ... Smartphone. Nach dem Neustart war OK. Das Trennen des Kabels verursachte ein zurückgegebenes Problem. Musste es neu starten. Es sieht so aus, als ob die Android USB-Kommunikation nicht gut gestaltet ist.
quelle
SCHNELLE LÖSUNG.
Starten Sie einfach die Sonnenfinsternis neu
Funktioniert perfekt.
quelle
Wenn Sie das SDK 4.0.3 verwenden, müssen Sie es explizit unter Debug-Konfigurationen> Projekt> Ziel auswählen. Andernfalls wird es mit Eclipse Indigo (3.7) niemals angezeigt. Natürlich erfolgt ein Neustart der Sonnenfinsternis.
quelle
Ich hatte ein Problem damit, auch in logcat eine einfache Protokollausgabe zu sehen. Mein Problem wurde behoben, als ich das neueste JDK installierte. Ich habe gerade eine neue Entwicklungsmaschine eingerichtet und nur die JRE installiert und die Installation des JDK funktioniert für mich.
quelle
Keine der anderen Antworten hat bei mir funktioniert, aber das hat funktioniert:
Ich habe mein Projekt aus meinem Arbeitsbereich entfernt und dann alles, was mit einem Punkt (.settings, .project usw.) begann, aus dem Projektordner gelöscht. Dann habe ich das projizierte erneut importiert. Ich vermisse einige Einstellungen und Haltepunkte, aber zumindest funktioniert es.
quelle
Ich hatte dieses Problem und nichts schien zu funktionieren, bis ich den Protokollaufruf in einen Handler verschob. Jetzt funktioniert es jedes Mal, egal wo Sie sich befinden.
quelle
Ich habe den Fehler gemacht, einen Suchbegriff in das Logcat-Suchfeld einzugeben. Ich habe vergessen, es zu löschen und konnte daher die neuen Protokolle nicht sehen. Da sie nicht mit meinem Suchbegriff übereinstimmten und nicht angezeigt wurden.
quelle
In meinem Fall musste ich diese Zeile entfernen:
Vom Anwendungs-Tag in meiner Manifest-Datei.
quelle
Die beste Lösung für mich war der Neustart des ADB- Servers (während ich die ADB-Integration in Android Studio aktiviert habe - Tools - Android - aktiviert). Um dies schnell zu erledigen, habe ich eine
adbr.bat
Datei imandroid-sdk\platform-tools
Verzeichnis (wo sichadb.exe
befindet) mit folgendem Inhalt erstellt:Da ich diesen Ordner in der PATH-Systemvariablen habe, kann ich immer dann, wenn ich
adb
von Android Studio aus neu starten muss , nur in das Terminal schreibenadbr
und es ist fertig.Eine weitere Option hierfür ist der Android-Gerätemonitor auf der Registerkarte Geräte - Menü nach dem Klicken auf den kleinen Pfeil rechts - Adb zurücksetzen .
quelle
Für Eclipse: 1) Gehen Sie zur ddms-Perspektive. 2) Stellen Sie sicher, dass das richtige Gerät ausgewählt ist. 3) Wenn bereits ausgewählt und keine Protokolle angezeigt werden, starten Sie ABD neu. * Hoffe das wird sich lösen.
quelle
Ich habe den ADB-Dienst ebenfalls mit "adb usb" neu gestartet und das Problem für mich behoben. Tatsächlich wurde nur eine meiner Aktivitäten nicht mehr protokolliert. Alle anderen haben Sachen protokolliert. Nach dem Neustart von adb funktioniert alles wieder wie ein Zauber. Für die anderen Personen, die nach einer anderen Lösung suchen: adb kill-server, adb start-server in der CLI behebt häufig auch Ihr Problem.
quelle
Schalten Sie Ihre App aus, sobald dies LogCat erneut startet ...
Verwenden Sie dies zum Schließen der Kraft: D.
quelle
Manchmal liegt das Problem nicht am PC, sondern an IDE, ADB usw., sondern an Ihrem Gerät , das keine Protokolle an ADB sendet. Wenn Sie also alle zuvor genannten Methoden ausprobiert haben und Ihr Logcat immer noch leer ist, versuchen Sie, das Programm neu zu starten Gerät und versuchen Sie es erneut. Ich habe alle oben genannten Möglichkeiten ausprobiert und keine davon hat funktioniert, aber nach einem Neustart auf meinem Telefon hat logcat wie von Zauberhand funktioniert
quelle
Log
die App verwende und von meinem Smartphone aus starte , aber sie funktioniert nicht von meiner Smartwatch aus. Ich habe mir die Einstellungen angesehen, aber alles scheint gut zu sein.Ich habe diese Probleme behoben und String TAG ohne Leerzeichen behoben:
"my tag" //
notiere show "my_tag" // ist ok
quelle
In meinem Fall musste ich dem String nur einen Namen hinzufügen. In erster Linie hatte ich nur ein Leerzeichen zwischen den Klammern
aber nach dem Hinzufügen eines Namens funktionierte es perfekt.
quelle
Nach dem Upgrade auf Android 3.6.1 ist dieses Problem mehrmals aufgetreten. Das einzige, was in meinem Fall funktioniert, ist das Gerät neu zu starten.
quelle