Prerequisites
Install or update
Android Studio
to its latest version.
Make sure that your project meets these requirements:
- Targets API level 19 (KitKat)
or higher
- Uses Android 4.4 or higher
- Uses
Jetpack (AndroidX)
,
which includes meeting these version requirements:
com.android.tools.build:gradle
v7.3.0 or later
compileSdkVersion
28 or later
Set up a physical device or use an
emulator
to
run your app.
Note that
Firebase SDKs with a dependency on Google Play
services
require the device or
emulator to have Google Play services installed.
Sign into Firebase
using your Google
account.
If you don't already have an Android project and just want to try out a Firebase
product, you can download one of our
quickstart samples
.
You can connect your Android app to Firebase using one of the following
options:
- Option 1
:
(recommended)
Use the
Firebase console setup workflow.
- Option 2
: Use the Android Studio Firebase
Assistant (may require additional configuration).
Option 1
: Add Firebase using the Firebase console
Adding Firebase to your app involves tasks both in the
Firebase console
and
in your open Android project (for example, you download Firebase config files
from the console, then move them into your Android project).
Step 1
: Create a Firebase project
Before you can add Firebase to your Android app, you need to create a Firebase
project to connect to your Android app. Visit
Understand Firebase Projects
to learn more about
Firebase projects.
Create a Firebase project
-
In the
Firebase console
, click
Add project
.
-
To add Firebase resources to an
existing
Google Cloud project, enter its
project name or select it from the dropdown menu.
-
To create a new project, enter the desired project name. You can also optionally
edit the project ID displayed below the project name.
-
If prompted, review and accept the
Firebase terms
.
-
Click
Continue
.
-
(Optional)
Set up Google Analytics for your project, which enables you
to have an optimal experience using any of the following Firebase products:
Either select an existing
Google Analytics account
or to create a new account.
If you create a new account, select your
Analytics reporting location
, then accept
the data sharing settings and Google Analytics terms for your project.
-
Click
Create project
(or
Add Firebase
, if you're using an
existing Google Cloud project).
Firebase automatically provisions resources for your Firebase project. When
the process completes, you'll be taken to the overview page for your Firebase
project in the Firebase console.
Step 2
: Register your app with Firebase
To use Firebase in your Android app, you need to register your app with your
Firebase project. Registering your app is often called "adding" your app to your
project.
Go to the
Firebase console
.
In the center of the project overview page, click the
Android
icon
(
plat_android
)
or
Add app
to launch the setup workflow.
Enter your app's package name in the
Android package name
field.
What's a package name, and where do you find it?
A
package
name
uniquely identifies your app on the device and in the Google Play Store.
A
package name
is often referred to as an
application ID
.
Find your app's package name in your module (app-level) Gradle file,
usually
app/build.gradle
(example package name:
com.yourcompany.yourproject
).
Be aware that the package name value is case-sensitive, and it cannot be
changed for this Firebase Android app after it's registered with your
Firebase project.
(Optional)
Enter other app information:
App nickname
and
Debug signing certificate SHA-1
.
How are the
App nickname
and the
Debug signing certificate SHA-1
used within Firebase?
Click
Register app
.
Step 3
: Add a Firebase configuration file
Download and then add the Firebase Android configuration file
(
google-services.json
) to your app:
Click
Download google-services.json
to obtain your Firebase Android
config file.
Move your config file into the
module (app-level)
root directory of
your app.
What do you need to know about this config file?
The Firebase config file contains unique, but non-secret identifiers for
your project. To learn more about this config file, visit
Understand Firebase
Projects
.
You can download your
Firebase config
file
again at any time.
Make sure the config file name is not appended with additional characters,
like
(2)
.
To make the values in your
google-services.json
config file accessible
to Firebase SDKs, you need the
Google services Gradle plugin
(
google-services
).
In your
root-level (project-level)
Gradle file
(
<project>/build.gradle.kts
or
<project>/build.gradle
), add the
Google services plugin as a dependency:
Kotlin
plugins {
id("com.android.application") version "7.3.0" apply false
// ...
// Add the dependency for the Google services Gradle plugin
id("com.google.gms.google-services") version "4.4.1" apply false
}
Groovy
plugins {
id 'com.android.application' version '7.3.0' apply false
// ...
// Add the dependency for the Google services Gradle plugin
id 'com.google.gms.google-services' version '4.4.1' apply false
}
In your
module (app-level)
Gradle file
(usually
<project>/<app-module>/build.gradle.kts
or
<project>/<app-module>/build.gradle
),
add the Google services plugin:
Kotlin
plugins {
id("com.android.application")
// Add the Google services Gradle plugin
id("com.google.gms.google-services")
// ...
}
Groovy
plugins {
id 'com.android.application'
// Add the Google services Gradle plugin
id 'com.google.gms.google-services'
// ...
}
Step 4
: Add Firebase SDKs to your app
In your
module (app-level) Gradle file
(usually
<project>/<app-module>/build.gradle.kts
or
<project>/<app-module>/build.gradle
),
add the dependencies for the
Firebase products
that you want to use in your app. We recommend using the
Firebase Android BoM
to control
library versioning.
Analytics enabled
dependencies {
// ...
// Import the Firebase BoM
implementation(platform("com.google.firebase:firebase-bom:32.8.1"))
// When using the BoM, you don't specify versions in Firebase library dependencies
// Add the dependency for the Firebase SDK for Google Analytics
implementation("com.google.firebase:firebase-analytics")
// TODO: Add the dependencies for any other Firebase products you want to use
// See https://firebase.google.com/docs/android/setup#available-libraries
// For example, add the dependencies for Firebase Authentication and Cloud Firestore
implementation("com.google.firebase:firebase-auth")
implementation("com.google.firebase:firebase-firestore")
}
By using the
Firebase Android BoM
,
your app will always use compatible versions of Firebase Android
libraries.
Looking for a Kotlin-specific library module?
Starting in
October 2023
(Firebase BoM 32.5.0)
, both Kotlin and Java developers can
depend on the main library module (for details, see the
FAQ about this initiative
).
Analytics not enabled
dependencies {
// ...
// Import the Firebase BoM
implementation(platform("com.google.firebase:firebase-bom:32.8.1"))
// When using the BoM, you don't specify versions in Firebase library dependencies
// TODO: Add the dependencies for Firebase products you want to use
// See https://firebase.google.com/docs/android/setup#available-libraries
// For example, add the dependencies for Firebase Authentication and Cloud Firestore
implementation("com.google.firebase:firebase-auth")
implementation("com.google.firebase:firebase-firestore")
}
By using the
Firebase Android BoM
,
your app will always use compatible versions of Firebase Android
libraries.
Looking for a Kotlin-specific library module?
Starting in
October 2023
(Firebase BoM 32.5.0)
, both Kotlin and Java developers can
depend on the main library module (for details, see the
FAQ about this initiative
).
After adding the dependencies for the products you want to use, sync your
Android project with Gradle files.
Are you getting a build failure about invoke-custom support and enabling
desugaring? Here's how to fix it.
Gradle builds that use Android Gradle plugin (AGP) v4.2 or earlier need to
enable Java 8 support. Otherwise, these Android projects get a build
failure when adding a Firebase SDK.
To fix this build failure, you can follow one of two options:
- Add the listed
compileOptions
from the error message to your
app-level
build.gradle.kts
or
build.gradle
file.
- Increase the
minSdk
for your Android project to 26 or above.
Learn more about this build failure in
this FAQ
.
That's it! You can skip ahead to check out the recommended
next steps
.
If you're having trouble getting set up, though, visit the
Android troubleshooting & FAQ
.
Option 2
: Add Firebase using the Firebase Assistant
The
Firebase Assistant
registers
your app with a Firebase project and adds the necessary Firebase files, plugins,
and dependencies to your Android project ? all from within Android Studio!
Open your Android project in Android Studio, then make sure that you're
using the latest versions of Android Studio and the Firebase Assistant:
- Windows / Linux:
Help > Check for updates
- macOS:
Android Studio > Check for updates
Open the Firebase Assistant:
Tools > Firebase
.
In the
Assistant
pane, choose a Firebase product to add to your app.
Expand its section, then click the tutorial link
(for example,
Analytics > Log an Analytics event
).
Click
Connect to Firebase
to connect your Android project with Firebase.
What does this workflow do?
This workflow automatically creates a new Firebase Android app using
your app's
package name
.
You can create this new Firebase Android app in either an existing
Firebase project or a new project.
Here are some tips about setting up your Firebase project:
Check out our
best practices
for adding apps to a Firebase project, including how to handle
multiple variants.
If you create a new project, we strongly recommend that you set up
Google Analytics for your project, which enables you to have
an optimal experience using many Firebase products.
This workflow also adds your Firebase project's Android
configuration file (
google-services.json
) to the module
(app-level) directory of your app.
Click the button to add a desired Firebase product (for example,
Add Analytics to your app
).
Sync your app to ensure that all dependencies have the necessary versions.
In the
Assistant
pane, follow the remaining setup instructions for your
selected Firebase product.
Add as many other Firebase products as you'd like via the Firebase
Assistant!
That's it! Make sure to check out the recommended
next steps
.
If you're having trouble getting set up, though, visit the
Android troubleshooting & FAQ
.
Available libraries
This section lists the Firebase products supported for Android and their Gradle
dependencies. Learn more about these Firebase Android libraries:
Note that when using the
Firebase Android BoM
,
you don't specify individual library versions when you declare Firebase library
dependencies in your Gradle build configuration file.
Next steps
Add Firebase services to your app:
Learn about Firebase: