diff --git a/release_build_files/readme.md b/release_build_files/readme.md index 34ad049e93..bcacaa67a8 100644 --- a/release_build_files/readme.md +++ b/release_build_files/readme.md @@ -571,6 +571,12 @@ code. ## Release Notes +### TBD +- Changes + - Remote Config(Android): Fix for getting Remote Config instance for a + specific app object. + ([#991](https://github.com/firebase/quickstart-unity/issues/991). + ### 7.3.0 - Changes - General (iOS): Update dependencies. diff --git a/remote_config/src/android/remote_config_android.cc b/remote_config/src/android/remote_config_android.cc index af0824761b..4fb8cf9cc3 100644 --- a/remote_config/src/android/remote_config_android.cc +++ b/remote_config/src/android/remote_config_android.cc @@ -37,7 +37,8 @@ DEFINE_FIREBASE_VERSION_STRING(FirebaseRemoteConfig); // clang-format off #define REMOTE_CONFIG_METHODS(X) \ X(GetInstance, "getInstance", \ - "()Lcom/google/firebase/remoteconfig/FirebaseRemoteConfig;", \ + "(Lcom/google/firebase/FirebaseApp;)" \ + "Lcom/google/firebase/remoteconfig/FirebaseRemoteConfig;", \ util::kMethodTypeStatic), \ X(EnsureInitialized, "ensureInitialized", \ "()Lcom/google/android/gms/tasks/Task;"), \ @@ -454,8 +455,12 @@ RemoteConfigInternal::RemoteConfigInternal(const firebase::App& app) // Create the remote config class. jclass config_class = config::GetClass(); + jobject platform_app = app_.GetPlatformApp(); jobject config_instance_local = env->CallStaticObjectMethod( - config_class, config::GetMethodId(config::kGetInstance)); + config_class, + config::GetMethodId(config::kGetInstance), + platform_app); + env->DeleteLocalRef(platform_app); if (util::CheckAndClearJniExceptions(env)) config_instance_local = nullptr; FIREBASE_ASSERT(config_instance_local); internal_obj_ = env->NewGlobalRef(config_instance_local);