Red de conocimiento informático - Computadora portátil - Android NDK (5): información de la pila de restauración de ndk-stack

Android NDK (5): información de la pila de restauración de ndk-stack

Los fallos nativos son más difíciles de entender que los de Java, lo que es muy perjudicial para la resolución de problemas. Sin embargo, podemos restaurar la información de la pila mediante la herramienta ndk-stack en el NDK.

Primero cree una excepción:

Se produce un bloqueo después de la ejecución, la información es la siguiente:

Esta información de bloqueo solo puede ver Java_com_teletian_sample_myndk_MainActivity_testCrash+27. se estrelló, no sé la línea específica.

Usemos la herramienta ndk-stack para restaurar la información de la pila.

1. Primero guarde la información del fallo como un archivo y luego restáurela mediante el archivo

adb logcat -c

adb logcat > crash.log

ndk-stack -sym app/build/intermediates/cmake/debug/obj/x86/ -dump crash.log

La información restaurada es la siguiente:

Puede ver que Native-lib.cpp:8:10 aparece en la información restaurada, para que pueda saber qué línea está incorrecta. Si ejecuta el comando en la ventana Terminal de Android Studio, también puede hacer clic directamente para saltar a la línea donde ocurre el problema, lo cual es muy conveniente.

2. Restaurar directamente en logcat

adb logcat -c

adb logcat -sym app/build/intermediates/cmake/debug/obj/x86