Firebase
is a powerful tool that enables mobile engineering teams to launch an app with a fully featured backend, without managing servers or writing a single line of server-side code. It's an excellent companion for getting apps to market quickly, and allows for rapid product iteration. All that simplicity and time savings requires just a tiny bit of setup between your Xcode project and Firebase account. Let's walk through getting your backend connected, step-by-step:
The Firebase SDK can be integrated using any of the popular iOS package managers, however we recommend using the Swift Package Manager which is included with Xcode by default.
Navigate to your project's root node, in the Xcode directory pane.
Under "Package Dependancies" add the Firebase iOS SDK by specifying the repository URL (https://github.com/firebase/firebase-ios-sdk) and version rules (10.0.0, as of this writing).
Firebase and its dependancies may take a little bit to download, expect several packages to be installed alongside Firebase:
Library linking probably happened automagically, but lets double check.
In the Xcode project pane, select your build target and navigate to the "General" tab. Scroll down to the "Frameworks, Libraries, and Embedded Content" section. Ensure the "Firebase Auth" and "Firebase Firestore" libraries are added, along with any of the other Firebase libraries that you might need (You can always add more later, there are lots of useful tools at your disposal).
#
Step 3: Create a Firebase project in the Firebase Console
Next, we need to link a Firebase project to our app. Navigate to the
Firebase console
and add a project (Or use an existing one).
Follow the on-screen instructions, which will guide you through creating your Firebase project.
Once your Firebase project has been created, you will need to add your iOS app to the project. In the "Adding an app" section, select the "iOS+" option.
In the resulting walkthrough, you will then need to provide your app's bundle identifier. You can find this in your Xcode project, by navigating to the project target's "General" section.
Once your Firebase project has an iOS app associated with it, you will be given a file titled "GoogleService-Info.plist". Download and drag this file into Xcode. We recommend placing it into a "Resources" folder, or similar.
Ensure that the plist file is added to non-test targets (or all targets, if you know what you're doing).
Navigate to your applications AppDelegate (If you're using SwiftUI and don't have an AppDelegate quite yet, you'll need to create one now). Import
FirebaseCore
and add a static function call to
FirebaseApp.configure()
within the AppDelegate's
didFinishLaunchingWithOptions
function. This ensures that the Firebase SDK configures itself at application launch.
Done. Hopefully.
At this point, Firebase should be fully connected! Try to build and run your project. If issues occur, use the console and any build warnings/errors as clues. As always, your
search-engine-of-choice
is your friend when troubleshooting dependancy issues.