我使用JNI在Android应用程序上多次崩溃。不幸的是,所有这些臭虫都是随机的,并且从未在我的设备或模拟器上发生。 因此,将playconsole backtrace与addr2line结合使用,我很想了解并定位问题。 我使用以下命令: 我得到以下输出: 这是什么意思,为什么我不接电话?*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> free.my.app <<<
backtrace:
#00 pc 000000000001adac /system/lib/libc.so (strlen+72)
#01 pc 00000000000092af /data/app/free.my.app-kr-Mr4_sN9leSEvwZ26WoA==/split_config.armeabi_v7a.apk (offset 0x1000)
#02 pc 0000000000008e0d /data/app/free.my.app-kr-Mr4_sN9leSEvwZ26WoA==/split_config.armeabi_v7a.apk (offset 0x1000) (Java_free_my_app_utils_MyThread_getAPIKey+108)
#03 pc 00000000000d0087 /data/app/free.my.app-kr-Mr4_sN9leSEvwZ26WoA==/oat/arm/base.odex (offset 0xd0000) (free.my.app.utils.MyThread.getAPIKey+110)
#04 pc 000000000022d80b /data/app/free.my.app-kr-Mr4_sN9leSEvwZ26WoA==/oat/arm/base.odex (offset 0xd0000) (free.my.app.utils.MyThread.run+1578)
#05 pc 0000000000420f75 /system/lib/libart.so (art_quick_invoke_stub_internal+68)
#06 pc 00000000003fa349 /system/lib/libart.so (art_quick_invoke_stub+224)
#07 pc 00000000000a4709 /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+136)
#08 pc 0000000000357e9d /system/lib/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+52)
#09 pc 0000000000358bf5 /system/lib/libart.so (art::InvokeVirtualOrInterfaceWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue*)+320)
#10 pc 000000000037a123 /system/lib/libart.so (art::Thread::CreateCallback(void*)+866)
#11 pc 0000000000064975 /system/lib/libc.so (__pthread_start(void*)+22)
#12 pc 000000000001e875 /system/lib/libc.so (__start_thread+24)
aarch64-linux-android-addr2line.exe -C -f -e libmy-native-lib.so 000000000001adac
(anonymous namespace)::itanium_demangle::AbstractManglingParser<(anonymous namespace)::itanium_demangle::ManglingParser<(anonymous namespace)::DefaultAllocator>, (anonymous namespace)::DefaultAllocator>::consumeIf(char)
/buildbot/src/googleplex-android/ndk-release-r20/external/libcxx/../../external/libcxxabi/src/demangle/ItaniumDemangle.h:2217
0 个答案:
没有答案