FirebaseAuth.getInstance() 崩溃
Posted
技术标签:
【中文标题】FirebaseAuth.getInstance() 崩溃【英文标题】:FirebaseAuth.getInstance() crash 【发布时间】:2019-12-19 21:58:29 【问题描述】:我正在制作一个包含登录系统的登录系统,登录后我们转到主要活动,那里有一个导航抽屉活动。
在我启动登录系统之前,我的登录系统运行良好,但我的主要活动是空的,只有注销按钮。但现在我将主要活动更改为导航抽屉活动。
在这里我遇到了崩溃,当我调试时,我发现崩溃发生在FirebaseAuth.getInstance()
,当我进入代码内部时,我发现 ActivityThread.java 类充满了错误,就像你在照片中看到的那样,我已经尝试过FirebaseApp.initializeApp(Context)
它不起作用,所以请谁能告诉我为什么它一直崩溃。
您可以在下面看到我的 build.gradle 和我遇到的错误
image
apply plugin: 'com.android.application'
android
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig
applicationId "com.example.greenway"
minSdkVersion 16
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
buildTypes
release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
dependencies
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.navigation:navigation-fragment:2.1.0'
implementation 'androidx.navigation:navigation-ui:2.1.0'
implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.google.firebase:firebase-core:17.2.1'
implementation 'com.google.firebase:firebase-auth:19.2.0'
implementation 'com.google.firebase:firebase-database:19.2.0'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'androidx.cardview:cardview:1.0.0'
E/AndroidRuntime: 致命异常: main 进程:com.example.greenway,PID:7810 java.lang.RuntimeException:无法启动活动 ComponentInfocom.example.greenway/com.example.greenway.Login:java.lang.IllegalStateException:默认 FirebaseApp 未在此进程 com.example.greenway 中初始化。确保首先调用 FirebaseApp.initializeApp(Context)。 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3270) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409) 在 android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 在 android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 在 android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016) 在 android.os.Handler.dispatchMessage(Handler.java:107) 在 android.os.Looper.loop(Looper.java:214) 在 android.app.ActivityThread.main(ActivityThread.java:7356) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930) 原因:java.lang.IllegalStateException:默认 FirebaseApp 未在此进程 com.example.greenway 中初始化。确保首先调用 FirebaseApp.initializeApp(Context)。 在 com.google.firebase.FirebaseApp.getInstance(com.google.firebase:firebase-common@@19.3.0:184) 在 com.google.firebase.auth.FirebaseAuth.getInstance(com.google.firebase:firebase-auth@@19.2.0:1) 在 com.example.greenway.Login.onCreate(Login.java:41) 在 android.app.Activity.performCreate(Activity.java:7802) 在 android.app.Activity.performCreate(Activity.java:7791) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1299) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3245) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409) 在 android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 在 android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 在 android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016) 在 android.os.Handler.dispatchMessage(Handler.java:107) 在 android.os.Looper.loop(Looper.java:214) 在 android.app.ActivityThread.main(ActivityThread.java:7356) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
【问题讨论】:
请发布堆栈跟踪 :) 现在你有它希望我帮助 【参考方案1】:您似乎没有应用 Google 插件
应用插件:'com.google.gms.google-services'
【讨论】:
非常感谢您为这行代码带来的所有麻烦 thx :)以上是关于FirebaseAuth.getInstance() 崩溃的主要内容,如果未能解决你的问题,请参考以下文章
将Firebase Persistence Enabled设置为true后,不检索新数据?
Firebase Auth Anonymouse Registration/Login for Android java