Я считаю, что нашел обходное решение. Вместо использования плагина Google Play Services и google-services.json
вы можете настроить и инициализировать Firebase самостоятельно в Application.onCreate
или где угодно.
@Provides
@Singleton
protected FirebaseApp proviceFirebaseApp(Application application) {
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId(application.getPackageName())
.setDatabaseUrl(BuildConfig.FIREBASE_DATABASE_URL)
.setApiKey(BuildConfig.FIREBASE_API_KEY)
.build();
return FirebaseApp.initializeApp(application, options);
}
Поиск ключей был загадкой. Внутри google-services.json
вам понадобится URL-адрес базы данных, который равен project_info.firebase_url
. Если у вас более одного приложения, использующего репозиторий Firebase, здесь будет несколько объектов client
.
Если вы используете Google Sign In, идентификатор oauth находится внутри client[app].oauth_client[1].client_id
. Вы можете выяснить ваш client
по имени пакета и oauth_client
был второй объект, который выглядел следующим образом:
{
"client_id": "asfagasdgdas",
"client_type": 3
}
Ключ АФИ client[app].api_key
, снова найти клиента на основе пакета.
Простите псевдо-json.
Структура может измениться позже, это было написано для Play Services версии 9.0.1.
Вы используете Firebase Crash Reporting? –
Нет, я называю 'FirebaseAuth.getInstance()'. Должно быть, это было сказано. – DariusL
Посмотрите здесь: https://groups.google.com/forum/?hl=vi&fromgroups&nomobile=true#!topic/firebase-talk/ZIhO6Wwe1oM –