Black screen and crash for iOS?

Hi everyone,

Since the June 30 SDK 13.0 update by Apple, I can’t get my app to run on new iPhones.

It works great if I build it to my phone using XCode. But as soon as I play it without XCode (or with XCode open but just by opening the app on my phone), it has a black screen for 10 seconds then crashes.

Does anyone have any advice on debugging this? Because it crashes during opening the app, Crashlytics is not useful. And I’m at loss what the issue could be. Maybe a wrong Deployment setting? I’m not sure. I didn’t change anything.

Thanks,

1 Like

I have same problem, and i know more info.
Problem appeared after transition from Unity 2019.2.19 to Unity 2019.4.2.
If app force close, then will crash and thread will be an infinity loop.
The next open app will be with black screen ~ for 10 seconds, after which it will close.

I think this is due to the removal of the code in a separate library (UnityFramework) and the new splash (storyboard) for Apple( Unity - How to add a launch-screen storyboard for iOS in Unity - App Store requirement by June 30, 2020 - Unity Forum ).

Similar problem: Unity 2019.3 crashes on iOS 13+

1 Like

Personal story : I had too many issues with Unity 2019.3, I had to downgrade to 2019.2.

Now Unity has changed its startup path (code migrated into separate library UnityFramework), some 3rd party (Firebase and Ads Networks libraries) are producing deadlocks that makes the startup very long (adding many seconds before the Unity splash screen).

In some specific cases those deadlocks were so long that the iOS watchdog process silently killed them to prevent deadlocks at startup (the app hasn’t responded for 15s). See Watchdog Transgression crash (0x8badf00d) · Issue #5463 · firebase/firebase-ios-sdk · GitHub and UnityFramework load in 2019.3.11 causes Watchdog Transgression crash (0x8badf00d)

One of this bug crushed my D0 retention from 25% to 3%. Neither Crashlytics nor Apple Connect analytics were reporting this issue.

Stay away from 2019.3

2 Likes

@Flexford @Tortuap did you find a reliable solution to this issue? It’s still happening for me on 2019.4.6.f1 and it for sure doesn’t seem to help my retention :frowning:

No, i didn’t, i just downgrade unity to 2019.2:)

You can vote for issue to solve it by Unity.

2 Likes

Can confirm the workaround in the issue description worked for me. On an iPhone 8 Plus with iOS 14.2 beta and Unity 2019.4.13f1. Thanks!

1 Like

Been working on Unity 2019.4.14 and got the issue just today when I downloaded iOS 14.2 beta on 1 of my devices.
I’m going to try the workaround @TigerHix mentioned.

Workaround working on iOS 14.2 beta :slight_smile:

Seems this bug has been around a few months, I dont understand how has not been fixed yet. In my case it just popped up on iOS 14.2 beta and they are going to release it really soon. I dont know what to think. :face_with_spiral_eyes:

This relates to our experience. We are fine on all IOS versions then on 14.2 we experience black screen crashes. Its the same error as depicted above. We are trying Unity 2019.2 like the wise man said. I’ll report how it goes - for those feeling pain like ours.

anybody found the solution?

Like others, we ran into this issue and the workaround fixed it for us. The app works fine for everyone in Testflight, however, when we submit for review, it gets rejected because of a crash on load (that seems similar to the crash we see when we don’t use the workaround). Has anyone encountered this in the app review process ? Has anyone successfully submitted an app with this workaround through the app review process with Apple ?

2 Likes

facing this issue as well right now with 2021.1.11f and iPad.
But I figured it’s just the statusbar which flicker while starting the app.
I was able to solve this to change the info.plist with:

<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>

i have the same problem

The workaround in this issue fixed the black screen crash for me. iOS 15, Unity 2020.3.24f1, Admob, Firebase Analytics, Auth, Realtime DB.