2010-12-15 21 views
13

¿Alguien sabe de herramientas de depuración de memoria (como Valgrind) para C++ en código nativo de Android NDK?herramientas de depuración de memoria para Android NDK código C++

+0

La versión ARM de valgrind ha sido "muy pronto" durante años. Si estableceprop libc.debug.malloc en 10 y detiene/inicia obtendrá algunas verificaciones adicionales, pero no he encontrado que sean tan útiles. – fadden

+1

Separe su jni (código de pegamento entre java y impl nativo) y la implementación nativa. El uso de la herramienta de depuración x86 maneja la implementación nativa. – qrtt1

Respuesta

8

Tenemos un proyecto que usa bastante código nativo. Como se insinuó en uno de los comentarios para la pregunta, el mejor enfoque es probar ese código en otro entorno.

Tenemos un proyecto separado que se basa en Linux y llama a las funciones de C/C++ que usamos en nuestro código de Android. Una vez que esté en ese punto, todas las buenas herramientas a las que está acostumbrado (gdb, Valgrind, etc.) están disponibles para usted.

Mucho más productivo que hacer lo mismo en el teléfono (suponiendo que incluso pueda encontrar una buena herramienta).

La parte difícil es tener un buen instrumento de prueba, sino que debe ser un dado a cualquier proyecto que comenzó en el camino correcto ...;)