Как подключиться к нескольким базам данных Firebase из приложения для Android
Я пытаюсь создать один проект в Firebase, который будет отвечать за одну общую вещь - все приложения.
То есть я хочу создать приложения, а затем предоставить этим приложениям доступ к определенной базе данных Firebase проекта.
Глядя на документы Firebase для Android, я не могу найти способ отправки данных в другую базу данных Firebase в другом проекте, используя следующую информацию, но там, где есть ссылка на другой проект.
DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("example");
ref.push().setValue(d).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
finish();
}
});
1 ответ
Вам нужно будет инициализировать второй FirebaseApp
объект с явными параметрами в вашем коде:
FirebaseOptions options = new FirebaseOptions.Builder()
.setApiKey("AI...j0")
.setApplicationId("1:5...e0")
.setDatabaseUrl("https://myapp.firebaseio.com")
.build();
FirebaseApp secondApp = FirebaseApp.initializeApp(getApplicationContext(), options, "second app");
FirebaseDatabase secondDatabase = FirebaseDatabase.getInstance(secondApp);
secondDatabase.getReference().setValue(ServerValue.TIMESTAMP);
Я получил значения конфигурации из google-services.json второго проекта. Ключ API находится в свойстве под названием api_key
идентификатор приложения получен из свойства mobilesdk_app_id
и URL базы данных пришел из свойства под названием firebase_url
,