作为 Blaze 计划用户,我可以创建多个数据库实例,这样默认数据库就不会卡在 100k 同时连接上。事实是,我试图从两个数据库调用数据,因为一些数据位于数据库 1 中,另一些数据位于数据库 2 中。因此,在 Kotlin 中,我声明了我的 Firebase 实例,如下所示;
val db: DatabaseReference = FirebaseDatabase.getInstance().reference
上面的行适用于默认数据库(Databse 1)。 通常,如果我想为另一个 Activity(现在不是这个)调用数据库 2 中的数据,我需要在 getInstance() 方法中包含实例名称,即 HTTPS 链接,如下所示;
val dataBase: DatabaseReference = FirebaseDatabase.getInstance("https://projectName.firebasio.com").reference
在这种情况下,我尝试使用这个 2 声明,但它似乎给了我错误。
Logcat 仅声明它是 E/AndroidRuntime: FATAL EXCEPTION: main 并发生在第二个实例声明时
val dataBase: DatabaseReference = FirebaseDatabase.getInstance("https://projectName.firebasio.com").reference
日志猫:
Caused by: com.google.firebase.database.DatabaseException: Invalid Firebase Database path: https//projectName.firebaseio.com. Firebase Database paths must not contain '.', '#', '$', '[', or ']' at com.google.android.gms.internal.zzepf.zzqn(Unknown Source:52) at com.google.android.gms.internal.zzepf.zzqo(Unknown Source:13) at com.google.android.gms.internal.zzepd.zzqj(Unknown Source:131) at com.google.firebase.database.FirebaseDatabase.getInstance(Unknown Source:45) at com.google.firebase.database.FirebaseDatabase.getInstance(Unknown Source:14) at paackageName.CountryList.(CountryList.kt:22) at java.lang.Class.newInstance(Native Method) at android.app.Instrumentation.newActivity(Instrumentation.java:1173) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2708) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892) at android.app.ActivityThread.-wrap11(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6541) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
最佳答案
第二次调用 getInstance() 时的 URL 无效。 “https”后面缺少一个冒号。
关于java - 在单个 Activity 中使用 2 个或更多 Firebase 实时数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50160542/