如何从Android应用程序连接到多个firebase数据库

时间:2016-06-04 20:36:08

标签: android firebase firebase-realtime-database

我试图让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 个答案:

答案 0 :(得分:29)

您需要在代码中使用显式选项初始化第二个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的属性下,应用程序ID来自名为mobilesdk_app_id的属性,数据库URL来自名为firebase_url的属性。