Как подключиться к нескольким базам данных 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,

Другие вопросы по тегам