Anleitung zum Debuggen einer android-Anwendung gestartet wird von " adb shell am start -D '?
Brauche ich zum Debuggen einer android-Anwendung, die bereits installiert ist auf einem Handy. Ich bin in der Lage, starten Sie die Anwendung im debug-Modus, aber ich kann keine Verbindung, um den Prozess mittels JDWP. Ich habe versucht zwei verschiedene Wege, die beide scheitern. (siehe folgende Abschnitte)
Befehlszeile Versuch
1 - Starten Sie die Anwendung
[...]sdk\platform-tools>adb -d shell am start -D -n "package/package.SomeActivity"
Die Anwendung startet und einen Alarm anzeigen "/!\ Waiting for debugger".
2 - Öffnen Sie ein JDWP-port
[...]sdk\platform-tools>adb forward tcp:8000 jdwp:7602
3 - Verbindung mit jdb
[...]sdk\platform-tools>jdb -attach 127.0.0.1:8000
java.io.IOException: shmemBase_attach failed:
at com.sun.tools.jdi.SharedMemoryTransportService.attach0(Native Method)
at com.sun.tools.jdi.SharedMemoryTransportService.attach(SharedMemoryTransportService.java:108)
at com.sun.tools.jdi.GenericAttachingConnector.attach(GenericAttachingConnector.java:116)
at com.sun.tools.jdi.SharedMemoryAttachingConnector.attach(SharedMemoryAttachingConnector.java:63)
at com.sun.tools.example.debug.tty.VMConnection.attachTarget(VMConnection.java:519)
at com.sun.tools.example.debug.tty.VMConnection.open(VMConnection.java:328)
at com.sun.tools.example.debug.tty.Env.init(Env.java:63)
at com.sun.tools.example.debug.tty.TTY.main(TTY.java:1066)
Fatal error:
Unable to attach to target VM.
IntelliJ Versuch
Habe ich bei der Konfiguration meines lokalen Projekt zu beginnen, die Standard-Aktivität und deaktivieren Sie das "Deploy application".
Bekomme ich auch die Anwendung begann mit der gleichen Warnung, aber leider sind die IDE-verbindet sich nicht mit dem remote-Prozess.
Target device: 42f7cc14e2acbfab
Launching application: ********/********.SomeActivity.
DEVICE SHELL COMMAND: am start -D -n "********/********.SomeActivity"
Starting: Intent { cmp=********/********.SomeActivity }
Waiting for process: ********
Du musst angemeldet sein, um einen Kommentar abzugeben.
Öffnen Sie eine root-shell
Laufen
am
BefehlDiese Weise können Sie Debuggen eine app, egal ob
android:debuggable
gesetzt sind oder nicht.adb jdwp
Befehl, es gibt nichts, so kann ich nicht verbinden debuggerDie bereitgestellte Anwendung so konfiguriert wurde, dass mit der
debug-Version einer
- Attribut auf false festgelegt. Die Aufforderung gegeben, die auf dem Handy war einfach nur irreführend.adb jdwp
es gibt nichts zurück.