Skip to content

Commit 486bb50

Browse files
authored
Switch from individual Firebase Android SDK versions to Android BoM (#949)
* Remove play-services-base dependency from all except AdMob. * Update Gradle files to use Android BoM instead of individual versions. * Update readme for Android BoM. * Fix formatting * Add note about play-services-base * Add play-services-base back in for now, will fix in a future PR. * ADd back to admob too * Add play-services-base back to RC * Add play_services to separate dependency that can be included with or without app. * Add Play Services by default; if you don't want it, use appWithoutPlayServices. * Fix error, modify readme * Fix gradle dependencies file * Fix note * Update to latest BoM.
1 parent 20a0450 commit 486bb50

File tree

13 files changed

+113
-77
lines changed

13 files changed

+113
-77
lines changed

Android/firebase_dependencies.gradle

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,26 @@ import org.gradle.util.ConfigureUtil;
1616

1717
// A map of library to the dependencies that need to be added for it.
1818
def firebaseDependenciesMap = [
19-
'app' : ['com.google.firebase:firebase-analytics:21.0.0'],
19+
'app' : ['com.google.firebase:firebase-analytics'],
2020
'play_services' : ['com.google.android.gms:play-services-base:18.0.1'],
2121
'admob' : ['com.google.firebase:firebase-ads:19.8.0',
22-
'com.google.firebase:firebase-analytics:21.0.0'],
23-
'analytics' : ['com.google.firebase:firebase-analytics:21.0.0'],
24-
'auth' : ['com.google.firebase:firebase-auth:21.0.5'],
25-
'database' : ['com.google.firebase:firebase-database:20.0.5'],
26-
'dynamic_links' : ['com.google.firebase:firebase-dynamic-links:21.0.1'],
27-
'firestore' : ['com.google.firebase:firebase-firestore:24.1.2'],
28-
'functions' : ['com.google.firebase:firebase-functions:20.1.0'],
29-
'installations' : ['com.google.firebase:firebase-installations:17.0.1'],
30-
'invites' : ['com.google.firebase:firebase-invites:17.0.0'],
22+
'com.google.firebase:firebase-analytics'],
23+
'analytics' : ['com.google.firebase:firebase-analytics'],
24+
'auth' : ['com.google.firebase:firebase-auth'],
25+
'database' : ['com.google.firebase:firebase-database'],
26+
'dynamic_links' : ['com.google.firebase:firebase-dynamic-links'],
27+
'firestore' : ['com.google.firebase:firebase-firestore'],
28+
'functions' : ['com.google.firebase:firebase-functions'],
29+
'installations' : ['com.google.firebase:firebase-installations'],
30+
'invites' : ['com.google.firebase:firebase-invites'],
3131
// Messaging has an additional local dependency to include.
32-
'messaging' : ['com.google.firebase:firebase-messaging:23.0.5',
32+
'messaging' : ['com.google.firebase:firebase-messaging',
3333
'firebase_cpp_sdk.messaging:messaging_java',
3434
'androidx.core:core:1.6.0-alpha03',
3535
'com.google.flatbuffers:flatbuffers-java:1.12.0'],
36-
'performance' : ['com.google.firebase:firebase-perf:20.1.0'],
37-
'remote_config' : ['com.google.firebase:firebase-config:21.1.0'],
38-
'storage' : ['com.google.firebase:firebase-storage:20.0.1'],
36+
'performance' : ['com.google.firebase:firebase-perf'],
37+
'remote_config' : ['com.google.firebase:firebase-config'],
38+
'storage' : ['com.google.firebase:firebase-storage'],
3939
'testlab' : []
4040
]
4141

@@ -149,6 +149,10 @@ project.afterEvaluate {
149149
firebaseCpp.dependencies.libSet.add('play_services')
150150
}
151151

152+
// Add the bill-of-materials
153+
project.dependencies {
154+
implementation platform('com.google.firebase:firebase-bom:30.1.0')
155+
}
152156
for (String lib : firebaseCpp.dependencies.libSet) {
153157
// Generate and include the proguard file
154158
generateAndAddProguard(lib)
@@ -166,4 +170,5 @@ project.afterEvaluate {
166170
}
167171
}
168172
}
173+
169174
}

admob/admob_resources/build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,8 @@ android {
4545
}
4646

4747
dependencies {
48-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
48+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
49+
implementation 'com.google.firebase:firebase-analytics'
4950
implementation 'com.google.firebase:firebase-ads:19.8.0'
5051
}
5152

app/app_resources/build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ android {
5050
}
5151

5252
dependencies {
53-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
53+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
54+
implementation 'com.google.firebase:firebase-analytics'
5455
}
5556

5657
afterEvaluate {

app/google_api_resources/build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,8 @@ android {
5353
}
5454

5555
dependencies {
56-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
56+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
57+
implementation 'com.google.firebase:firebase-analytics'
5758
implementation 'com.google.android.gms:play-services-base:18.0.1'
5859
implementation project(':app:app_resources')
5960
}

app/integration_test/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ android {
7676

7777
apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle"
7878
firebaseCpp.dependencies {
79-
app
79+
appWithoutPlayServices
8080
}
8181

8282
apply plugin: 'com.google.gms.google-services'

app/invites_resources/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,9 @@ android {
4949
}
5050

5151
dependencies {
52-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
53-
implementation 'com.google.firebase:firebase-dynamic-links:21.0.1'
52+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
53+
implementation 'com.google.firebase:firebase-analytics'
54+
implementation 'com.google.firebase:firebase-dynamic-links'
5455
implementation project(':app:app_resources')
5556
}
5657

auth/auth_resources/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,9 @@ android {
4949
}
5050

5151
dependencies {
52-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
53-
implementation 'com.google.firebase:firebase-auth:21.0.5'
52+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
53+
implementation 'com.google.firebase:firebase-analytics'
54+
implementation 'com.google.firebase:firebase-auth'
5455
implementation project(':app:app_resources')
5556
}
5657

database/database_resources/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,9 @@ android {
4545
}
4646

4747
dependencies {
48-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
49-
implementation 'com.google.firebase:firebase-database:20.0.5'
48+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
49+
implementation 'com.google.firebase:firebase-analytics'
50+
implementation 'com.google.firebase:firebase-database'
5051
//implementation project(':app:app_resources')
5152
}
5253

firestore/firestore_resources/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,9 @@ android {
5353
}
5454

5555
dependencies {
56-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
57-
implementation 'com.google.firebase:firebase-firestore:24.1.2'
56+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
57+
implementation 'com.google.firebase:firebase-analytics'
58+
implementation 'com.google.firebase:firebase-firestore'
5859
}
5960

6061
afterEvaluate {

messaging/messaging_java/build.gradle

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,9 @@ android {
5555
}
5656

5757
dependencies {
58-
implementation 'com.google.firebase:firebase-analytics:21.0.0'
59-
implementation 'com.google.firebase:firebase-messaging:23.0.5'
58+
implementation platform('com.google.firebase:firebase-bom:30.0.0')
59+
implementation 'com.google.firebase:firebase-analytics'
60+
implementation 'com.google.firebase:firebase-messaging'
6061
implementation 'com.google.flatbuffers:flatbuffers-java:1.12.0'
6162
}
6263

0 commit comments

Comments
 (0)