Android Firebase 实时“DatabaseDefault FirebaseApp 未初始化”
Posted
技术标签:
【中文标题】Android Firebase 实时“DatabaseDefault FirebaseApp 未初始化”【英文标题】:Android Firebase Realtime "DatabaseDefault FirebaseApp is not initialized" 【发布时间】:2021-07-11 16:58:26 【问题描述】:我正在尝试从 android 连接到 Firebase 实时数据库。
SDK 版本 29
public void init(Context context)
FirebaseApp.initializeApp(context);
mDatabase = FirebaseDatabase.getInstance("https://xxxx.europe-west1.firebasedatabase.app/").getReference();
我得到错误:
默认 FirebaseApp 未在此进程 com.xxx.xxxx 中初始化。确保首先调用 FirebaseApp.initializeApp(Context)。
firebase.json 是
"database":
"rules": "secrules.json"
secrules.json 是
"rules":
".read": "now < 1619046000000", // 2021-4-22
".write": "now < 1619046000000", // 2021-4-22
build gradle 模块应用级别是
dependencies
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:26.8.0')
// Declare the dependency for the Realtime Database library
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-database'
build gradle 项目级别是
dependencies
classpath 'com.android.tools.build:gradle:3.5.3'
classpath 'com.google.gms:google-services:3.0.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
我尝试在堆栈溢出方面遵循最新的准则和一些建议,没有任何区别。
项目是从 firebase 控制台初始化的。我没有使用模拟器数据库。
【问题讨论】:
在默认的基础上添加辅助数据库吗? 我现在不添加辅助数据库,没有 【参考方案1】:主要的firebase项目和包括数据库在内的相关资产会自动初始化,无需指定任何内容,只需将google services json添加到项目中。如果由于某种原因需要初始化它,最好的地方是扩展 Application 的类。
public ZAONE extends Application
public void onCreate()
super.onCreate();
FirebaseApp.initializeApp(this);
database = FirebaseDatabase.getInstance();
然后将该类添加到清单中。这里有一个很好的资源,setting up on Android 上的文档
【讨论】:
太棒了,谢谢!我按照您的指南链接,观看了视频。我在在线 firebase 控制台中注册了我的应用程序,安装了 google services json 文件。我还将 android 测试设备切换到具有 playstore 图标的设备,并将 google-services 的插件行添加到模块应用程序构建等级。视频中的所有内容 我很高兴它成功了。这就是 *** 的美妙之处。以上是关于Android Firebase 实时“DatabaseDefault FirebaseApp 未初始化”的主要内容,如果未能解决你的问题,请参考以下文章
来自 Firebase Firestore 的 Android 反应式列表
数据未从 Android 应用程序写入 Firebase 实时数据库