Kennt jemand von Speicher Debugging-Tools (wie Valgrind) für nativen C++ - Code unter Android NDK?Speicher Debugging-Tools für Android NDK C++ - Code
13
A
Antwort
8
Wir haben ein Projekt, das ziemlich viel nativen Code verwendet. Wie in einem der Kommentare für die Frage angedeutet, ist der beste Ansatz, diesen Code in einer anderen Umgebung zu testen.
Wir haben ein separates Projekt, das in Linux erstellt und die C/C++ - Funktionen aufruft, die wir in unserem Android-Code verwenden. Sobald Sie an diesem Punkt sind, stehen Ihnen alle nützlichen Tools (gdb, Valgrind usw.) zur Verfügung.
Viel produktiver als das gleiche am Telefon (vorausgesetzt, Sie könnten sogar ein gutes Werkzeug finden).
Der schwierige Teil ist ein gutes Testumgebung haben, aber dass ein gegebener zu jedem Projekt werden soll, die auf dem richtigen Weg begannen ...;)
Die ARM-Version von valgrind wurde „coming soon“ jahrelang. Wenn Sie prop libc.debug.malloc auf 10 setzen und stoppen/starten, erhalten Sie einige zusätzliche Überprüfungen, aber ich habe festgestellt, dass sie nicht so hilfreich sind. – fadden
Trennen Sie Ihre jni (Leimcode zwischen Java und nativen Impl.) Und native Implementierung. Verwenden des x86-Debug-Tools für die native Implementierung. – qrtt1