Reputation: 301
I followed all instructions for integrating the new firebase
release on ios
:
I downloaded the file GoogleService-Info.plist
and include it in the project.
I installed the framework with cocoapods
The problem is with this line:
@import Firebase;
Xcode prints this error:
"Module Firebase not found"
What is the solution?
My code :
#import "AppDelegate.h"
@import Firebase
@interface AppDelegate ()
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[FIRApp configure];
// Override point for customization after application launch.
return YES;
}
Upvotes: 20
Views: 39152
Reputation: 4314
First check if you have $(inherited)
flag in Target > Build Settings > Framework Search Paths
If you still have error, go throw these steps :
~/Users/YourUserName/Library(hidden one)/Developer/Xcode/DerivedData
ProjectName.xcworkspace
Podfile
and delete Podfile.lock
file and Pods folderpod init
Podfile
with the new one.pod install
Now open the newly created ProjectName.xcworkspace
file and build.
If you have problem in finding DerivedData
location check this answer :
https://stackoverflow.com/a/39495772/1572408
Upvotes: 0
Reputation: 131
Got the same issue on the import. My target's build settings overrode the 'Header search path' without the '$(inherited)' flag
'pod update' warns you about that.
It solved the issue for me
Hope it helps
Upvotes: 13
Reputation: 188
I had the same problem. 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
Upvotes: 2
Reputation: 97
I tried the above but sadly, nothing worked. Clean the build folder, clearing Xcode cache helped me. Try this:
- 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.
Pay extensive attention to the 6th step. Open this newly created xcworkspace, not xcodeproj.
Original answer: https://stackoverflow.com/a/44486792/913601
Upvotes: 4
Reputation: 4409
Its work for me in this way.
using FirebaseCore/FirebaseCore.h
Try the below code.
#import "AppDelegate.h"
#import <FirebaseCore/FirebaseCore.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
[FIRApp configure];
return YES;
}
Upvotes: 7
Reputation: 1305
This is lame but i fixed integration problems by adding the sources to my project instead using pods. I had to manually fix few files too.
Upvotes: -2
Reputation: 1155
I ended up fixing it by using
#import <Firebase/Firebase.h>
instead of
@import Firebase
Upvotes: 23
Reputation: 36447
I had similar issue stating that FirebaseMessaging module not found in header even though I had correct Podfile configuration.
Solution is to remove Cocoapods from project and add it again.
You can remove CocoaPods from project using this link.
Thereafter, you can add CocoaPods again using this link.
Below is snapshot for Podfile that I have used.
Below snapshot shows log on dependencies that are installed using Pods.
Upvotes: 0
Reputation: 19970
There are two ways of adding the Firebase SDK to your iOS project. You can either use CocoaPods, in which case its really important to make sure your pod dependency is in the target you are using. E.g.
use_frameworks!
platform :ios, '7.0'
pod 'Firebase/Analytics'
target 'Target1' do
end
target 'Target2' do
end
There are a lot of different ways of configuring targets in CocoaPods, so your Podfile may look different. The important thing is that the target you specify is linked with the pod - in this case I have specified the Analytics pod so its available to all targets, but if I put it just in the Target1 do...end
block, then it wouldn't be available in Target2.
If you're using the framework integration method, then make sure the libraries are specified in the Link Binary With Libraries section of your Build Phases tab. This should happen automatically if you drag them into a Frameworks group in Xcode.
Finally, if that doesn't work, Xcode may have cached something bad. Try opening the Product menu, hold down Option and click Clean build folder.
Upvotes: 0
Reputation: 23
update your pods. open terminal go to your project directory and type the following command
pod update
Upvotes: -4
Reputation: 31
I have same issue and found solution in here: iOS - Firebase error: Use of unresolved identifier FIRApp running supplied code
Doing the following steps on the terminal command line:
2nd and 3rd steps were the key I think, otherwise CocoaPods didn't try to update it. As I said maybe this could've been solved by doing pod update but now I can't go back and try again.
Upvotes: 1