Análisis de crash en Android
Para crash en Native (Android) y Unity (Android), consulte las siguientes instrucciones.
Obtener ubicaciones de crash durante el desarrollo
Al depurar un programa Android Native en Android Studio, debe cambiar Debugger - Debug type a Dual (Java + Native) en la configuración de Configuration.

La información necesaria al depurar en Android Studio se muestra a continuación.

Introduzca bt en lldb para obtener la causa del crash y el code stack, como se muestra a continuación:
(lldb) bt
* thread #16, name = 'samples.helloar', stop reason = signal SIGSEGV: invalid address (fault address: 0x9c40)
* frame #0: 0x0000004922f3a1d8 libEasyAR.so`___lldb_unnamed_symbol3056$$libEasyAR.so + 6088
frame #1: 0x0000004922f38568 libEasyAR.so`___lldb_unnamed_symbol3054$$libEasyAR.so + 288
frame #2: 0x0000004922f347f8 libEasyAR.so`___lldb_unnamed_symbol2876$$libEasyAR.so + 332
frame #3: 0x00000049be2390c8 libc.so`__pthread_start(void*) + 40
frame #4: 0x00000049be1f04f8 libc.so`__start_thread + 72
Cuando el code stack contiene contenido relacionado con libEasyAR.so, puede indicar que el crash está relacionado con EasyAR. Si no lo contiene, hay una alta probabilidad de que el crash no esté relacionado con EasyAR.
Introduzca image dump sections libEasyAR.so en lldb para obtener la load address de la sección .text en la dynamic library, como se muestra a continuación:
(lldb) image dump sections libEasyAR.so
...
SectID Type Load Address Perm File Off. File Size Flags Section Name
...
0x00000010 code [0x0000004922e30cfc-0x0000004923654558) r-x 0x00256cfc 0x0082385c 0x00000006 libEasyAR.so..text
...
Obtener ubicaciones de crash después del release
También puede haber crash después del release.
Si aparece un crash reproducible, puede intentar usar la herramienta Profile/Debug integrada en Android Studio. Luego siga el método de desarrollo para obtener la ubicación del crash.

Si el crash es difícil de reproducir, puede usar una crash reporting library para interceptar la información de crash de la aplicación y reportarla al servidor. Pero tenga en cuenta que la información de crash debe incluir tanto el code stack como la module load address. Como Android introdujo ASLR (address space layout randomization) a partir de 4.0, la load address del módulo dynamic library puede ser diferente en cada ejecución, lo que hace que la code address cambie dinámicamente. Solo conociendo el valor relativo entre la code address en el code stack y la load address del módulo dynamic library se puede saber dónde ocurrió el crash del programa.
Cuando el code stack contiene contenido relacionado con libEasyAR.so, puede indicar que el crash está relacionado con EasyAR. Si no lo contiene, hay una alta probabilidad de que el crash no esté relacionado con EasyAR.
Otra información relacionada con crash
Número de versión de EasyAR Sense y EasyAR Sense Unity Plugin
Por ejemplo, 4.7.0.11800-cf8e24e30
Community Edition / Enterprise Edition
Arquitectura CPU
aarch64/armeabi-v7a