I am getting Error during connecting firebase with react native ios - firebase

At first i did npm install --save #react-native-firebase/app then cd ios and then pod install and get error like that..
[!] The following Swift pods cannot yet be integrated as static libraries:
The Swift pod FirebaseCoreInternal depends upon GoogleUtilities, which does not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies.
then i use my pod file use_modular_headers! globally...then pod install done ,but when i ran the project from xcode it gives me the Error..."glog.glog.log_severity' appears within namespace 'google" please help i dont know xcode and can't solve the issue ...please help ...thanks advance

I just initialized a bare react native project yesterday and ran into this exact same problem when setting up Firebase. I can't remember the exact sequence of steps I took to fix it, but my current Podfile doesn't include use_modular_headers!. Instead, I used "use_frameworks!" globally in my Podfile, and commented out the use_flipper!() at the bottom as recommended in the comments. If you get the same initial error about static libraries, try switching the environment you're running from. I.E. if you've been trying from terminal by "npx react-native run..." use Xcode to compile the build, and vice versa. Hopefully that works, it did for me!

Related

CocoaPods could not find compatible versions for pod "GTMSessionFetcher/Core"

I am making a React-Native mobile application and want to incorporate Firebase and Firebase Authentication. However, I am facing this error when I run 'pod install' or 'pod update':
I did some research and found out that this issue has not yet been resolved by Google (https://issuetracker.google.com/issues/254418199), but I came across a workaround (https://github.com/firebase/firebase-ios-sdk/issues/10359) which said to add a version specifier to the Podfile: pod 'FirebaseAuth', '>= 9.6.0'. However, even after I added the line into the Podfile in my iOS folder, the same error still persists. May I know if I'm doing something wrongly?
I stumbled upon the same issue. It seems it's a compatibility issue with the latest Firesbase SDK version (10).
For now something that worked for me is to place this at the top of the Podfile:
$FirebaseSDKVersion = '9.6.0' (Docs)
This overrides the default firebase sdk and assures it uses the downgraded version.
Now just execute pod install and give a try. If it doesn't work try removing the Podfile.lock and the Pods folder and try again.
BTW I didn't need this line in the Podfile as one of the resources you shared mentioned:
pod 'FirebaseAuth', '>= 9.6.0'
What helped me is to add this into my pod file.
pod 'GTMSessionFetcher', :modular_headers => true
and then run
arch -x86_64 pod update GTMSessionFetcher/Core
Unfortunately, while Alex's answer did help with my original error, I was unable to solve the 2nd error in my comment above. What I did instead was to restart the creation of the app. This time, however, rather than connecting the app to Dialogflow first, I linked the app to Firebase Auth first, and then adding Dialogflow. This worked for me and I managed to build the app with no issues. Hope this helps someone.
try to delete Podfile.lock and run cd ios && pod install --repo-update

"You attempted to use a firebase module that's not installed on your Android project by calling firebase.app()."

I followed https://rnfirebase.io/#managed-workflow guide on how to install Firebase. I created a new Expo app with:
npx create-react-native-app -t with-dev-client
As written in the guide. I then did
npx expo install #react-native-firebase/app
npx expo install #react-native-firebase/auth
Having nothing in the project except a Button which, when pressed creates an account with createUserWithEmailAndPassword.
This is when I am presented with this error:
Error: You attempted to use a firebase module that's not installed on your Android project by calling firebase.app().
Ensure you have:
imported the 'io.invertase.firebase.app.ReactNativeFirebaseAppPackage' module in your 'MainApplication.java' file.
Added the 'new ReactNativeFirebaseAppPackage()' line inside of the RN 'getPackages()' method list.
See http://invertase.link/android for full setup instructions.
Did I mess up on the way, or is there more steps than the guide suggests, or is the way I created the app the cause?
This was tested on an Android Emulator, launched by pressing 'a' in the terminal.
I appreciate any help!
Additional info:
I added the Google services as shown in the guide, with the name corresponding to the package name given in app.json.
Running expo prebuild --clean:
It says "(node:14360) [DEP0148] DeprecationWarning: Use of deprecated folder mapping "./" in the "exports" field module resolution of the package" which I don't know if it could create an issue such as this.
You need to install #react-native-firebase/app module and initialize, then only you can use any of the #react-native-firebase/xxx modules. check the official documentation for authorization module here.

CocoaPods could not find compatible versions for pod "RNFBApp"

I am trying to install firebase analytics in my react native application. For that I am following the link for documentation
https://enappd.com/blog/firebase-analytics-in-react-native-app/101/
My iOS deployment target is 9.0 in the xcode and also 9.0 in the Pods file. But when I tried to install the two plugins
yarn add #react-native-firebase/analytics
yarn add #react-native-firebase/app
I tried to do
cd ios && pod install
I got the error:
[!] CocoaPods could not find compatible versions for pod "RNFBApp":
In Podfile:
RNFBApp (from `../node_modules/#react-native-firebase/app`)
Specs satisfying the `RNFBApp (from `../node_modules/#react-native-firebase/app`)` dependency were found, but they required a higher minimum deployment target.
Then I googled this error none of them are working solution for me. I tried
rm Podfile.lock
pod install --repo-update
Still the same issue
Then I updated the deployment target to 10.0. Then it was installed successfully. But now I am not able to build the application for iOS because it is giving error
Typedef redefinition with different types ('uint8_t' (aka 'unsigned char') vs 'enum clockid_t')
This was happening in the Flipper library of the react native. Then I reverted back my code and now my deployment target is again 9.0 and I am stuck.
Please anyone can guide me to solve this issue.

Error: Could not build Objective-C module 'Firebase'

When I compile the application I get an error equal to this:
Could not build Objective-C module 'Firebase'
This error appear in import Firebase of my file swift.
There is only one way to solve this issue.
Quit Xcode.
Delete project's temp files located at ~/Library/Developer/Xcode/DerivedData
Delete ProjectName.xcworkspace
Delete Podfile.lock file and Pods folder
Run pod install.
Open the newly created ProjectName.xcworkspace file and build.
Build (⌘ + B) worked for me.
I am using Swift 4 and Xcode 9. All I have to do is selecting FirebaseCore Scheme.
On Xcode:
Product->Scheme->FirebaseCore.
If you don't have FirebaseCore go to Manage Schemes and select it. Then try again.
This may fix your problem:
Quit the Xcode. (Don't just close the Xcode window, right click and Quit it explicitly).
Go to ~/Library/Developer/Xcode/DerivedData and delete the project folder. (Simply delete all the folders).
Clean and Build the project.
If still error exist:
Do steps 1 and 2 and follow this steps:
Change scheme to Firebase and Build (Command + B).
Change back to your app scheme and Run again.
I opened the project with .xcodeproj and I installed Firebase with cocoapods. I got the same error. But I just close the project and open it with .xcworkspace.
The alert has gone. Firebase was the first library on my project. So I kept using .xcodeproj file.
Install FireBase properly via CocoaPods. Try the following steps
Step 1 - Close Xcode
Step 2 - Clear your derived data. You can find your derived data in here
~/Library/Developer/Xcode/DerivedData
Step 3 - Open your .xcworkspace
Step 4 - Clean your project (⌘+Shift+K)
Step 5 - Build your project (⌘+B)
Make sure your are opened .xcworkspace file
'pod deintegrate' and then 'pod install' worked for me.
I recently had this problem when using Xcode 12. I found that removing the Valid Architectures build setting (VALID_ARCHS) fixed it.
From the Xcode 12 release notes:
The Build Settings editor no longer includes the Valid Architectures build setting (VALID_ARCHS), and its use is discouraged. Instead, there is a new Excluded Architectures build setting (EXCLUDED_ARCHS). If a project includes VALID_ARCHS, the setting is displayed in the User-Defined section of the Build Settings editor. (15145028)
I am using Swift 4 and Xcode 9.4. This helped solve the same issue for me.
I selected the following frameworks in XCode -> Manage Schemes besides my target project
In Xcode:
Product-> Scheme-> FirebaseCore
Product -> Scheme -> nanopb
Product -> Scheme -> GoogleToolBoxforMac
Tried the above suggestions, but they didn't work for me. What worked for me was to build to Generic iOS Device first and then run it on my physical device iPhone6.
I still couldn't run it on a simulator, however. What worked here was to change Build Active Architecture Only - Debug to NO, in the Pod Project Build Settings.
Hope this helps someone.
This worked for me:
Close Xcode
pod deintegrate
delete xcworkspace
pod install
In project Navigator > project name > Configurations
Set all to none
Clean
Build
I had disabled Find Implicit Dependencies for faster build process under Edit Scheme... > Build.
Enabling it back resolved the issue.
It happened to me because I installed the Firebase CocoaPods but I didn't reopen it through the <projectName>.xcworkspace file.
So what I did to work was:
I quit Xcode
opened it by clicking the <projectName>.xcworkspace file of the project
then I could use "import Firebase" on my project.
For me the issue was simple. I have a new m1 mac and it has trouble loading cocoa pods sometimes. Simply:
Click your pods project(blue pods)->
Click all & build settings ->
Excluded architectures ->
add "arm64" to both debug and release ->
set any SDK on left side ->
do this on your main project folder too ->
build it your good to go
Can you please try to take a look at my answer here
TL;DR make sure you are running cocoapods version 1.4.0 minimum. It fixes static framework imports.
You can do this by running sudo gem install cocoapods on your terminal and verify your version by typing pod --version
I tried this (quitting Xcode, deleting all temp files, reinstalling pods, etc.) and it didn't work. What did work was just building my project (command + b) after pod install. Whatever works!
Make sure you are working with the workspace file created in the same directory as the pod file.
It worked for me, when I opened the white workspace instead of the blue one. You press on the file on your desktop and then press the white file.
Image of what the file looks like:
I had a same issue with a Flutter project.
You should exclude arm64 for simulator architecture both from project and every pod target
Exclude arm64 from the project
Add this code to Pofile
post_install do |installer|
installer.pods_project.targets.each do |target|
# exclude arm64 for simulator architecture the pod target
target.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
end
This happened to me today, I just couldn't figure out why, because when I closed the file that night, everything was perfect. I opened my file using the recent projects menu and got this issue. Then I decided to check something, Xcode opened the wrong file. Instead of opening the workspace file with the pods, it opened the Xcode project.
Once I opened the workspace it was error free and all the pods were behaving. Im sure you guys are all more experienced than me, but I just wanted to throw that in there.
just restart your xcode and run your project.
Nothing here worked for me, but then I figured out something that did work.
When I clicked on my project in Project Navigator in Xcode, and then selected Info I looked at the Configurations section and saw that there was only a Release configuration and no Debug configuration for my app.
In order to get Firebase to work, I went to Pods within the Project Navigator, and under the Configurations section I deleted the Debug configuration. Now it builds fine. Hopefully this will help someone else.
After 2 days of searching and trying every single step proposed in this post, eventually i could solve the problem. None of the above approaches solved my problem but this one:
There is a package of Firebase frameworks available to download from this link:
https://firebase.google.com/download/ios?authuser=0
There is a Firebase.h header file in this package. I added this header file to my project resources.
Finally i added a line of code at the top of this file:
' #import "Firebase.h" '
Simply and Easily the error is gone!
For and Solution was as simple as I didn't open the project from the .xcworkspace after I did pod install :D and I got the same error you got.
I mistakenly opened it from the old .xcodeproj file.
that was it for me, LOL
None of above solutions worked for me. I found that the problem was I have three targets in Cocoapods file. And only my main one target has Firebase added. So that when I want to import Firebase to a file that is used in other targets, Xcode gives error and says Module 'Firebase' not found. This is my pods project file. One solution for me is adding Firebase pod to all targets. Or another solution is removing the file from other targets.
def common_pods
pod 'XXX'
end
target 'myMainProject' do
common_pods()
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Crashlytics'
pod 'Firebase/Analytics'
end
target 'myExtention1' do
common_pods()
end
target 'myextension2' do
common_pods()
end
Just go to Pod target and set arm64 in Excluded Architectures
This solution worked for me.
Delete project's temp files located at
~/Library/Developer/Xcode/DerivedData
Delete ProjectName.xcworkspace
Delete Podfile.lock file and Pods folder Run pod install.
Open the newly created ProjectName.xcworkspace file and build.
When you build, make sure you are at the root directory in the project navigator.
This worked for me:
rm -rf project.xcworkspace
rm -rf ~/Library/Developer/Xcode/DerivedData
rm -rf Podfile.lock
pod install
/!\ Open project.xcworkspace instead of your old file
I had the exact same issue
You could be reinstalling pods with your Xcode open
Or your pods file won't allow and overwrite
With your workspace open, delete the "Pods" folder.
Quit X-Code
Open terminal in "Utilities"
You'll find this in "Applications"
Using cd ... go to your project folder
reinstall pods using "pod install".
That should fix it.

RealmSwift and Swift 2.1 (module file was created by older version of compiler)

I searched and got answers on using CocoaPods but really i couldn't manage to use it because i didn't what they mean
1- Install CocoaPods 0.39.0 or later. -> i did install it using sudo command
"I stopped here, didn't know what to do"
2- In your Podfile, add use_frameworks! and pod 'RealmSwift' to your main and test targets.
3- From the command line, run pod install.
4- Use the .xcworkspace file generated by CocoaPods to work on your project!
sorry my question looks bad but it is my first time to ask a question here :)
Your list of steps is correct, and assuming CocoaPods installed correctly, you will then need to navigate to the directory of your .xcodeproj file.
In that directory, you can run the command pod init which will create a .podfile in the directory.
You can then continue onto steps 2-4.
However, as of writing this response, Realm's current release doesn't support Swift 2.1. We are actively working on an update for 2.1, which you can follow on this Github Issue.

Resources