Cómo depurar la biblioteca nativa externa en Windows desde Android Studio?
Estoy tratando de depurar (desde Windows) una biblioteca nativa (construida con NDK v13b) que se envía dentro de una aplicación de Android. La biblioteca se construye fuera de Android Studio, no utiliza Gradle (CMake se utiliza).
Mi biblioteca se construye con depuración; La configuración de depuración en Studio es híbrida y le doy los directorios de símbolos apropiados. Para "importar" mi biblioteca, simplemente copio los archivos .so
y .jar
dentro de mi directorio de proyecto en las ubicaciones apropiadas ( libs
para el JAR, jniLibs
para el SO).
- ¿Cómo depurar la variante de construcción específica del proyecto Android Gradle en IntelliJ IDEA?
- Android ejecutando una instrucción if aunque no debería ejecutar nunca?
- ¿Qué hay de malo en depurar en Eclipse en Android?
- Si debugable se establece en false o true no cambia nada
- El depurador de Eclipse "salta" saltando código importante
Cuando la biblioteca está construida en una máquina separada (Linux), puedo hacerlo paso a paso sin ningún problema, siempre y cuando restablezcan las ubicaciones de origen (es decir, usando la settings set target.source-map
).
Sin embargo, cuando construyo la biblioteca en mi sistema Windows, paso a paso ya no funciona.
Me di cuenta de una diferencia de comportamiento dependiendo cuando depurar utilizando la biblioteca "built-from-Linux" o "built-from-Windows". Cuando se depura con el comando de Linux, la lista de comandos de LLDB indica que la ruta de la biblioteca está en el directorio de compilación inicial. Sin embargo, al depurar el de Windows, está en C:\Users\foo\.lldb\module_cache\remote-android\.cache...
Y esta versión de la biblioteca parece estar despojada.
¿Por qué esta diferencia de comportamiento? ¿Cómo puedo 1. usar una copia prístina de mi biblioteca en la caché del módulo, o 2. usar directamente la biblioteca de compilación?
Gracias,
- Depuración en mi teléfono (Eclipse, Android)
- Cómo agregar ordenadores a Android USB debug whitelist
- Ejecutar sin depurar en eclipse
- El punto de interrupción de primera línea sólo funciona
- ¿Cómo se puede "Mostrar límites de diseño" para la depuración de Android?
- Depurar código nativo en la Biblioteca de Android
- ¿Cómo puedo utilizar la salida en logcat después de una señal fatal 11 para averiguar dónde estoy recibiendo el error en el código nativo android?
- Mapas de Android NullPointerException ItemizedOverlay
- Los controles de YouTube (reproducción / pausa) no funcionan después de restaurar el reproductor / se reanuda la actividad
- ¿Está el intento de compartir facebook en Android todavía roto?