Как символизировать libart.so или libc.so Stacktraces в Crashlytics Android NDK? ⇐ Android
Как символизировать libart.so или libc.so Stacktraces в Crashlytics Android NDK?
Примечание: символы отображаются в Crashlytics для нашей библиотеки C ++, проблема в том, что они не отображаются для системных библиотек, таких как Libc , Libart , libbase и libandroid_runtime .
У нас есть несколько сложных сбоев, которые случаются полностью во время выполнения Android, и их трудно отлаживать без символов. В Firebase Crashlytics мы видим следующий трассировку стека: < /p>
Crashed: Thread : SIGABRT 0x0000000000000000
#00 pc 0x4e574 libc.so
#01 pc 0x4e540 libc.so
#02 pc 0x5677d8 libart.so
#03 pc 0x13ab0 libbase.so
#04 pc 0x13090 libbase.so
#05 pc 0x38cb6c libart.so
#06 pc 0x39f7d8 libart.so
#07 pc 0x1260e0 libandroid_runtime.so
#08 pc 0x124ef4 libandroid_runtime.so
#09 pc 0x124dc4 libandroid_runtime.so
#10 pc 0x115468 libandroid_runtime.so
< /code>
Когда я заставляю тестовый аварий в нашей библиотеке C ++, оставив нулевый указатель, я вижу следующую Backtrace в моей локальной консоли Android Studio: < /p>
...snip...
#06 pc 00000000002d7644 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#07 pc 00000000002cdd64 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#08 pc 00000000002f23d0 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+312) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#09 pc 00000000003839f4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+800) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#10 pc 00000000003813f4 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtualRange+1368) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#11 pc 00000000002c8714 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual_range+20) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
...snip...
< /code>
Однако тот же сбой в Crashlytics выглядит так: < /p>
...snip...
#07 pc 0x222244 libart.so
#08 pc 0x218964 libart.so
#09 pc 0x284208 libart.so
#10 pc 0x3e34ac libart.so
#11 pc 0x800ba4 libart.so
...snip...
Как мы можем получить Crashlytics, чтобы включить информацию, которая явно находится в Crashdump? br/>
[*] Мы уже следили за https://firebase.google.com/docs/crashl ... dk-reports
Gradle Project 1 создает нативную библиотеку, гарантируя, что отладка включена и символы не раздеваются. Загрузить собственные символы < /li>
< /ul>
firebaseCrashlytics {
nativeSymbolUploadEnabled true
unstrippedNativeLibsDir file("PATH/TO/UNSTRIPPED/DIRECTORY")
}
Подробнее здесь: https://stackoverflow.com/questions/727 ... ndroid-ndk
Примечание: символы отображаются в Crashlytics для нашей библиотеки C ++, проблема в том, что они не отображаются для системных библиотек, таких как Libc , Libart , libbase и libandroid_runtime .
У нас есть несколько сложных сбоев, которые случаются полностью во время выполнения Android, и их трудно отлаживать без символов. В Firebase Crashlytics мы видим следующий трассировку стека: < /p>
Crashed: Thread : SIGABRT 0x0000000000000000
#00 pc 0x4e574 libc.so
#01 pc 0x4e540 libc.so
#02 pc 0x5677d8 libart.so
#03 pc 0x13ab0 libbase.so
#04 pc 0x13090 libbase.so
#05 pc 0x38cb6c libart.so
#06 pc 0x39f7d8 libart.so
#07 pc 0x1260e0 libandroid_runtime.so
#08 pc 0x124ef4 libandroid_runtime.so
#09 pc 0x124dc4 libandroid_runtime.so
#10 pc 0x115468 libandroid_runtime.so
< /code>
Когда я заставляю тестовый аварий в нашей библиотеке C ++, оставив нулевый указатель, я вижу следующую Backtrace в моей локальной консоли Android Studio: < /p>
...snip...
#06 pc 00000000002d7644 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#07 pc 00000000002cdd64 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#08 pc 00000000002f23d0 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+312) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#09 pc 00000000003839f4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+800) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#10 pc 00000000003813f4 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtualRange+1368) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
#11 pc 00000000002c8714 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual_range+20) (BuildId: adb75d6f792faa24b1bc8cf512fb112c)
...snip...
< /code>
Однако тот же сбой в Crashlytics выглядит так: < /p>
...snip...
#07 pc 0x222244 libart.so
#08 pc 0x218964 libart.so
#09 pc 0x284208 libart.so
#10 pc 0x3e34ac libart.so
#11 pc 0x800ba4 libart.so
...snip...
Как мы можем получить Crashlytics, чтобы включить информацию, которая явно находится в Crashdump? br/>
[*] Мы уже следили за https://firebase.google.com/docs/crashl ... dk-reports
Gradle Project 1 создает нативную библиотеку, гарантируя, что отладка включена и символы не раздеваются. Загрузить собственные символы < /li>
< /ul>
firebaseCrashlytics {
nativeSymbolUploadEnabled true
unstrippedNativeLibsDir file("PATH/TO/UNSTRIPPED/DIRECTORY")
}
Подробнее здесь: https://stackoverflow.com/questions/727 ... ndroid-ndk
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как символизировать libart.so или libc.so Stacktraces в Crashlytics Android NDK?
Anonymous » » в форуме C++ - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как обозначить трассировки стека libart.so или libc.so в Crashlytics Android NDK?
Anonymous » » в форуме Android - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу отформатировать StackTraces Exception Stacktraces в журнале питона?
Anonymous » » в форуме Python - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-