My iOS app (built with Expo SDK 51 and React Native 0.74) was rejected by the App Store because it crashes on launch for the iPad 5th generation running iOS 18.3.2. The app works fine in simulators (iPad Air 5, iPhone 13 mini) and physical test devices I own.
Crash Details from Apple:
Crash occurs immediately on launch.
Apple provided crash logs (partially symbolicated). Here’s a snippet:
log
Copy
[Include relevant crash log lines here. Example:]
Thread 0 Crashed:
0 MyApp 0x1045a3fdc -[AppDelegate application:didFinishLaunchingWithOptions:] + 0
1 UIKitCore 0x18d2b3a88 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 348
...
What I’ve Tried:
Updated all dependencies to versions compatible with Expo SDK 51 (see package.json below). Tested on physical devices (iPhone 13, iPad Pro) with iOS 17/18 - no crashes. Added required permissions in app.json (camera, location, etc.). Used expo prebuild --clean and ensured no leftover native code conflicts. Code/Config:
package.json dependencies: json Copy
'''{
"dependencies": {
"expo": "51.0.37",
"react-native": "0.74.5",
"@react-native-masked-view/masked-view": "^0.3.0",
"react-native-screens": "3.31.1",
"react-native-reanimated": "3.10.1"
}
}'''
app.json permissions:
json
Copy
"ios": {
"infoPlist": {
"NSCameraUsageDescription": "Required for scanning...",
"NSLocationWhenInUseUsageDescription": "Needed for..."
}
}
Environment:
Expo SDK: 51.0.37 React Native: 0.74.5 Node: 18.18.2 / npm: 9.8.1 Workflow: expo