Skip to content

Commit e5c790f

Browse files
jonsimantova-maurice
authored andcommitted
Update dependencies to Firebase Android SDK M47.
Breaking changes: - Changed firebase_core to firebase_analytics. - Renamed all Firebase Auth Android functions related to listing Providers to listing SignInMethods. This is a straightforward rename, but since we haven't gone through C++/Unity API review we are only changing the Java implementation at this point. - Finished removing Firebase Invites client SDK from C++. Removed testapp as well. - minSdkVersion changed from 14 to 16 in all testapps. All C++ testapps have been built on Blaze and run on device, to confirm no other JNI incompatibilities. b/131775539 has the only outlier. PiperOrigin-RevId: 246236058
1 parent ae09bf0 commit e5c790f

File tree

9 files changed

+60
-59
lines changed

9 files changed

+60
-59
lines changed

Android/firebase_dependencies.gradle

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,20 +16,20 @@
1616
def firebaseDependenciesMap = [
1717
'app' : ['com.google.firebase:firebase-core:16.0.8'],
1818
'admob' : ['com.google.firebase:firebase-ads:17.2.0',
19-
'com.google.android.gms:play-services-measurement-sdk-api:16.4.0'],
20-
'analytics' : ['com.google.firebase:firebase-analytics:16.4.0'],
21-
'auth' : ['com.google.firebase:firebase-auth:16.2.1'],
22-
'database' : ['com.google.firebase:firebase-database:16.1.0'],
23-
'dynamic_links' : ['com.google.firebase:firebase-invites:16.1.1'],
24-
'functions' : ['com.google.firebase:firebase-functions:16.3.0'],
25-
'instance_id' : ['com.google.firebase:firebase-iid:17.1.2'],
26-
'invites' : ['com.google.firebase:firebase-invites:16.1.1'],
19+
'com.google.android.gms:play-services-measurement-sdk-api:16.5.0'],
20+
'analytics' : ['com.google.firebase:firebase-analytics:16.5.0'],
21+
'auth' : ['com.google.firebase:firebase-auth:17.0.0'],
22+
'database' : ['com.google.firebase:firebase-database:17.0.0'],
23+
'dynamic_links' : ['com.google.firebase:firebase-invites:17.0.0'],
24+
'functions' : ['com.google.firebase:firebase-functions:17.0.0'],
25+
'instance_id' : ['com.google.firebase:firebase-iid:18.0.0'],
26+
'invites' : ['com.google.firebase:firebase-invites:17.0.0'],
2727
// Messaging has an additional local dependency to include.
28-
'messaging' : ['com.google.firebase:firebase-messaging:17.6.0',
28+
'messaging' : ['com.google.firebase:firebase-messaging:18.0.0',
2929
'firebase_cpp_sdk.messaging:messaging_java'],
30-
'performance' : ['com.google.firebase:firebase-perf:16.2.5'],
31-
'remote_config' : ['com.google.firebase:firebase-config:16.5.0'],
32-
'storage' : ['com.google.firebase:firebase-storage:16.1.0']
30+
'performance' : ['com.google.firebase:firebase-perf:17.0.0'],
31+
'remote_config' : ['com.google.firebase:firebase-config:17.0.0'],
32+
'storage' : ['com.google.firebase:firebase-storage:17.0.0']
3333
]
3434

3535
// A map of library to the gradle resources that they depend upon.

app/invites_resources/build.gradle

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

4747
dependencies {
48-
implementation 'com.google.firebase:firebase-core:16.0.8'
49-
implementation 'com.google.firebase:firebase-invites:16.1.1'
48+
implementation 'com.google.firebase:firebase-analytics:16.5.0'
49+
implementation 'com.google.firebase:firebase-invites:17.0.0'
5050
implementation project(':app:app_resources')
5151
}
5252

auth/auth_resources/build.gradle

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

4747
dependencies {
48-
implementation 'com.google.firebase:firebase-core:16.0.8'
49-
implementation 'com.google.firebase:firebase-auth:16.2.1'
48+
implementation 'com.google.firebase:firebase-analytics:16.5.0'
49+
implementation 'com.google.firebase:firebase-auth:17.0.0'
5050
implementation project(':app:app_resources')
5151
}
5252

auth/src/android/auth_android.cc

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ using util::JniStringToString;
4646
X(RemoveIdTokenListener, "removeIdTokenListener", \
4747
"(Lcom/google/firebase/auth/FirebaseAuth$IdTokenListener;)V"), \
4848
X(SignOut, "signOut", "()V"), \
49-
X(FetchProvidersForEmail, "fetchProvidersForEmail", \
49+
X(FetchSignInMethodsForEmail, "fetchSignInMethodsForEmail", \
5050
"(Ljava/lang/String;)" \
5151
"Lcom/google/android/gms/tasks/Task;"), \
5252
X(SignInWithCustomToken, "signInWithCustomToken", \
@@ -75,14 +75,14 @@ METHOD_LOOKUP_DEFINITION(auth,
7575
AUTH_METHODS)
7676

7777
// clang-format off
78-
#define PROVIDER_QUERY_RESULT_METHODS(X) \
79-
X(GetProviders, "getProviders", "()Ljava/util/List;")
78+
#define SIGNIN_METHOD_QUERY_RESULT_METHODS(X) \
79+
X(GetSignInMethods, "getSignInMethods", "()Ljava/util/List;")
8080
// clang-format on
81-
METHOD_LOOKUP_DECLARATION(providerqueryresult, PROVIDER_QUERY_RESULT_METHODS)
82-
METHOD_LOOKUP_DEFINITION(providerqueryresult,
81+
METHOD_LOOKUP_DECLARATION(signinmethodquery, SIGNIN_METHOD_QUERY_RESULT_METHODS)
82+
METHOD_LOOKUP_DEFINITION(signinmethodquery,
8383
PROGUARD_KEEP_CLASS
84-
"com/google/firebase/auth/ProviderQueryResult",
85-
PROVIDER_QUERY_RESULT_METHODS)
84+
"com/google/firebase/auth/SignInMethodQueryResult",
85+
SIGNIN_METHOD_QUERY_RESULT_METHODS)
8686

8787
// clang-format off
8888
#define JNI_LISTENER_CALLBACK_METHODS(X) \
@@ -125,7 +125,7 @@ static const JNINativeMethod kNativeOnIdTokenChangedMethod = {
125125
bool CacheAuthMethodIds(JNIEnv* env, jobject activity,
126126
const std::vector<util::EmbeddedFile>& embedded_files) {
127127
if (!(auth::CacheMethodIds(env, activity) &&
128-
providerqueryresult::CacheMethodIds(env, activity))) {
128+
signinmethodquery::CacheMethodIds(env, activity))) {
129129
return false;
130130
}
131131

@@ -147,7 +147,7 @@ bool CacheAuthMethodIds(JNIEnv* env, jobject activity,
147147

148148
void ReleaseAuthClasses(JNIEnv* env) {
149149
auth::ReleaseClass(env);
150-
providerqueryresult::ReleaseClass(env);
150+
signinmethodquery::ReleaseClass(env);
151151
jnilistener::ReleaseClass(env);
152152
jni_id_token_listener::ReleaseClass(env);
153153
}
@@ -315,11 +315,12 @@ static void ReadProviderResult(
315315
// `result` comes from the successfully completed Task in Java. If the Task
316316
// completed successfully, `result` should be valid.
317317
FIREBASE_ASSERT(!success || result != nullptr);
318-
// `result` is of type ProviderQueryResult when `success` is true.
319-
jobject list = success ? env->CallObjectMethod(
320-
result, providerqueryresult::GetMethodId(
321-
providerqueryresult::kGetProviders))
322-
: nullptr;
318+
// `result` is of type SignInMethodQueryResult when `success` is true.
319+
jobject list = success
320+
? env->CallObjectMethod(
321+
result, signinmethodquery::GetMethodId(
322+
signinmethodquery::kGetSignInMethods))
323+
: nullptr;
323324
if (firebase::util::CheckAndClearJniExceptions(env)) list = nullptr;
324325

325326
// `list` is of type List<String>. Loop through it.
@@ -347,8 +348,8 @@ Future<Auth::FetchProvidersResult> Auth::FetchProvidersForEmail(
347348

348349
jstring j_email = env->NewStringUTF(email);
349350
jobject pending_result = env->CallObjectMethod(
350-
AuthImpl(auth_data_), auth::GetMethodId(auth::kFetchProvidersForEmail),
351-
j_email);
351+
AuthImpl(auth_data_),
352+
auth::GetMethodId(auth::kFetchSignInMethodsForEmail), j_email);
352353
env->DeleteLocalRef(j_email);
353354

354355
if (!CheckAndCompleteFutureOnError(env, &futures, handle)) {

auth/src/android/credential_android.cc

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
*/
1616

1717
#include <jni.h>
18+
1819
#include <algorithm>
1920
#include <cstring>
2021

@@ -31,7 +32,7 @@ using util::JniStringToString;
3132

3233
// clang-format off
3334
#define CREDENTIAL_METHODS(X) \
34-
X(GetProvider, "getProvider", "()Ljava/lang/String;")
35+
X(GetSignInMethod, "getSignInMethod", "()Ljava/lang/String;")
3536
// clang-format on
3637
METHOD_LOOKUP_DECLARATION(credential, CREDENTIAL_METHODS)
3738
METHOD_LOOKUP_DEFINITION(credential,
@@ -289,9 +290,9 @@ Credential& Credential::operator=(const Credential& rhs) {
289290
std::string Credential::provider() const {
290291
JNIEnv* env = GetJniEnv();
291292
if (!impl_) return std::string();
292-
jobject j_provider =
293-
env->CallObjectMethod(CredentialFromImpl(impl_),
294-
credential::GetMethodId(credential::kGetProvider));
293+
jobject j_provider = env->CallObjectMethod(
294+
CredentialFromImpl(impl_),
295+
credential::GetMethodId(credential::kGetSignInMethod));
295296
return JniStringToString(env, j_provider);
296297
}
297298

@@ -471,8 +472,8 @@ Future<Credential> GameCenterAuthProvider::GetCredential() {
471472
bool is_gamecenter_available_on_android = false;
472473

473474
auto future_api = GetCredentialFutureImpl();
474-
const auto handle = future_api->SafeAlloc<Credential>(
475-
kCredentialFn_GameCenterGetCredential);
475+
const auto handle =
476+
future_api->SafeAlloc<Credential>(kCredentialFn_GameCenterGetCredential);
476477

477478
future_api->Complete(handle, kAuthErrorInvalidCredential,
478479
"GameCenter is not supported on Android.");
@@ -538,8 +539,9 @@ PhoneAuthProvider::ForceResendingToken::ForceResendingToken(
538539
data_->SetRef(rhs.data_->token_global_ref());
539540
}
540541

541-
PhoneAuthProvider::ForceResendingToken& PhoneAuthProvider::ForceResendingToken::
542-
operator=(const ForceResendingToken& rhs) {
542+
PhoneAuthProvider::ForceResendingToken&
543+
PhoneAuthProvider::ForceResendingToken::operator=(
544+
const ForceResendingToken& rhs) {
543545
data_->SetRef(rhs.data_->token_global_ref());
544546
return *this;
545547
}

database/database_resources/build.gradle

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

4747
dependencies {
48-
implementation 'com.google.firebase:firebase-core:16.0.8'
49-
implementation 'com.google.firebase:firebase-database:16.1.0'
48+
implementation 'com.google.firebase:firebase-analytics:16.5.0'
49+
implementation 'com.google.firebase:firebase-database:17.0.0'
5050
//implementation project(':app:app_resources')
5151
}
5252

messaging/messaging_java/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ android {
5151
}
5252

5353
dependencies {
54-
implementation 'com.google.firebase:firebase-core:16.0.8'
55-
implementation 'com.google.firebase:firebase-messaging:17.6.0'
54+
implementation 'com.google.firebase:firebase-analytics:16.5.0'
55+
implementation 'com.google.firebase:firebase-messaging:18.0.0'
5656
implementation 'com.google.flatbuffers:flatbuffers-java:1.9.0'
5757
}
5858

release_build_files/Android/firebase_dependencies.gradle

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,18 @@
1414

1515
// A map of library to the dependencies that need to be added for it.
1616
def firebaseDependenciesMap = [
17-
'app' : ['com.google.firebase:firebase-core:16.0.8'],
18-
'admob' : ['com.google.firebase:firebase-ads:17.2.0',
19-
'com.google.android.gms:play-services-measurement-sdk-api:16.4.0'],
20-
'analytics' : ['com.google.firebase:firebase-analytics:16.4.0'],
21-
'auth' : ['com.google.firebase:firebase-auth:16.2.1'],
22-
'database' : ['com.google.firebase:firebase-database:16.1.0'],
23-
'dynamic_links' : ['com.google.firebase:firebase-invites:16.1.1'],
24-
'functions' : ['com.google.firebase:firebase-functions:16.3.0'],
25-
'instance_id' : ['com.google.firebase:firebase-iid:17.1.2'],
26-
'invites' : ['com.google.firebase:firebase-invites:16.1.1'],
17+
'app' : ['com.google.firebase:firebase-analytics:16.5.0'],
18+
'admob' : ['com.google.firebase:firebase-ads:17.2.0'],
19+
'analytics' : ['com.google.firebase:firebase-analytics:16.5.0'],
20+
'auth' : ['com.google.firebase:firebase-auth:17.0.0'],
21+
'database' : ['com.google.firebase:firebase-database:17.0.0'],
22+
'dynamic_links' : ['com.google.firebase:firebase-invites:17.0.0'],
23+
'functions' : ['com.google.firebase:firebase-functions:17.0.0'],
24+
'instance_id' : ['com.google.firebase:firebase-iid:18.0.0'],
2725
'messaging' : ['com.google.firebase.messaging.cpp:firebase_messaging_cpp@aar',
28-
'com.google.firebase:firebase-messaging:17.6.0'],
29-
'remote_config' : ['com.google.firebase:firebase-config:16.5.0'],
30-
'storage' : ['com.google.firebase:firebase-storage:16.1.0']
26+
'com.google.firebase:firebase-messaging:18.0.0'],
27+
'remote_config' : ['com.google.firebase:firebase-config:17.0.0'],
28+
'storage' : ['com.google.firebase:firebase-storage:17.0.0']
3129
]
3230

3331
// Handles adding the Firebase C++ dependencies as properties.

storage/storage_resources/build.gradle

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

4747
dependencies {
48-
implementation 'com.google.firebase:firebase-core:16.0.8'
49-
implementation 'com.google.firebase:firebase-storage:16.1.0'
48+
implementation 'com.google.firebase:firebase-analytics:16.5.0'
49+
implementation 'com.google.firebase:firebase-storage:17.0.0'
5050
}
5151

5252
afterEvaluate {

0 commit comments

Comments
 (0)