По нескольким причинам нам пришлось использовать несколько проектов Firebase в одном приложении. На данный момент мы внедрили расширение авторизации для одного пользовательского проекта Firebase и с помощью инициализации кода и аварийного отключения, производительности и обмена сообщениями для использования другого через файл конфигурации. Мы хотели бы сделать аварийные изменения и расширения производительности, чтобы использовать проект, который использует расширение auth, и обмен сообщениями, чтобы использовать тот же, который он использует сейчас.
Я просмотрел несколько примеров инициализации, но не смог найти ничего, относящегося к сбоям или расширениям производительности.
Вот как я инициализирую другой проект для расширения авторизации.
// credentials for auth project on Firebase
final String authAppName = BuildConfig.AUTH_APP_NAME;
final String authAppApplicationId = BuildConfig.AUTH_APPLICATION_ID;
final String authAppApiKey = BuildConfig.AUTH_APPLICATION_KEY;
List<FirebaseApp> listOfActiveApps = FirebaseApp.getApps(context);
if (!listOfActiveApps.isEmpty()) {
for (FirebaseApp app : listOfActiveApps) {
if (authAppApiKey.equals(app.getOptions().getApiKey())) {
return app;
}
}
}
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId(authAppApplicationId)
.setApiKey(authAppApiKey)
.build();
return FirebaseApp.initializeApp(context, options, authAppName);