EDIT: I should emphasize, I have flavors, for which I don't want to use any of these Google services, and attempting to apply the google-services plugin in such a case, without having an applicable google-services.json, would result in a failed build.
I would like to be able to initialize the Firebase SDK, specifically to use the Remote Config, WITHOUT using the google-services.json.
I see that FirebaseApp has an initialize method, which receives a FirebaseOptions object.
I've built the FirebaseOptions with values provided in the google-services.json, and after a call to FirebaseApp.initialize with these options, I always get
FirebaseInitProvider: FirebaseApp initialization unsuccessful
I know it's the recommended way to use the google-services.json file, but I need to be able to make the app call different Firebase projects, depending on debug/release builds, while keeping the package name the same.
The way I would like to do this is to have a debug/release pairs for all values necessary to initialize Firebase, and then dynamically do the initialization.
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId(appId)
.setApiKey(apiKey)
.setGcmSenderId(appContext.getString(
isDebug ? R.string.firebase_testing_gcm_sender_id :
R.string.firebase_production_gcm_sender_id))
.setDatabaseUrl(appContext.getString(
isDebug ? R.string.firebase_testing_database_url :
R.string.firebase_production_database_url))
.setStorageBucket(
appContext.getString(
isDebug ? R.string.firebase_testing_storage_bucket :
R.string.firebase_production_storage_bucket))
.build();
FirebaseApp.initializeApp(appContext, options);
So far it doesn't seem to work.
All help is greatly appreciated!
google-services.json
files for a project to support different build types and flavors. – Kuster