I’m having an error while building for iOS on recaptcha even though I already migrated from expo Firebase to React Native Firebase
EAS cli version 3.5.2
OK. Have you made any changes to the ios
or android
directories? i.e. is this a Bare workflow app?
If you have ios
and android
directories, then you are effectively using the Bare workflow, regardless of whether you intended to. You might have run npx expo run:ios
or npx expo prebuild
which would have generated the ios
and android
directories.
If you intended to be using the Managed workflow and you have not made any changes under ios
and android
that you want to keep, then you can delete those two directories to switch back to the managed workflow. Then see if that fixes your build problems.
You should also run npx expo-doctor
to see if it picks up any issues.
I have already done what you suggested before, but I went through the process again just now and this is my error even tough I already specified a minimum ios version . I was also able to reslove this same error by defining a version before but once I installed Firebase/recaptcha I could’nt resolve this issue.
"version": "1.0.0",
"scripts": {
"start": "expo start --dev-client",
"android": "expo run:android",
"ios": "expo run:ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"@expo-google-fonts/lato": "^0.2.2",
"@expo-google-fonts/tenor-sans": "^0.2.2",
"@expo/config-plugins": "^6.0.0",
"@expo/prebuild-config": "~6.0.0",
"@expo/vector-icons": "^13.0.0",
"@ptomasroos/react-native-multi-slider": "^2.2.2",
"@react-native-async-storage/async-storage": "1.17.11",
"@react-native-firebase/app": "16.7.0",
"@react-native-firebase/auth": "^16.7.0",
"@react-native-picker/picker": "2.4.8",
"@react-navigation/bottom-tabs": "^6.3.1",
"@react-navigation/native": "^6.0.10",
"@react-navigation/native-stack": "^6.6.2",
"@react-navigation/stack": "^6.2.1",
"@types/react-redux": "^7.1.24",
"axios": "^1.2.2",
"expo": "~48.0.9",
"expo-app-loading": "~2.1.0",
"expo-build-properties": "~0.5.1",
"expo-firebase-recaptcha": "~2.3.1",
"expo-font": "~11.1.1",
"expo-splash-screen": "~0.18.1",
"expo-status-bar": "~1.4.0",
"expo-updates": "~0.16.3",
"firebase": "^9.16.0",
"lottie-react-native": "5.1.4",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-native": "0.71.6",
"react-native-auto-height-image": "^3.2.4",
"react-native-collapsible": "^1.6.0",
"react-native-dropdown-picker": "^5.4.2",
"react-native-dropdown-select-list": "^2.0.4",
"react-native-fast-image": "^8.5.11",
"react-native-flash-message": "^0.2.1",
"react-native-gesture-handler": "~2.9.0",
"react-native-keyboard-aware-scroll-view": "^0.9.5",
"react-native-modal": "^13.0.1",
"react-native-otp-textinput": "^1.0.0",
"react-native-phone-number-input": "^2.1.0",
"react-native-ratings": "^8.1.0",
"react-native-reanimated": "~2.14.4",
"react-native-reanimated-carousel": "^3.3.0",
"react-native-safe-area-context": "4.5.0",
"react-native-safe-area-view": "^1.1.1",
"react-native-screens": "~3.20.0",
"react-native-shadow-2": "^6.0.3",
"react-native-simple-accordion": "^1.17.0",
"react-native-smart-statusbar": "^1.0.24",
"react-native-status-bar-height": "^2.6.0",
"react-native-svg": "13.4.0",
"react-native-swipe-list-view": "^3.2.9",
"react-native-web": "~0.18.7",
"react-native-webview": "11.26.0",
"react-redux": "^8.0.2",
"redux": "^4.2.0",
"redux-thunk": "^2.4.1"
},
"devDependencies": {
"@babel/core": "^7.19.6",
"@types/react": "~18.0.0",
"@types/react-native": "~0.69.1",
"typescript": "^4.6.3"
},
"private": true
}```
What does the Run expo doctor
step show?
I meant the section from the build logs, but this is fine too
What do you get if you run:
npm why "@expo/config-plugins@5.0.4"
npm why "@expo/config-plugins@5.0.7"
Also, it looks like you have “googleServicesFile” in the wrong place in your app.json
.
Please post the entire output of the npm why ...
commands as text. You will need to post it as a code block. e.g. select all of it and then press the </>
button on the editor toolbar.
But so far in the screenshot and the dependencies you posted earlier I can see you have expo-app-loading
installed. That is no longer available in Expo SDK 48. You need to check the release notes for the different Expo SDK versions from the old version up to Expo SDK 48 and fix anything that’s been deprecated or marked as a breaking change.
e.g. the Expo SDK 45 release notes say this about expo-app-loading
:
expo-app-loading is deprecated — use expo-splash-screen directly instead:
SplashScreen.preventAutoHideAsync()
andSplashScreen.hideAsync()
. The implementation is only a thin wrapper around expo-splash-screen that you can copy into your project if you’d like to keep using it.
and the Expo SDK 47 release notes say this about the expo-firebase-*
libraries:
- expo-firebase-* libraries are deprecated. If you use
expo-firebase-analytics
orexpo-firebase-recaptcha
in your app, we suggest migrating to React Native Firebase. Refer to the “Migrating from Expo Firebase to React Native Firebase” guide for more information.
@expo/config-plugins@5.0.4
node_modules/expo-app-loading/node_modules/@expo/config-plugins
@expo/config-plugins@"~5.0.3" from @expo/config@7.0.3
node_modules/expo-app-loading/node_modules/@expo/config
@expo/config@"~7.0.2" from @expo/prebuild-config@5.0.7
node_modules/expo-app-loading/node_modules/@expo/prebuild-config
@expo/prebuild-config@"5.0.7" from expo-splash-screen@0.17.5
node_modules/expo-app-loading/node_modules/expo-splash-screen
expo-splash-screen@"~0.17.0" from expo-app-loading@2.1.1
node_modules/expo-app-loading
expo-app-loading@"~2.1.0" from the root project
@expo/config-plugins@"~5.0.3" from @expo/prebuild-config@5.0.7
node_modules/expo-app-loading/node_modules/@expo/prebuild-config
@expo/prebuild-config@"5.0.7" from expo-splash-screen@0.17.5
node_modules/expo-app-loading/node_modules/expo-splash-screen
expo-splash-screen@"~0.17.0" from expo-app-loading@2.1.1
expo-app-loading@"~2.1.0" from the root project
@expo/config-plugins@5.0.4
node_modules/expo-firebase-core/node_modules/@expo/config-plugins
@expo/config-plugins@"~5.0.3" from @expo/config@7.0.3
node_modules/expo-firebase-core/node_modules/@expo/config
@expo/config@"~7.0.2" from expo-constants@14.0.2
node_modules/expo-firebase-core/node_modules/expo-constants
expo-constants@"~14.0.0" from expo-firebase-core@6.0.0
node_modules/expo-firebase-core
expo-firebase-core@"~6.0.0" from expo-firebase-recaptcha@2.3.1
node_modules/expo-firebase-recaptcha
expo-firebase-recaptcha@"~2.3.1" from the root project
@expo/config-plugins@5.0.4
node_modules/@react-native-firebase/auth/node_modules/@expo/config-plugins
@expo/config-plugins@"^5.0.4" from @react-native-firebase/auth@16.7.0
node_modules/@react-native-firebase/auth
@react-native-firebase/auth@"^16.7.0" from the root project
@expo/config-plugins@5.0.4
node_modules/@react-native-firebase/app/node_modules/@expo/config-plugins
@expo/config-plugins@"^5.0.4" from @react-native-firebase/app@16.7.0
node_modules/@react-native-firebase/app
@react-native-firebase/app@"16.7.0" from the root project
PS C:\Users\berek\OneDrive\Documents\GitHub\application> npm why @expo/config-plugins
@expo/config-plugins@6.0.0
node_modules/@expo/config-plugins
@expo/config-plugins@"^6.0.0" from the root project
@expo/config-plugins@"~6.0.0" from expo-updates@0.16.4
node_modules/expo-updates
expo-updates@"~0.16.3" from the root project
@expo/config-plugins@"~6.0.0" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config-plugins@"~6.0.0" from @expo/config@8.0.2
node_modules/@expo/config
@expo/config@"8.0.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config@"~8.0.0" from expo-constants@14.2.1
node_modules/expo-constants
expo-constants@"~14.2.1" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
expo-constants@"~14.2.0" from expo-asset@8.9.1
node_modules/expo-asset
expo-asset@"~8.9.1" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config@"~8.0.0" from expo-updates@0.16.4
node_modules/expo-updates
expo-updates@"~0.16.3" from the root project
@expo/config@"~8.0.0" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config@"~8.0.0" from @expo/metro-config@0.7.1
node_modules/@expo/metro-config
@expo/metro-config@"~0.7.0" from expo-updates@0.16.4
node_modules/expo-updates
expo-updates@"~0.16.3" from the root project
@expo/metro-config@"~0.7.0" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/metro-config@"~0.7.0" from @expo/dev-server@0.2.3
node_modules/@expo/dev-server
@expo/dev-server@"0.2.3" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config@"~8.0.0" from @expo/prebuild-config@6.0.0
node_modules/@expo/prebuild-config
@expo/prebuild-config@"~6.0.0" from the root project
@expo/prebuild-config@"6.0.0" from expo-splash-screen@0.18.1
node_modules/expo-splash-screen
expo-splash-screen@"~0.18.1" from the root project
@expo/prebuild-config@"6.0.0" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config-plugins@"~6.0.0" from @expo/prebuild-config@6.0.0
node_modules/@expo/prebuild-config
@expo/prebuild-config@"~6.0.0" from the root project
@expo/prebuild-config@"6.0.0" from expo-splash-screen@0.18.1
node_modules/expo-splash-screen
expo-splash-screen@"~0.18.1" from the root project
@expo/prebuild-config@"6.0.0" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config-plugins@5.0.4
node_modules/expo-firebase-core/node_modules/@expo/config-plugins
@expo/config-plugins@"~5.0.3" from @expo/config@7.0.3
node_modules/expo-firebase-core/node_modules/@expo/config
@expo/config@"~7.0.2" from expo-constants@14.0.2
node_modules/expo-firebase-core/node_modules/expo-constants
expo-constants@"~14.0.0" from expo-firebase-core@6.0.0
node_modules/expo-firebase-core
expo-firebase-core@"~6.0.0" from expo-firebase-recaptcha@2.3.1
node_modules/expo-firebase-recaptcha
expo-firebase-recaptcha@"~2.3.1" from the root project
@expo/config-plugins@6.0.1
node_modules/expo/node_modules/@expo/config-plugins
@expo/config-plugins@"6.0.1" from expo@48.0.10
node_modules/expo
expo@"~48.0.10" from the root project
@expo/config-plugins@5.0.4
node_modules/expo-app-loading/node_modules/@expo/config-plugins
@expo/config-plugins@"~5.0.3" from @expo/config@7.0.3
node_modules/expo-app-loading/node_modules/@expo/config
@expo/config@"~7.0.2" from @expo/prebuild-config@5.0.7
node_modules/expo-app-loading/node_modules/@expo/prebuild-config
@expo/prebuild-config@"5.0.7" from expo-splash-screen@0.17.5
node_modules/expo-app-loading/node_modules/expo-splash-screen
expo-splash-screen@"~0.17.0" from expo-app-loading@2.1.1
node_modules/expo-app-loading
expo-app-loading@"~2.1.0" from the root project
@expo/config-plugins@"~5.0.3" from @expo/prebuild-config@5.0.7
node_modules/expo-app-loading/node_modules/@expo/prebuild-config
@expo/prebuild-config@"5.0.7" from expo-splash-screen@0.17.5
node_modules/expo-app-loading/node_modules/expo-splash-screen
expo-splash-screen@"~0.17.0" from expo-app-loading@2.1.1
node_modules/expo-app-loading
expo-app-loading@"~2.1.0" from the root project
@expo/config-plugins@5.0.4
node_modules/@react-native-firebase/app/node_modules/@expo/config-plugins
@expo/config-plugins@"^5.0.4" from @react-native-firebase/app@16.7.0
node_modules/@react-native-firebase/app
@react-native-firebase/app@"16.7.0" from the root project
@expo/config-plugins@5.0.4
node_modules/@react-native-firebase/auth/node_modules/@expo/config-plugins
@expo/config-plugins@"^5.0.4" from @react-native-firebase/auth@16.7.0
node_modules/@react-native-firebase/auth
@react-native-firebase/auth@"^16.7.0" from the root project
expo/prebuild-config@6.0.0
node_modules/@expo/prebuild-config
@expo/prebuild-config@"6.0.0" from @expo/cli@0.6.2
node_modules/@expo/cli
@expo/cli@"0.6.2" from expo@48.0.10
node_modules/expo
expo@"^48.0.10" from the root project
@expo/prebuild-config@"6.0.0" from expo-splash-screen@0.18.1
node_modules/expo-splash-screen
expo-splash-screen@"~0.18.1" from the root project
@expo/prebuild-config@4.0.4
node_modules/expo-app-loading/node_modules/@expo/prebuild-config
@expo/prebuild-config@"~4.0.0" from expo-splash-screen@0.15.1
node_modules/expo-app-loading/node_modules/expo-splash-screen
expo-splash-screen@"~0.15.0" from expo-app-loading@2.0.0
node_modules/expo-app-loading
expo-app-loading@"~2.0.0" from the root project
As per the Expo SDK release notes you will need to replace expo-app-loading
or copy the code for AppLoading
into your project.
As per the Expo SDK release notes you will need to remove this and use React Native Firebase directly.
I see there are later versions of these dependencies. Try upgrading them.
Thanks for your help,
Appreciate it
@wodin
How can I resolve this issue with firebase & podfiles?
In Podfile:
EXFirebaseCore (from `../node_modules/expo-firebase-core/ios`) was resolved to 6.0.0, which depends on
Firebase/Core (= 9.5.0) was resolved to 9.5.0, which depends on
Firebase/CoreOnly (= 9.5.0)
RNFBApp (from `../node_modules/@react-native-firebase/app`) was resolved to 16.7.0, which depends on
Firebase/CoreOnly (= 10.3.0)
I don’t think you should have anything like “expo-firebase-*”. Can you check for dependencies like that in package.json
?
Also, you’re on the Managed workflow, right? You don’t have an ios
directory in your app?
The only expo-firebase package I have is “expo-firebase-recaptcha”
How can I replace that?
And yes I am in managed workflow, I recently had to delete both ios/android directory and had them generated again & added firebase_sdk_version = '9.16.10' if defined? $FirebaseSDKVersion firebase_sdk_version = $FirebaseSDKVersion end
on the top of my podfile but the error doesnt seem to be resolved.
Did you read this?
If you follow the link there is a section called “Migrating from expo-firebase-recaptcha”
Then you are on the Bare workflow.
If you want to be on the managed workflow you need to delete ios
and android
and NOT regenerate them again. Leave them deleted.
Okay,
Appreciate your help.
This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.