Application crash on android when switching from the game level to the main menu level

Good afternoon, the following error occurs according to data from Android Vitals. Visually, it appears after the end of a round in the game on an Android device, everything is fine in the UE4 editor and the transition from the game level to the main menu level occurs without problems. Tell me how to overcome this problem


pid: 0, tid: 0 >>> nameapp <<<

backtrace:
  #00  pc 0000000005e60f6c  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (FAsyncPurge::TickDestroyGameThreadObjects(bool, float, double)+384)

  #00  pc 0000000005e60994  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (FAsyncPurge::TickPurge(bool, float, double)+168)

  #00  pc 0000000005e3d2d0  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (IncrementalPurgeGarbage(bool, float)+992)

  #00  pc 0000000005e3e3b4  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (CollectGarbageInternal(EObjectFlags, bool)+964)

  #00  pc 0000000005e3eb88  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (CollectGarbage(EObjectFlags, bool)+88)

  #00  pc 0000000008277cd0  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (UEngine::TrimMemory()+32)

  #00  pc 00000000082765e8  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (UEngine::LoadMap(FWorldContext&, FURL, UPendingNetGame*, FString&)+1872)

  #00  pc 0000000008274600  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (UEngine::Browse(FWorldContext&, FURL, FString&)+3016)

  #00  pc 0000000008275ab0  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (UEngine::TickWorldTravel(FWorldContext&, float)+660)

  #00  pc 0000000007c8973c  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (UGameEngine::Tick(float, bool)+568)

  #00  pc 00000000051f035c  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (FEngineLoop::Tick()+4952)

  #00  pc 00000000051ee49c  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (AndroidMain(android_app*)+3184)

  #00  pc 00000000051f17fc  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000) (android_main+148)

  #00  pc 0000000005208e48  /data/app/com.nameapp-qVbMIGsGtRLSxDp-Dxh30w==/base.apk!lib/arm64-v8a/libUE4.so (offset 0xdd000)

  #00  pc 00000000000d6cb0  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)

  #00  pc 0000000000074eac  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

Same with our project

I have such a problem, when I open any level on android(arm7 or arm8) there is 60% chance that while opening it my game crashes.

Version ue4.26.

I’ve tried to do alot to fix it but nothing helps

Where should I set it? Engine.ini? And if my project is build with source version it will work?

You mean this to false?

I’ve looked into the problem in UE4 source code, seems the problem is related to GC purge worker/game thread.
If your project dosen’t contain UE4 source code, try to set “gc.MultithreadedDestructionEnabled” to 0. It might helps.

1 Like

1)Open solution
2)Find “gc.MultithreadedDestructionEnabled” entire solution
3)Find this one on the second image and set to false

I faced this same issue while developing an app for business for facial scrub

Seems it also works with your project?
But anyway, it is not the best/final solution. It will slow down some “package uobject” destruction.
Let’s wait for Epic fix.

Been looking for this fix for over a month! Will try to implement tonight and will update this if it works for me.

1 Like