App Rejected by Apple for crashing on launch but works fine in TestFlight!

Good afternoon,

I’ve got an app I built using React Native and Expo which I then exported to my Apple developer account using Expo build:ios. The app can be downloaded onto my device via TestFlight but when I submit it for review Apple reject is stating: ‘We were unable to review your app as it crashed on launch. We have attached detailed crash logs to help troubleshoot this issue.’ - I am unable to work out why or replicate the issue.

My code is here: http://github.com/marktiddy/lecdeck

Expo diagnostic info:

Expo CLI 3.21.5 environment info:
    System:
      OS: macOS 10.15.5
      Shell: 3.2.57 - /bin/bash
    Binaries:
      Node: 12.14.0 - /usr/local/bin/node
      Yarn: 1.21.1 - /usr/local/bin/yarn
      npm: 6.13.7 - /usr/local/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    IDEs:
      Android Studio: 3.5 AI-191.8026.42.35.5791312
      Xcode: 11.5/11E608c - /usr/bin/xcodebuild
    npmGlobalPackages:
      expo-cli: 3.21.5```

Can anyone help?

Hey @marktiddy,

Have you tried starting the project using expo start --no-dev --minify to replicate the JS bundle that is served in production? Also, do the crash logs indicate what iOS version it crashed on?

Cheers,
Adam

The crash logs from Apple’s testers (as I cannot replicate the issue!) showed it was iOS 13.5.1 which is the same as I’m running on my iPhone and iPad…I eventually managed to symbolicate the crash logs yesterday and have just added Sentry to my latest submitted build in the hope I can work it out a little more but I will certainly try the command you suggested too,

Thank you

Have you tried running it in a clean device that has never had your app on it before?

Thanks for your tips everyone,

In the end I worked out what it was by rewriting some code to deliberately break it on Apple’s end!

When the app loaded I was parsing some dates from a list however was checking GMT against USA time which was why it crashed for Apple and not me!

1 Like

Glad you got to the bottom of things, @marktiddy!

1 Like