3372a93f71
Expo SDK 54 switched to precompiled React Native XCFrameworks by default for faster iOS builds. However, the precompiled frameworks do not expose legacy bridge headers (RCTBridge, RCTViewManager, RCTSurfaceHostingProxyRootView, RCTPackagerConnection, RCTDevSettings.isDebuggingRemotely, rootViewFactory) that some native modules (e.g. expo-dev-client) still reference. Add expo-build-properties (v1.0.10, the SDK 54-compatible version) and configure buildReactNativeFromSource: true for iOS. This compiles React Native from source, making all native headers available to linked modules and resolving the Xcode compilation errors seen in the EAS production build. Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
83 lines
2.2 KiB
JSON
83 lines
2.2 KiB
JSON
{
|
|
"expo": {
|
|
"name": "DocuElevate",
|
|
"slug": "docuelevate-mobile",
|
|
"version": "1.0.0",
|
|
"orientation": "portrait",
|
|
"icon": "./assets/icon.png",
|
|
"userInterfaceStyle": "automatic",
|
|
"splash": {
|
|
"image": "./assets/splash.png",
|
|
"resizeMode": "contain",
|
|
"backgroundColor": "#1e40af"
|
|
},
|
|
"assetBundlePatterns": ["**/*"],
|
|
"ios": {
|
|
"supportsTablet": true,
|
|
"bundleIdentifier": "org.docuelevate.mobile",
|
|
"appleTeamId": "975U2ZESBM",
|
|
"infoPlist": {
|
|
"NSCameraUsageDescription": "DocuElevate uses the camera to capture documents for upload.",
|
|
"NSPhotoLibraryUsageDescription": "DocuElevate accesses your photo library to select documents for upload.",
|
|
"NSPhotoLibraryAddUsageDescription": "DocuElevate saves scanned documents to your photo library.",
|
|
"UIBackgroundModes": ["fetch", "remote-notification"],
|
|
"ITSAppUsesNonExemptEncryption": false
|
|
},
|
|
"buildNumber": "3"
|
|
},
|
|
"android": {
|
|
"adaptiveIcon": {
|
|
"foregroundImage": "./assets/adaptive-icon.png",
|
|
"backgroundColor": "#1e40af"
|
|
},
|
|
"package": "org.docuelevate.mobile",
|
|
"permissions": [
|
|
"CAMERA",
|
|
"READ_EXTERNAL_STORAGE",
|
|
"WRITE_EXTERNAL_STORAGE",
|
|
"RECEIVE_BOOT_COMPLETED",
|
|
"VIBRATE"
|
|
],
|
|
"versionCode": 1,
|
|
"googleServicesFile": "./google-services.json"
|
|
},
|
|
"web": {
|
|
"favicon": "./assets/favicon.png"
|
|
},
|
|
"plugins": [
|
|
"expo-router",
|
|
[
|
|
"expo-build-properties",
|
|
{
|
|
"ios": {
|
|
"buildReactNativeFromSource": true
|
|
}
|
|
}
|
|
],
|
|
[
|
|
"expo-notifications",
|
|
{
|
|
"icon": "./assets/notification-icon.png",
|
|
"color": "#1e40af",
|
|
"sounds": ["./assets/notification-sound.wav"]
|
|
}
|
|
],
|
|
[
|
|
"expo-camera",
|
|
{
|
|
"cameraPermission": "DocuElevate uses the camera to capture documents for upload."
|
|
}
|
|
],
|
|
"expo-document-picker",
|
|
"expo-secure-store"
|
|
],
|
|
"scheme": "docuelevate",
|
|
"owner": "christianlouis",
|
|
"extra": {
|
|
"eas": {
|
|
"projectId": "16925679-cb94-411c-83b5-a62c9addb872"
|
|
}
|
|
}
|
|
}
|
|
}
|