Es
ist nicht
wurde nicht
nicht funktioniert sehr gut funktionieren.
hallo-jni
nicht
mit fehlgeschlagen:
Starting LLDB server: run-as com.example.sample
/data/data/com.example.sample/lldb/bin/start_lldb_server.sh
/data/data/com.example.sample/lldb
/data/data/com.example.sample/lldb/tmp/platform.port1442695333842 "lldb
process:gdb-remote packets"
Error while launching debug server on device:
com.android.tools.ndk.run.DebuggerContext$StartServerException:
java.lang.IllegalStateException: Failed to read platform port
/data/data/com.example.sample/lldb/tmp/platform.port1442695333842
Ich 1.4RC1
compileSdkVersion 23
buildToolsVersion "23.0.1"
und die "App-native" laufen Konfiguration @Gerry erwähnt werden. Es ist fast da, aber ich finde keine Spur eines lldb
-Verzeichnisses im privaten Datenordner meiner App. Ich finde einen 400kb gdbserver im lib
Verzeichnis, das von dort verbunden ist, mit meinem eigenen *.so
rechts daneben. Leider ist die Option zum Debuggen mit gdb anstelle von lldb mit dem Upgrade von 1.3 auf 1.4 gegangen. NDK 10e versendet eine 400kb gdbserver Binärdatei in ndk\prebuilt\android-arm\gdbserver
, die es (ich denke) ist. Am 15. September wurde das gdb debug howto https://github.com/mapbox/mapbox-gl-native/wiki/Android-debugging-with-remote-GDB aktualisiert. Das ist schwieriger als logcat debugging IMO, aber ein aktuelles Thema, Entschuldigung, so negativ zu sein, aber ich glaube nicht, dass lldb tatsächlich funktioniert.
Ich habe hallo-jni ausgeführt und bin zu der gleichen Schlussfolgerung gekommen.
Also als Antwort auf Ihre Frage ist es noch nicht möglich, C/C++ in Android Studio zu debuggen. Entschuldigung, das war nicht die erhoffte Antwort und ich hoffe, dass ich mit schlüssigen Beweisen das Gegenteil beweisen kann, aber genau hier, im Moment, keine Chance!
AKTUALISIEREN Ich erhöhte eine issue, wo ich einen Fix für ein Telefon gegeben wurde.
UPDATE2 Zu früh, um es zu sagen, es ist schließlich experimentell, aber ich bin gelegentlich nicht verbinden, oft wenn nicht immer aus der Reihenfolge treten und Haltepunkte mit unsinnigen Parameterwerte. Ich habe nur einen bedingten Breakpoint gesetzt, der nicht ausgelöst wurde, aber das Logcat zeigt es sollte. Anfangs habe ich angenommen, dass es mein logischer Fehler ist, aber es geht tiefer.
Einfach nur Breakpoints zu schlagen ist sehr hilfreich, aber es ist immer noch eine Million Meilen von Java-Debugging oder Vis Studio C++ - Debugging.
UPDATE3 Zurück zu stabil 1.3.1 als die Canaray-Kanal-Version pausiert für eine Toilettenpause jeden Tastendruck.Während native Debug-Builds zumindest mit meinem "festen" Telefon gestartet werden, werden selbst in hellojni keine Breakpoints oder eine leicht erweiterte Version erreicht, um mehr Möglichkeiten zu bieten. Ich bin es gewohnt, jetzt zu loggen, habe aber bessere Erfahrungen mit Android, NDK und Eclipse gemacht. Eine aufwendigere Lösung ist auch leichter zu knacken, aber zumindest funktioniert es funktioniert.
Ich würde Ihnen empfehlen, mit dem ADT-Plugin auf Eclipse umzusteigen. – Nickolaus