Huawei, Logcat zeigt das Protokoll für meine App nicht an?

163

OK, logcat zeigt Systemprotokolle an, aber auf meinem Huawei Ascend wird kein Anwendungsprotokoll angezeigt. Wenn ich zu einem anderen Gerät wie meinem Galaxy Nexus oder Nexus 7 wechsle, wird für dieselbe App (sogar dieselbe APK) das Protokoll angezeigt.

Auf dem Huawei Ascend wird Android 4.1.1 ausgeführt. In den Entwickleroptionen ist das USB-Debugging aktiviert. Dies tritt für logcat auf, der entweder über die Befehlszeile oder über IntelliJ ausgeführt wird. Und ich stelle sicher, dass das richtige Gerät ausgewählt ist - tatsächlich schließe ich jeweils nur ein Gerät an. Ich habe versucht, adb neu zu starten, den Puffer zu löschen usw.

Ich kann sehen, dass die App auf dem Huawei startet. Ich erhalte sogar Systemprotokolle, aus denen hervorgeht, dass die Aktivität gestartet wurde. Aber anders als auf den anderen Geräten erhalte ich kein App-Protokoll in der Aktivität # onCreate (oder von irgendwo anders).

08-08 20:55:44.050: INFO/WindowManager(431): Switching to real app window: Window{41ae8780 au.com.xandar.wirelesstiming.timekeeper/au.com.xandar.wirelesstiming.timekeeper.TimeKeeperActivity paused=false}
08-08 20:55:44.180: INFO/ActivityManager(431): Displayed au.com.xandar.wirelesstiming.timekeeper/.TimeKeeperActivity: +387ms

Wie kann das Anwendungsprotokoll nicht zugestellt werden?

Wilhelm
quelle
Vielleicht haben Sie einen bestimmten Filter in der LogCat-Ausgabe angewendet - probieren Sie es aus.
g00dy
@CamilStaps, da dieses Problem spezifisch für Huawei-Telefone ist.
William
Das ist nicht wirklich wichtig, der Punkt ist, dass es bereits an anderer Stelle beantwortet wurde.
@CamilStaps Diese Frage wurde an keiner anderen Stelle beantwortet. Hene die Anzahl der Menschen, denen es im Vergleich zu den anderen geholfen hat.
William

Antworten:

469

OK, da ich ein anderes Huawei Ascend hatte, stieß ich auf das gleiche Problem. Diesmal habe ich die genaue Antwort. Befolgen Sie diese Anweisungen (aus der Antwort von denispyr auf Warum zeigt logcat in meinem Android nichts an? )

Wählen

*#*#2846579#*#*

und Sie sehen ein verstecktes Menü. Gehen Sie zum Menü Projekt> Hintergrundeinstellung> Protokolleinstellung und definieren Sie die Protokollverfügbarkeit (Protokollschalter) und die Ebene (Protokollstufeneinstellung).

Und dann stellen Sie sicher, dass Sie Ihr Telefon neu starten.

Bitte beachten Sie, dass dies wahrscheinlich nur für Huawei-Telefone gilt.

Beachten Sie auch, dass Sie den Huawei-Rechner im Querformat starten und eingeben , wenn Sie sich auf einem Huawei-Tablet (z. B. MediaPad M3) befinden, anstatt zu wählen .()()2846579()()

Wilhelm
quelle
29

Für Huawei mit Android 8.0+

wir müssen den Code wählen: *#*#2846579#*#*

Die Auswahl der Option AP-Protokoll reicht aus, um die Nachrichten im LogCat anzuzeigen.

Einführung in die Beschreibung des Imagens aquí

Jorgesys
quelle
12

Wenn jemand mit Letv Phone (LeEco Le Max 2 oder 1) über der Lösung nicht funktioniert. Versuchen Sie die unten stehende USSD. Abb.1 als Referenz.

Press Dialer *#*#76937#*#*

Wählen Sie "Alle Protokolle aktivieren".

Abb.1

nitesh
quelle
Dies funktioniert auf dem Huawei ECO- Telefon nicht. Irgendwelche Tipps? Modell #: LUA-L23
charlesfranciscodev
@charlesfranciscodev haben Sie versucht, # * # 2846579 # * # . Wie in der obigen Antwort erwähnt
Nitesh
Vielen Dank. Arbeiten mit LeECO x527
Aleksey_M
5

Ich gab auf.

Log.d(TAG, msg);

Versuche dies.

Log.wtf(TAG, msg);

arbeite für mich.

Ego Slayer
quelle
Vielen Dank, dass dies für mich auf dem Huawei ECO- Telefon funktioniert hat !
Charlesfranciscodev
Log.wtf()ist auf einen völlig unerwarteten Zustand ausgelegt. Es ist verwandt mit SEVERE. Es ist sicherlich nichtDEBUG
William
1
Xd Ich denke, Log.e () / Log.w () / Log.i () funktionieren auch sehr gut.
Fortran
3

Ich habe einen HUAWEI Y3 II aka LUA-L21 .

Die akzeptierte Antwort hat bei mir nicht funktioniert . Dies führte zu einigen MTKLogger- Einstellungsbildschirmen, die sich von den in der Antwort beschriebenen unterscheiden und überhaupt nicht geholfen haben.

Meine Lösung

  1. Wählen Sie *#*#2846580#*#*(bitte beachten Sie, dass sich dieser Code von dem in der akzeptierten Antwort unterscheidet)
  2. Sie haben gerade einen Einstellungsbildschirm mit dem Namen EngineerMode aufgerufen (anders als im ProjectMenu der akzeptierten Antwort ).
  3. Klicken Sie auf der ersten Registerkarte Telefonie auf das Element Protokollsteuerung
  4. Aktivieren beiden Schalter (set Mtklog Steuerung auf alle Protokolle zu fangen und ADB Funkprotokoll zu fangen Funkprotokoll durch adb )
  5. Wischen Sie im vorherigen Bildschirm zur Registerkarte Protokoll und Debugging
  6. Öffnen Sie die Debug-Utils
  7. Ändern Sie die Debug-Ebene vom Benutzermodus in den Engineer-Modus
  8. Starten Sie Ihr Telefon für eine gute Maßnahme neu

Bildschirme

Ändern Log Steuer

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Ändern Debug utils

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Zusätzliche Bemerkungen

Nur um mein ursprüngliches Problem zu klären; logcat zeigte einige Protokolleinträge meiner App an, nur nicht meine eigenen Nachrichten. Ich sah Einträge, die zu meinem Prozess gehörten com.example.myapp, aber nie etwas, das ich selbst in meinem Code mit druckteLog.d("TAG", "hello world");

Es gab viele solche Sachen:

4260-4270/com.example.myapp I/art: Debugger is no longer active
4260-4412/com.example.myapp I/System.out: [CDS]rx timeout:1
4260-4412/com.example.myapp D/NativeCrypto: doing handshake ++
4260-4603/com.example.myapp D/OpenGLRenderer: Flushing caches (mode 0)
4260-4603/com.example.myapp D/Surface:  Surface::disconnect(this=0xb85285d8,api=1)
4260-4260/com.example.myapp D/ActivityThread: ACT-STOP_ACTIVITY_HIDE handled : 0 / android.os.BinderProxy@2333cbdf

... aber niemals so etwas:

4260-4603/com.example.myapp D/MainActivity: hello from onCreate!

Die obigen Schritte haben das Problem für mich gelöst.

oli.G
quelle
Für Huawei CRO-L22 und einige andere Huawei mit MTK funktioniert der Code für den Ingenieurmodus # * # 14789632 # * #
Dmytro Turkov
1
Open your Dialer app and enter the following code: *#*#2846579#*#*.

    1-Enter the Background Settings page.
    2-Click on Log Settings
    3-Check all 3 options to enable full logging.
    4-Ignore the "will affect performance" warning.
    5-Reboot the phone.
Nullzeiger-Ausnahme
quelle
1

Bei einigen neueren Versionen von Huawei Phones (ich verwende ein Y9s 2019) wurden einige Einstellungen geändert.

Prozess ist jetzt

Wählen Sie * # * # 2846579 # * # *

Hintergrundeinstellungen -> AP LOG-Einstellungen -> Öffnen.

Wenn Sie die Protokolle immer noch nicht sehen können, starten Sie sowohl Ihr Telefon als auch Android Studio / Eclipse neu

Kudehinbu Oluwaponle
quelle
0

Laden Sie eine Logcat-App (z. B. aLogCat) auf Ihr Gerät herunter und prüfen Sie, ob Sie das gleiche Problem haben. Ich weiß, dass es keine vollständige Lösung ist, aber auf diese Weise können Sie möglicherweise herausfinden, was falsch läuft, indem Sie die Anwendungsprotokolle lesen.

nette
quelle
1
Dies funktioniert nicht unter 4.xx und höher für Systemprotokolle, sondern nur für konkrete Anwendungsprotokolle mit READ_LOGSBerechtigungssatz - code.google.com/p/alogcat/issues/detail?id=41 .
g00dy
-3

Versuche dies:

Im Eclipse-Editor:

Setzen Sie adb von Windows -> Geräten zurück und versuchen Sie es erneut ...

Bitte überprüfen Sie, ob Ihr Projekt grün hervorgehoben ist (wählen Sie einfach Ihren Projektnamen aus).

Mananjani
quelle
1
Wie oben erwähnt, verwende ich logcat entweder über die Befehlszeile oder über IntelliJ. Ich benutze Eclipse nicht. Und zweitens habe ich, wie oben bereits erwähnt, bereits versucht, adb (mehrmals) zurückzusetzen.
William