Android 单个应用程序中来自两个不同Firebase应用程序的通知和数据库
下面是我的情况,我连接到firebase控制台上的应用程序项目来处理通知。但我也想听听ApplicationB项目中的数据库 问题是,我只能拥有一个Android 单个应用程序中来自两个不同Firebase应用程序的通知和数据库,android,firebase,firebase-realtime-database,firebase-cloud-messaging,Android,Firebase,Firebase Realtime Database,Firebase Cloud Messaging,下面是我的情况,我连接到firebase控制台上的应用程序项目来处理通知。但我也想听听ApplicationB项目中的数据库 问题是,我只能拥有一个googleservices.json,我必须在其中一个或另一个之间进行选择,但不能两者兼而有之。所以,我的问题是,我如何指定从另一个应用程序监听一个数据库,而不是从googleservices.json中监听的数据库 自更新以来,项目链接由json在内部处理。在更新之前,我能够粘贴我想要收听的数据库的整个链接 以下是我当前收听特定数据库路径的方式:
googleservices.json
,我必须在其中一个或另一个之间进行选择,但不能两者兼而有之。所以,我的问题是,我如何指定从另一个应用程序监听一个数据库,而不是从googleservices.json
中监听的数据库
自更新以来,项目链接由json在内部处理。在更新之前,我能够粘贴我想要收听的数据库的整个链接
以下是我当前收听特定数据库路径的方式:
FirebaseDatabase database = FirebaseDatabase.getInstance();
fireActionUpdate = database.getReference("org/" + nameId + "/action");
fireRuleResponse = database.getReference("org/" + nameId + "/notify");
fireActionUpdate = new Firebase("https://yellow.firebaseio.com/org/" + nameId + "/action");
fireRuleResponse = new Firebase("https://yellow.firebaseio.com/org/" + nameId + "/notify");
之前:
FirebaseDatabase database = FirebaseDatabase.getInstance();
fireActionUpdate = database.getReference("org/" + nameId + "/action");
fireRuleResponse = database.getReference("org/" + nameId + "/notify");
fireActionUpdate = new Firebase("https://yellow.firebaseio.com/org/" + nameId + "/action");
fireRuleResponse = new Firebase("https://yellow.firebaseio.com/org/" + nameId + "/notify");
如果您想将两个应用程序绑定到同一个
Firebase数据库
,但又想使用所有功能,如FCM
,则可以使用此解决方案
请遵循以下步骤
google services.json
项目编号
和项目id除外。
基本上保持两个应用程序的
Firebase\u url&&
storage\u bucket`相同客户id
和api密钥
相同Firebase数据库
,请遵循以下代码
DatabaseReference baseRef = FirebaseDatabase.getInstance().getReferenceFromUrl("https://<APP_NAME>.firebaseio.com/");
DatabaseReference baseRef=FirebaseDatabase.getInstance().getReferenceFromUrl(“https://
快乐编码!!如果您希望将两个应用程序绑定到同一个
Firebase数据库,但又希望使用所有功能,如FCM
,则此解决方案适用
请遵循以下步骤
从firebase控制台下载这两个项目的google services.json
假设应用程序A连接到主数据库,json文件是文件1,类似地,对于应用程序B,数据库是子数据库和文件2
转到文件1并复制标题,但项目编号
和项目id除外。
基本上保持两个应用程序的
Firebase\u url&&
storage\u bucket`相同
对于这两个项目,还应保持客户id
和api密钥
相同
现在你们都准备好了
要像之前一样连接到Firebase数据库
,请遵循以下代码
DatabaseReference baseRef = FirebaseDatabase.getInstance().getReferenceFromUrl("https://<APP_NAME>.firebaseio.com/");
DatabaseReference baseRef=FirebaseDatabase.getInstance().getReferenceFromUrl(“https://
快乐编码!!您仍然可以执行相同的操作,我最近确实为消息和GCM应用程序使用了一个DBimplementation@silverFox-似乎是一个答案。Jaythaking-你试过了吗?@silverFox的答案有其要点。看看我的答案:@FrankvanPuffelen你的答案不起作用--,第一个评论是它崩溃了,我只是不明白为什么要打开它。问题是有两个进程调用FirebaseDatabase.getInstance()
他们正在互相牵制。答案是:你仍然可以执行相同的操作,我最近确实为消息和GCM应用程序使用了一个DBimplementation@silverFox-似乎是个答案。杰特金-你试过了吗?@silverFox的答案很有道理。看看我的答案:@FrankvanPuffelen你的answer不工作-u-,第一条评论是它崩溃了,我不明白为什么会打开它。问题是有两个进程调用FirebaseDatabase.getInstance()
,它们相互牵制。导致以下答案: