Soweit ich weiß, arbeiten Debugger auf Basis von Systemaufrufen wie Ptrace in Linux, die die Tracee blockieren und Tracer dann Informationen aus Tracee Speicher abrufen. Es bedeutet, wenn ich einen Debugger verwenden möchte, um den Haupt-Thread in einem Android-App-Prozess zu debuggen, blockiert es den Haupt-Thread und warten auf meine Operationen, die leicht in einigen Sekunden Haupt-Thread-ANR verursachen können. So bin ich verwirrt über ist es wirklich möglich, den Haupt-Thread in Android-App-Prozess zu debuggen und wie?Android Debug Verwirrung
Antwort
Korrekt, ADP verwendet ptrace und blockiert den Hauptthread, und dies führt dazu, dass die Anwendung im Debug-Modus etwas langsamer wird. Wenn Sie Schritt für Schritt den Thread debuggen, in den Sie Ihren Breakpoint setzen, wird er komplett angehalten. Für allgemeine Debugging-Zwecke sollte dies kein Problem sein. Das Testen der reibungslosen Ausführung einer Anwendung sollte im Ausführungsmodus und nicht im Debugmodus erfolgen.
Danke für Ihre Antwort. Aber wenn ich nicht Schritt für Schritt debuggen kann, scheint es, dass der Debugger nicht viel wert ist, weil ich andere Informationen überprüfen kann, nur LOGs in meinen Code einfügen. – xjtulk
Natürlich, aber das würde Ihren Code mit einer großen Anzahl von Konsolen-Logs verunreinigen, die danach aufgeräumt werden müssen. Ich denke, es ist persönliche Vorliebe. Zusätzlich dazu, dass Sie keine LOGs schreiben müssen, können Sie den Status jedes Objekts und seiner Mitglieder im Detail für jeden Schritt in der Ausführung betrachten. UND ermöglicht es Ihnen, sicherzustellen, dass Methoden in der richtigen Reihenfolge ausgeführt werden. – AKroell
- 1. Android-Anwendung Lifecycle-Verwirrung
- 2. Android-Paket nicht debug
- 3. Android Debug-Umgebungsvariablen
- 4. Android Debug Fehler
- 5. Verwirrung mit c2dm Messaging in Android
- 6. Debug alten Android-Version mit Android Studio
- 7. Xamarin Android Debug Install Fehler
- 8. debug android app auf chromebook
- 9. Debug Probleme in Android Studio
- 10. Debug MapBox Android NDK Bibliothek
- 11. Reagieren Native Android Debug Keystore
- 12. Android native Crash-Debug-Symbole
- 13. Android Studio Debug und DDMS
- 14. Eclipse Android Debug funktioniert nicht
- 15. Was diese Android App debug
- 16. GCM API Schlüssel Verwirrung
- 17. Xamarin Support-Bibliotheken Version Verwirrung
- 18. Stylesheet Verwirrung
- 19. Bitmap.Lockbits Verwirrung
- 20. Verwirrung C
- 21. DateTime Verwirrung
- 22. dynamic_cast Verwirrung
- 23. Freunde Verwirrung
- 24. WM_KEYDOWN Verwirrung
- 25. NSTimer Verwirrung
- 26. Kreuzkorrelationskoeffizient Verwirrung
- 27. Scanf Verwirrung
- 28. Drucken Verwirrung
- 29. Javascript Verwirrung
- 30. ObsoleteAttribute Verwirrung
Ich verstehe deine Frage immer noch nicht. Ich bin auch verwirrt. lol –