我为arm64-v8a
创建了基于本机的预构建库。我在运行时发生了崩溃,我喜欢在崩溃日志上运行ndk-stack
(就像我对armeabi-v7a
-lib所做的那样),但现在ndk-stack
返回错误消息
文件格式无法识别
并且没有显示回溯。对arm64-v8a
文件运行ndk-stack
的正确方法是什么
谢谢你,
请注意,对于-sym
选项-sym $PROJECT_PATH/obj/local/armeabi-v7a
,您需要正确指定您的符号文件,例如,正确匹配ABI;对于arm64-v8a
,它应该类似于-sym $PROJECT_PATH/obj/local/arm64-v8a
请参阅此处的官方使用文档:https://developer.android.com/ndk/guides/ndk-stack
有两种方法可以使用该工具。您可以将logcat文本作为程序的直接输入。例如:
adb logcat | $NDK/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi-v7a
您还可以使用-dump选项将logcat指定为输入文件。例如:
adb logcat > /tmp/foo.txt $NDK/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi-v7a -dump foo.txt
当它开始解析logcat输出时,该工具会查找星号的初始行。例如:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***