UE5 Android crash in splash screen

Hi, I converted my project from UE5 Early Access to UE5.0, and ran into the crashing problem. It worked fine before, I used UE5 EA to package Android, iOS, Windows and Mac, and all succeeded.

Now I have tried UE5.0 Windows and Android packaging, Windows is fine but not for Android. I don’t have an Android phone, so I uploaded it to Firebase Test Lab, it showed the splash screen for 1 second then crashed. I created an empty project and package, still has the same issue.

Engine version: UE5.0 on Windows 11

Android version: Pixel 3(API level 28), Pixel 5e(API level 30)

Project settings:

Java version: 1.8.0_301
NDK API level: android-21

I believe the issues is not from the JRE/SDK/NDK setup, because it worked fine in UE5 EA with the same settings.

Result on Firebase:

I am not sure why caused that. The first line said “release-keys”, does it mean missing keystore file? I set that up but still not working. Neither development build nor distribution build worked. It also mentioned “ABI: arm64”, but I didn’t enable ABI spliting at all, even enabling it doesn’t get better.

In project settings, neither “Generate bundle(AAB) + Generate universal APK from bundle” nor deselecting AAB worked. And I cannot untick “Support arm64[aka arm64-v8a]”.

If AAB is not selected, it generates:

  1. AFS_-AppName-Shipping-arm64.apk
  2. AppName-Android-Shipping.aab
  3. AppName-Android-Shipping_universal.apk

If AAB is selected, it generates one extra file:

  1. AppName-Android-Shipping-arm64.apk

Uploading .aab or .apk to Firebase have the same issue. The splitting options confuse me, since Firebase allows to upload only one file, I don’t want to split. I believe AAB is for distribution and APK is for testing, splitting is used for reducing app size and targeting devices with different architecture. I also tried disabling “Share Material Shader Code” and “Shared Material Native Libraries” in Packaging, but didn’t solve it.

I would be glad if anyone can provide some solution.

Now I am more convinced it is from the engine. I used UE4.27.2 to create an empty project, then packaged using the same settings. It worked fine. Both 4.27 and 5 EA work.

I tried 5.0.1, still has the same problem.

Same problem here. UE5.0.1 from the epic launcher, Huawei P40Pro+, Mi10T crashes at start.
I have create a blank C++ project, tried to run on device and it crashes

-29 10:28:29.764  1572  2337 W Process : Unable to open /proc/-1/status
04-29 10:28:29.765  1572  2337 D HwActivityManagerServiceEx: notifyAppToTop pid:2775, enable:0
04-29 10:28:29.765  2775  2775 I RmeSchedManager: init Rme, version is: v1.0
04-29 10:28:29.770  1572  1728 I WindowManager: performshow Window{52acd4a u0 StatusBar} tok.waitingToShow=false isTransitionSet=false parentHidden=false vis=0 tok.hidden=false hasSurface=true policyVis=false destroying=false animating=false
04-29 10:28:29.771  1572  1728 D HwWindowManagerServiceEx: applyLandOpenAnimation alpha 1.0 scale 0.7869921
04-29 10:28:29.773 23640 23640 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
04-29 10:28:29.774  1148  1148 I /system/bin/tombstoned: received crash request for pid 22606
04-29 10:28:29.775 23640 23640 I crash_dump64: performing dump of process 22606 (target tid = 22606)
04-29 10:28:29.776  1572  2288 I WindowManager: performshow Window{52acd4a u0 StatusBar} tok.waitingToShow=false isTransitionSet=false parentHidden=false vis=0 tok.hidden=false hasSurface=true policyVis=false destroying=false animating=false
04-29 10:28:29.776  1572  2288 D HwWindowManagerServiceEx: applyLandOpenAnimation alpha 1.0 scale 0.7869921
04-29 10:28:29.777  1572  2288 I WindowManager: dispatchResized : win = Window{8f4be6a u0 HwFullScreenWindow} drawState = HAS_DRAWN
04-29 10:28:29.778  1572  2288 I WindowManager: performshow Window{52acd4a u0 StatusBar} tok.waitingToShow=false isTransitionSet=false parentHidden=false vis=0 tok.hidden=false hasSurface=true policyVis=false destroying=false animating=false
04-29 10:28:29.778  1572  2288 D HwWindowManagerServiceEx: applyLandOpenAnimation alpha 1.0 scale 0.7869921
04-29 10:28:29.780 23640 23640 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
04-29 10:28:29.780 23640 23640 F DEBUG   : Build fingerprint: 'HUAWEI/ELS-N39/HWELS-P:10/HUAWEIELS-N39/102.0.0.236C636:user/release-keys'
04-29 10:28:29.780 23640 23640 F DEBUG   : Revision: '0'
04-29 10:28:29.780 23640 23640 F DEBUG   : ABI: 'arm64'
04-29 10:28:29.780 23640 23640 F DEBUG   : Timestamp: 2022-04-29 10:28:29+0700
04-29 10:28:29.780 23640 23640 F DEBUG   : pid: 22606, tid: 22606, name: ny.ShootOnSight  >>> com.YourCompany.ShootOnSight <<<
04-29 10:28:29.780 23640 23640 F DEBUG   : uid: 10258
04-29 10:28:29.780 23640 23640 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
04-29 10:28:29.780 23640 23640 F DEBUG   : Cause: null pointer dereference
04-29 10:28:29.780 23640 23640 F DEBUG   :     x0  0000007a0304eb10  x1  0000000000000081  x2  000000007fffffff  x3  0000000000000000
04-29 10:28:29.780 23640 23640 F DEBUG   :     x4  0000000000000000  x5  0000000000000000  x6  0000000000000000  x7  7f7f7f7f7f7f7f7f
04-29 10:28:29.780 23640 23640 F DEBUG   :     x8  0000000000000000  x9  711b902c6ac984d0  x10 00000000000000e0  x11 0000000000000000
04-29 10:28:29.780 23640 23640 F DEBUG   :     x12 0000007a7b60d608  x13 2f3d3d5168305345  x14 0000000000000004  x15 0000000000000003
04-29 10:28:29.780 23640 23640 F DEBUG   :     x16 0000007afc8b3b38  x17 0000007afc844ba0  x18 0000007b02280000  x19 00000079f0a93bf0
04-29 10:28:29.780 23640 23640 F DEBUG   :     x20 0000007b02385766  x21 00000079f0a8bb28  x22 0000000000000000  x23 0000007b010c3020
04-29 10:28:29.780 23640 23640 F DEBUG   :     x24 0000007b0238a64f  x25 0000007afc8ae3d8  x26 0000007b024975a8  x27 0000000000000001
04-29 10:28:29.780 23640 23640 F DEBUG   :     x28 00000079f0a29338  x29 0000007fde4f2090
04-29 10:28:29.780 23640 23640 F DEBUG   :     sp  0000007fde4f2090  lr  00000079f0a28624  pc  0000000000000000
04-29 10:28:29.780 23640 23640 F DEBUG   :
04-29 10:28:29.780 23640 23640 F DEBUG   : backtrace:
04-29 10:28:29.780 23640 23640 F DEBUG   :       #00 pc 0000000000000000  <unknown>
04-29 10:28:29.780 23640 23640 F DEBUG   :       #01 pc 0000000000093620  /data/app/com.YourCompany.ShootOnSight-VJZm8pJm8COv9Ge8PES0hQ==/lib/arm64/libc++_shared.so (BuildId: f40f6d280957fdd0a998b5fb11c895e9554b8b45)

Probably it has something to do with /lib/arm64/libc++_shared.so

04-29 10:54:29.258  5468  5468 F libc    : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 5468 (ny.ShootOnSight), pid 5468 (ny.ShootOnSight)

I have found a workaround for now.
Issue come from version of Android SDK and NDK installed on the machine.

I had a recent ones before, so I had to install android sdk ver 28(Pie) and android NDK version 21.4, Cmake was downgraded to 3.10 ( just in case )

Project settings / Android SDK been configured to use SDK API Level value as matchsdk and NDK API Level as latest

After than I been able to package, install and run the binary on a phone.

Hope it helps.

After that it

That’s a good sign. I tried that but didn’t work for me. I will just leave it and see whether it will get fixed in newer version.

And did you encounter a low frame rate issue? That’s also a serious thing. I posted here: UE5.0.1 low frame rate issue

same here. Win 10 Pro + UE 5.01
Android Pixel 3 (28)
With having Intro video i get this Firebase result:

After remove intro video I get this Firebase result:

Surprisingly, it works on Pixel 5e (30).

I heard that the requirement for Android in official UE5.0 is very strict, must be 64-bit and Android 8.0 Oreo or newer. Not all phones with API level 28 can run, I doubt that. I even tried to set the minimum to be API level 30.

But in UE5 Early Access is not that strict, I have been using it since its launch. Some exceptional phones like HTC 10(API level 26) can run.

Same issue here:

A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 25607

If the problem is an incompatibility between the packaged app and the target device/Android version, I would expect a better and more user friendly error handling by Android (and maybe also by UE5). This seems more an SDK/NDK problem with UE5 to me.

1 Like

As expected, I solved installing specific versions of the Android SDK and NDK tools (as also already pointed out by @denton85 in the thread).

Using the SDK Manager of Android Studio, I ensured to have installed the NDK v21.4.7075529.
Then configured the Editor as follow:

image

Good to know.

Had the same problem here in UE5.0.3 and changing Android SDK config didn’t work for me.
Yet the crash log specifically points to Vulkan API. I switched to using only OpenGLES and it worked on my Phone.


1 Like

Here’s a fix for your problem.

1 Like