Вы не сможете читать надгробные файлы, если не используете эмулятор или рутованный телефон.Logcat распечатывает надгробный камень на уровне отладки (это большой дамп ядра перед сообщением «копирование надгробного камня»).Должен быть раздел, который выглядит примерно так:
01-18 16:28:04.334 16759 16759 I DEBUG : scr 80000012
01-18 16:28:04.334 16759 16759 I DEBUG :
01-18 16:28:04.384 16759 16759 I DEBUG : #00 pc 00007f84 /data/data/com.myapp/lib/myjnilib.so
01-18 16:28:04.384 16759 16759 I DEBUG : #01 pc 00008f80 /data/data/com.myapp/lib/myjnilib.so
01-18 16:28:04.394 16759 16759 I DEBUG : #02 pc 00002c6a /data/data/com.myapp/lib/myjnilib.so
01-18 16:28:04.394 16759 16759 I DEBUG : #03 pc 00002ea8 /data/data/com.myapp/lib/myjnilib.so
01-18 16:28:04.394 16759 16759 I DEBUG : #04 pc 00003178 /data/data/com.myapp/lib/myjnilib.so
01-18 16:28:04.394 16759 16759 I DEBUG : #05 pc 00011e74 /system/lib/libdvm.so
...
Это сокращенная трассировка стека.Вам нужно использовать инструмент addr2line в NDK, чтобы определить функцию, файл и номер строки, к которой относятся эти шестнадцатеричные адреса.В моей системе OSX команда для получения первой строки трассировки стека выглядит следующим образом:
/opt/android-ndk-r7/toolchains/arm-linux-androideabi-4.4.3/prebuilt/darwin-x86/bin/arm-linux-androideabi-addr2line -f -e myJNIproject/obj/local/armeabi/myjnilib.so 0x00007f84
, где myJNIproject / obj / local / armeabi / myjnilib.so - версия myjnilib.so , который содержит информацию о номере строки.