- Home /
[Android] Crash on OutOfMemoryError "PushLocalFrame"
Hey there,
The game I'm working on crashes with OutOfMemoryError "PushLocalFrame"
when loading a certain scene on a Samsung Galaxy A5 (and other reported Samsung devices). The game is not particularly memory hungry but we even tried stripping out larger textures, but with no success.
The game was exported to Android Studio with Unity 2019.4.16f1 LTS. Due to SDKs we are using, we cannot build on a later version of Unity, althought we've tried building without calling those SDK and they were ruled out from the potential causes.
Here is the callstack showing the crash:
04-30 17:22:35.384 7691 7938 W zygote64: Throwing OutOfMemoryError "PushLocalFrame"
04-30 17:22:35.384 7691 7938 W zygote64: Throwing OutOfMemoryError "PushLocalFrame"
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] Throwing new exception 'PushLocalFrame' with unexpected pending exception: java.lang.OutOfMemoryError: PushLocalFrame
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] at boolean com.unity3d.player.UnityPlayer.access$300(com.unity3d.player.UnityPlayer) ((null):-1)
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] at boolean com.unity3d.player.UnityPlayer$e$1.handleMessage(android.os.Message) ((null):-1)
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:101)
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] at void android.os.Looper.loop() (Looper.java:164)
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023] at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
04-30 17:22:35.385 7691 7938 F zygote64: thread.cc:2023]
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:508] Runtime aborting...
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:508]
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] Throwing new exception 'PushLocalFrame' with unexpected pending exception: java.lang.OutOfMemoryError: PushLocalFrame
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] at boolean com.unity3d.player.UnityPlayer.access$300(com.unity3d.player.UnityPlayer) ((null):-1)
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] at boolean com.unity3d.player.UnityPlayer$e$1.handleMessage(android.os.Message) ((null):-1)
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:101)
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] at void android.os.Looper.loop() (Looper.java:164)
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516] at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516]
04-30 17:22:35.385 7691 7938 F zygote64: runtime.cc:516]
04-30 17:22:35.390 7691 7938 E CRASH : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
04-30 17:22:35.391 7691 7938 E CRASH : Version '2019.4.1f1 (e6c045e14e4e)', Build type 'Release', Scripting Backend 'il2cpp', CPU 'arm64-v8a'
04-30 17:22:35.391 7691 7938 E CRASH : Build fingerprint: 'samsung/a5y17ltexx/a5y17lte:8.0.0/R16NW/A520FXXSFCTG8:user/release-keys'
04-30 17:22:35.391 7691 7938 E CRASH : Revision: '8'
04-30 17:22:35.391 7691 7938 E CRASH : ABI: 'arm64'
04-30 17:22:35.391 7691 7938 E CRASH : Timestamp: 2021-04-30 17:22:35+0200
04-30 17:22:35.391 7691 7938 E CRASH : pid: 7691, tid: 7938, name: UnityMain >>> com.loltap.spiraldrop <<<
04-30 17:22:35.391 7691 7938 E CRASH : uid: 10260
04-30 17:22:35.391 7691 7938 E CRASH : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
04-30 17:22:35.391 7691 7938 E CRASH : x0 0000000000000000 x1 0000000000001f02 x2 0000000000000006 x3 0000000000000008
04-30 17:22:35.391 7691 7938 E CRASH : x4 0000000000000000 x5 0000000000000000 x6 0000000000000000 x7 0080808080808080
04-30 17:22:35.391 7691 7938 E CRASH : x8 0000000000000083 x9 5e48966aeef32172 x10 0000000000000000 x11 0000000000000001
04-30 17:22:35.391 7691 7938 E CRASH : x12 ffffffffffffffff x13 0000000000000008 x14 ffffffffffffffff x15 0016f66544822806
04-30 17:22:35.391 7691 7938 E CRASH : x16 0000007f0d9972f8 x17 0000007f0d938408 x18 00000000138dbc60 x19 0000000000001e0b
04-30 17:22:35.391 7691 7938 E CRASH : x20 0000000000001f02 x21 0000007e7a92b180 x22 0000000000000000 x23 0000000000000245
04-30 17:22:35.391 7691 7938 E CRASH : x24 0000000000000051 x25 0000007e7a878e80 x26 0000000000000244 x27 0000000000000043
04-30 17:22:35.391 7691 7938 E CRASH : x28 0000007f0bdf0bb0 x29 0000007ee9648140
04-30 17:22:35.391 7691 7938 E CRASH : sp 0000007ee9648100 lr 0000007f0d8eabd4 pc 0000007f0d938410
04-30 17:22:35.391 7691 7938 E CRASH :
04-30 17:22:35.391 7691 7938 E CRASH : backtrace:
04-30 17:22:35.391 7691 7938 E CRASH : #00 pc 000000000006b410 /system/lib64/libc.so (tgkill+8) (BuildId: cafe80c5d1de3e1b8ff95fe7ea83f0c6)
04-30 17:22:35.391 7691 7938 E CRASH : #01 pc 000000000001dbd0 /system/lib64/libc.so (abort+88) (BuildId: cafe80c5d1de3e1b8ff95fe7ea83f0c6)
04-30 17:22:35.391 7691 7938 E CRASH : #02 pc 00000000004376dc /system/lib64/libart.so (art::Runtime::PreZygoteFork()) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.391 7691 7938 E CRASH : #03 pc 0000000000437dec /system/lib64/libart.so (art::Runtime::Create(art::RuntimeArgumentMap&&)) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #04 pc 0000000000522a3c /system/lib64/libart.so (android::base::LogMessage::~LogMessage()+900) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #05 pc 0000000000462c40 /system/lib64/libart.so (art::Thread::AssertNoPendingExceptionForNewException(char const*) const+1212) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #06 pc 0000000000459954 /system/lib64/libart.so (art::Thread::ThrowOutOfMemoryError(char const*)+392) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #07 pc 00000000003547b0 /system/lib64/libart.so (art::JNI::EnsureLocalCapacityInternal(art::ScopedObjectAccess&, int, char const*)+104) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #08 pc 0000000000314bb0 /system/lib64/libart.so (art::JNI::PushLocalFrame(_JNIEnv*, int)+608) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #09 pc 00000000000f4898 /system/lib64/libart.so (art::CheckJNI::PushLocalFrame(_JNIEnv*, int)+676) (BuildId: 2bd1b5ed064ba2f326b8679994044ed5)
04-30 17:22:35.392 7691 7938 E CRASH : #10 pc 000000000084a6c0 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (BuildId: 5630528a8347d39886058ec7386db0968d51e39f)
04-30 17:22:35.491 7691 8731 I GameAnalytics: Info/GameAnalytics: Event queue: No events to send
04-30 17:22:35.509 7691 8731 I GameAnalytics: Info/GameAnalytics: Add DESIGN event: {eventId:LevelStart, value:0.0}
04-30 17:22:35.598 7691 7938 E CRASH : Tombstone written to: /storage/emulated/0/Android/data/com.loltap.spiraldrop/files/tombstone_00
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] JNI DETECTED ERROR IN APPLICATION: JNI FindClass called with pending exception java.lang.OutOfMemoryError: PushLocalFrame
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at boolean com.unity3d.player.UnityPlayer.access$300(com.unity3d.player.UnityPlayer) ((null):-1)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at boolean com.unity3d.player.UnityPlayer$e$1.handleMessage(android.os.Message) ((null):-1)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:101)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at void android.os.Looper.loop() (Looper.java:164)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504]
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] in call to FindClass
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] from boolean com.unity3d.player.UnityPlayer.nativeRender()
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] "UnityMain" prio=5 tid=33 Runnable
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] | group="" sCount=0 dsCount=0 flags=0 obj=0x13801f80 self=0x7ef97cda00
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] | sysTid=7938 nice=0 cgrp=default sched=0/0 handle=0x7ee964a4f0
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] | state=R schedstat=( 0 0 0 ) utm=492 stm=69 core=2 HZ=100
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] | stack=0x7ee9548000-0x7ee954a000 stackSize=1037KB
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] | held mutexes= "abort lock" "mutator lock"(shared held)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #00 pc 0000000000397510 /system/lib64/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv+212)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #01 pc 000000000045dce8 /system/lib64/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMapb+348)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #02 pc 00000000002d58dc /system/lib64/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_+1040)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #03 pc 00000000002d5d5c /system/lib64/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list+116)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #04 pc 00000000001089d8 /system/lib64/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz+148)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #05 pc 0000000000108504 /system/lib64/libart.so (_ZN3art11ScopedCheck11CheckThreadEP7_JNIEnv+536)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #06 pc 00000000001069a0 /system/lib64/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE+856)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #07 pc 00000000000eec20 /system/lib64/libart.so (_ZN3art8CheckJNI9FindClassEP7_JNIEnvPKc+644)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #08 pc 000000000031c680 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (???)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #09 pc 0000000000344398 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (???)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] native: #10 pc 000000000001323c /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/oat/arm64/base.odex (Java_com_unity3d_player_UnityPlayer_nativeRender__+124)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at com.unity3d.player.UnityPlayer.nativeRender(Native method)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at com.unity3d.player.UnityPlayer.access$300(unavailable:-1)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at com.unity3d.player.UnityPlayer$e$1.handleMessage(unavailable:-1)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at android.os.Handler.dispatchMessage(Handler.java:101)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at android.os.Looper.loop(Looper.java:164)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504] at com.unity3d.player.UnityPlayer$e.run(unavailable:-1)
04-30 17:22:35.644 7691 7938 F zygote64: java_vm_ext.cc:504]
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] Runtime aborting --- recursively, so no thread-specific detail!
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #00 pc 0000000000397510 /system/lib64/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv+212)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #01 pc 0000000000437578 /system/lib64/libart.so (_ZN3art7Runtime5AbortEPKc+172)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #02 pc 0000000000437dec /system/lib64/libart.so (_ZN3art7Runtime7AborterEPKc+24)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #03 pc 0000000000522a3c /system/lib64/libart.so (_ZN7android4base10LogMessageD1Ev+900)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #04 pc 00000000002d5b80 /system/lib64/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_+1716)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #05 pc 00000000002d5d5c /system/lib64/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list+116)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #06 pc 00000000001089d8 /system/lib64/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz+148)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #07 pc 0000000000108504 /system/lib64/libart.so (_ZN3art11ScopedCheck11CheckThreadEP7_JNIEnv+536)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #08 pc 00000000001069a0 /system/lib64/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE+856)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #09 pc 00000000000eec20 /system/lib64/libart.so (_ZN3art8CheckJNI9FindClassEP7_JNIEnvPKc+644)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #10 pc 000000000031c680 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (???)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #11 pc 0000000000344398 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (???)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508] #12 pc 000000000001323c /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/oat/arm64/base.odex (???)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:508]
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] JNI DETECTED ERROR IN APPLICATION: JNI FindClass called with pending exception java.lang.OutOfMemoryError: PushLocalFrame
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] at boolean com.unity3d.player.UnityPlayer.access$300(com.unity3d.player.UnityPlayer) ((null):-1)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] at boolean com.unity3d.player.UnityPlayer$e$1.handleMessage(android.os.Message) ((null):-1)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:101)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] at void android.os.Looper.loop() (Looper.java:164)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516]
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] in call to FindClass
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] from boolean com.unity3d.player.UnityPlayer.nativeRender()
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] "UnityMain" prio=5 tid=33 Runnable
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] | group="" sCount=0 dsCount=0 flags=0 obj=0x13801f80 self=0x7ef97cda00
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] | sysTid=7938 nice=0 cgrp=default sched=0/0 handle=0x7ee964a4f0
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] | state=R schedstat=( 0 0 0 ) utm=492 stm=69 core=2 HZ=100
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] | stack=0x7ee9548000-0x7ee954a000 stackSize=1037KB
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] | held mutexes= "abort lock" "mutator lock"(shared held)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #00 pc 0000000000397510 /system/lib64/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv+212)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #01 pc 000000000045dce8 /system/lib64/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMapb+348)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #02 pc 00000000002d58dc /system/lib64/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_+1040)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #03 pc 00000000002d5d5c /system/lib64/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list+116)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #04 pc 00000000001089d8 /system/lib64/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz+148)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #05 pc 0000000000108504 /system/lib64/libart.so (_ZN3art11ScopedCheck11CheckThreadEP7_JNIEnv+536)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #06 pc 00000000001069a0 /system/lib64/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE+856)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #07 pc 00000000000eec20 /system/lib64/libart.so (_ZN3art8CheckJNI9FindClassEP7_JNIEnvPKc+644)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #08 pc 000000000031c680 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (???)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #09 pc 0000000000344398 /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/lib/arm64/libunity.so (???)
04-30 17:22:35.683 7691 7938 F zygote64: runtime.cc:516] native: #10 pc 000000000001323c /data/app/com.loltap.spiraldrop-KACKC8u2-6QBjVvkm1Q2wQ==/oat/arm64/base.odex
Any help would be much appreciated as the game is live and I don't know the extent of affected playerbase.
Answer by ReneSchleese · Sep 13, 2021 at 11:57 AM
In our case the crash was caused by the Cursor API. Removing the call fixed our issue. We were using Unity 2020.3.17f1. The crash appeared on Samsung Galaxy S8 with Android 8.
Cursor.SetCursor()
You really saved the day for our team. We had serious struggle with our app rating decreasing because of the crashes on Android 7.0, 7.1 and 8.0. There was absolutely no meaningful info in log/crashlytics of what's really going on! Tried your solution and it miraculously worked. This is the first time I am writing words of gratitude on the forum. Crash appeared on (not entire list): Huawei HUWEI MediaPad T3 - Android 7.0 (SDK 24) Huawei HUAWEI MediaPad T3 10 - Android 7.0 (SDK 24) Huawei Honor 7A - Android 8.0 (SDK 26) HTC 10 - Android 7.0 (SDK 24) Samsung Galaxy S7 edge - Android 8.0 (SDK 26) Sony Xperia XA1 - Android 8.0 (SDK 26)
Again, thank you!
I noticed the error on my app with Unity 2020.3.20f1 (on Samsung Galaxy S7, Android 8). The app simply crashes on startup.
Google Pre-Launch Report and Firebase also report the error: "Abort message: 'thread.cc:2023] Throwing new exception 'PushLocalFrame' with unexpected pending exception: java.lang.OutOfMemoryError: PushLocalFrame'"
Updating to Unity 2020.3.22f1 did not help.
Since I don't use the cursor API in the code, I removed the default cursor image from the player settings, rebuilt the app for Android, and tried it: The app starts again!
Thanks for the tip with the cursor! To be on the safe side, I created a bug report with Unity. Since I create my app for Windows and Android, I now have to set/remove the cursor image before each build, which is quite annoying.
Thank you so much for me it was also the cursor image causing the crash
2 Force a heapdump when the out of memory happens. See Can I force generation of a JVM crash log file?. Then use the tools listed there to narrow down the memory leak: Tool for analyzing large Java heap dumps.
Your answer
Follow this Question
Related Questions
Game crashes in some Android devices with Unity 4.6.1 9 Answers
How is the game's performance looking on Android? 0 Answers
Android tablet crashes depending on texture compression 0 Answers
What might cause an Android app to freeze 1 Answer
Android level doesn't want to work after Application.LoadLevel 1 Answer