heremaps / here-android-sdk-examples

Java-based projects using the HERE SDK for Android.
Apache License 2.0
145 stars 191 forks source link

Native crash #457

Open ivan-truck opened 3 years ago

ivan-truck commented 3 years ago

It happens approximately with 5% of our users. We are not able to reproduce it. All we have is stack traces from Crashlytics and Play Console. We use Android SDK Premium v3.18. Crash follows us starting version v3.14. Here are all details that we have:

` pid: 0, tid: 0 >>> com.truckersreport.hammer <<<

backtrace:

00 pc 000000000004ef24 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164)

00 pc 0000000000042b00 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8)

00 pc 000000000004318c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+32)

00 pc 0000000000043294 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderRace(void*)+60)

00 pc 0000000000048428 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::quarantineOrDeallocateChunk(void, scudo::Chunk::UnpackedHeader, unsigned long)+692)

00 pc 0000000000044dbc /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::reallocate(void*, unsigned long, unsigned long)+316)

00 pc 0000000000044c1c /apex/com.android.runtime/lib64/bionic/libc.so (scudo_realloc+36)

00 pc 000000000003bf14 /apex/com.android.runtime/lib64/bionic/libc.so (realloc+84)

00 pc 00000000011eafc0 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 00000000011eaf44 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 0000000000ff3834 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 0000000000ff4198 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 0000000000d3aecc /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 00000000000158f4 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libos-adaptation.network.so (offset 0x2d89000)

00 pc 000000000001557c /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libos-adaptation.network.so (offset 0x2d89000)

00 pc 0000000000016280 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libos-adaptation.network.so (offset 0x2d89000) (Java_com_here_network_NetworkProtocol_dataCallback+92)

00 pc 00000000002bd350 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (art_jni_trampoline+176)

00 pc 00000000006279a4 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (com.here.network.NetworkProtocol.access$700+52)

00 pc 00000000006261bc /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (com.here.network.NetworkProtocol$GetTask.doInBackground+5372)

00 pc 0000000000624c64 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (com.here.network.NetworkProtocol$GetTask.doInBackground+84)

00 pc 000000000074d228 /system/framework/arm64/boot-framework.oat (android.os.AsyncTask$3.call+168)

00 pc 0000000000243688 /apex/com.android.art/javalib/arm64/boot.oat (java.util.concurrent.FutureTask.run+200)

00 pc 00000000002a2d38 /apex/com.android.art/javalib/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor.runWorker+984)

00 pc 000000000029ff30 /apex/com.android.art/javalib/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor$Worker.run+64)

00 pc 000000000015ced8 /apex/com.android.art/javalib/arm64/boot.oat (java.lang.Thread.run+72)

00 pc 0000000000134564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)

00 pc 0000000000198e94 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread, unsigned int, unsigned int, art::JValue, char const)+204)

00 pc 000000000053216c /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod, art::(anonymous namespace)::ArgArray, art::JValue, char const)+104)

00 pc 000000000053336c /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject, art::ArtMethod, jvalue const)+440)

00 pc 000000000058088c /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1272)

00 pc 00000000000b6234 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)

00 pc 0000000000050e64 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)`

The part that could be interesting here:

`#00 pc 00000000006279a4 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (com.here.network.NetworkProtocol.access$700+52)

00 pc 00000000006261bc /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (com.here.network.NetworkProtocol$GetTask.doInBackground+5372)

00 pc 0000000000624c64 /data/app/~~gN0JexiCxCeIf55dfMwkAg==/com.truckersreport.hammer-GNz6y3q_zBONjqheR624Mg==/oat/arm64/base.odex (com.here.network.NetworkProtocol$GetTask.doInBackground+84)`

ivan-truck commented 3 years ago

A bit different stack:

` pid: 0, tid: 0 >>> com.truckersreport.hammer <<<

backtrace:

00 pc 000000000004ef24 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164)

00 pc 00000000000790f4 /apex/com.android.runtime/lib64/bionic/libc.so (__fortify_fatal(char const*, ...)+124)

00 pc 00000000000b1910 /apex/com.android.runtime/lib64/bionic/libc.so (fwrite+296)

00 pc 00000000011eb92c /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 0000000000ff3834 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 0000000000ff4198 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 0000000000d3aecc /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libMAPSJNI.so (offset 0x8c7000)

00 pc 00000000000158f4 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libos-adaptation.network.so (offset 0x2d89000)

00 pc 000000000001557c /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libos-adaptation.network.so (offset 0x2d89000)

00 pc 0000000000016280 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/split_config.arm64_v8a.apk!lib/arm64-v8a/libos-adaptation.network.so (offset 0x2d89000) (Java_com_here_network_NetworkProtocol_dataCallback+92)

00 pc 00000000002fb350 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/oat/arm64/base.odex (art_jni_trampoline+176)

00 pc 00000000005658a4 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/oat/arm64/base.odex (com.here.network.NetworkProtocol.access$700+52)

00 pc 00000000005640fc /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/oat/arm64/base.odex (com.here.network.NetworkProtocol$GetTask.doInBackground+5372)

00 pc 0000000000562ba4 /data/app/~~4h3BfPSRaT-8reXXUFIBrg==/com.truckersreport.hammer-HJc72P5yq5SyoNNyY_mMBg==/oat/arm64/base.odex (com.here.network.NetworkProtocol$GetTask.doInBackground+84)

00 pc 000000000074d228 /system/framework/arm64/boot-framework.oat (android.os.AsyncTask$3.call+168)

00 pc 0000000000243688 /apex/com.android.art/javalib/arm64/boot.oat (java.util.concurrent.FutureTask.run+200)

00 pc 00000000002a2d38 /apex/com.android.art/javalib/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor.runWorker+984)

00 pc 000000000029ff30 /apex/com.android.art/javalib/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor$Worker.run+64)

00 pc 000000000015ced8 /apex/com.android.art/javalib/arm64/boot.oat (java.lang.Thread.run+72)

00 pc 0000000000134564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)

00 pc 0000000000198e94 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread, unsigned int, unsigned int, art::JValue, char const)+204)

00 pc 000000000053216c /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod, art::(anonymous namespace)::ArgArray, art::JValue, char const)+104)

00 pc 000000000053336c /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject, art::ArtMethod, jvalue const)+440)

00 pc 000000000058088c /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1272)

00 pc 00000000000b6234 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)

00 pc 0000000000050e64 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)`