EDYCJA: Powinienem podkreślić, że mam smaki, dla których nie chcę korzystać z żadnej z tych usług Google, i próbuję zastosować wtyczkę usług Google w takim przypadku, bez konieczności stosowania google-services.json , spowoduje niepowodzenie kompilacji.Czy mogę zainicjować Firebase bez używania google-services.json?
Chciałbym móc zainicjować pakiet SDK Firebase, w szczególności do korzystania z konfiguracji zdalnej, BEZ korzystania z usługi google-services.json.
Widzę, że FirebaseApp ma metodę initialize, która odbiera obiekt FirebaseOptions.
Mam zbudował FirebaseOptions z wartościami zawartymi w Google services.json, a po wywołaniu FirebaseApp.initialize z tych opcji, zawsze dotrzesz
FirebaseInitProvider: FirebaseApp initialization unsuccessful
wiem, że to zalecanym sposobem użyj pliku google-services.json, ale chcę, aby aplikacja mogła wywoływać różne projekty Firebase, w zależności od wersji debugowania/wydania, zachowując jednocześnie nazwę pakietu.
Sposób, w jaki chciałbym to zrobić, to posiadanie pary debugowania/wydania dla wszystkich wartości niezbędnych do zainicjowania Firebase, a następnie dynamiczne inicjowanie.
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);
Do tej pory nie działa.
Cała pomoc jest bardzo doceniana!
Brak odpowiedzi na twoje pytanie, ale być może pomocne: Dokumentacja dla [wtyczki Google Services Gradle] (https://developers.google.com/android/guides/google-services-plugin#adding_the_json_file) wyjaśnia, że może mieć wiele plików 'google-services.json' dla projektu obsługującego różne typy i smaki kompilacji. –
@qbix, dzięki, zaktualizowałem moje pytanie. Jestem tego świadomy, ale problem polega na tym, że mam kilka smaków, z których po prostu nie chcę korzystać z żadnej z tych usług Google, ponieważ ich nie potrzebuję. Jeśli nie udostępnię jeszcze usługi google-services.json, kompilacja się nie powiedzie. – Matej
To działało dla mnie: http://stackoverflow.com/questions/37634767/how-to-connect-to-more-than-one-firebase-database-from-an-android-app/37643374#37643374. Co nie działa dla ciebie? –