FlutterFire Overview
Notice
This page is archived and might not reflect the latest version of the FlutterFire plugins. You can find the latest information on firebase.google.com:
Welcome to FlutterFire! 🔥
FlutterFire is a set of Flutter plugins which connect your Flutter application to Firebase.
#
Get to know Firebase for FlutterIf you're new to using Firebase in Flutter we recommend starting with the Get to know Firebase for Flutter codelab and video:
#
PrerequisitesBefore getting started, the documentation assumes you are able to create (or have an existing) Flutter project and also have an active Firebase account.
#
Installationcaution
Are you migrating your existing project to these new plugins? Please start with the migration guide.
Before any Firebase services can be used, you must first install the firebase_core
plugin, which is responsible for connecting your application to Firebase.
Install the plugin by running the following command from the project root:
#
Initializing FlutterFire⚡ ️FlutterFire now supports initialization directly from Dart! ⚡️
Before any of the Firebase services can be used, FlutterFire needs to be initialized (you can think of this process as FlutterFire "bootstrapping" itself). The initialization step is asynchronous, meaning you'll need to prevent any FlutterFire related usage until the initialization is completed.
#
Using the FlutterFire CLIinfo
The FlutterFire CLI depends on the Firebase CLI. If you haven't installed it yet, you can learn more about Firebase CLI in the documentation.
To initialize FlutterFire, call the initializeApp
method on the Firebase
class.
The method accepts your Firebase project application configuration, which can be obtained for all supported platforms by using the FlutterFire CLI:
Once configured, a firebase_options.dart
file will be generated for you containing all the options
required for initialization. Additionally, if your Flutter app supports Android then the Android Google Services Gradle plugin will automatically be applied for you.
Learn more about the FlutterFire CLI in the documentation.
note
If you add support for a new platform in your Flutter app (e.g. adding Android when your app previously did not support Android), or if you introduce new Firebase services into your app (e.g. adding firebase_database
) then you should reconfigure Firebase for your application again via the CLI (flutterfire configure
).
#
InitializationNext the generated options need to be provided to the initializeApp
method.
Since this is an asynchronous operation, the main
function can be modified to ensure initialization is complete before
running the application.
First import the firebase_core
plugin and generated firebase_options.dart
file:
Next, within the main
function, ensure WidgetsFlutterBinding
is initialized and then initialize Firebase:
The DefaultFirebaseOptions.currentPlatform
is imported from our generated firebase_options.dart
file.
Once initialized, you're ready to start using FlutterFire!
#
Manual InstallationWith Dart-only initialization now supported, manually configuring and installing platforms is no longer required. If you wish to view the documentation for manual initialization, view the Manual Installation documentation.
#
Next StepsOn its own, the firebase_core
plugin provides basic functionality for usage with Firebase. FlutterFire is broken down
into individual, installable plugins that allow you to integrate with a specific Firebase service.
See the documentation for each plugin to learn more about them.