[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.

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()