确保首先调用FirebaseApp.initializeApp(Context)。此过程com.example.login中未初始化默认FirebaseApp

时间:2019-04-16 13:27:27

标签: android firebase firebase-realtime-database kotlin firebase-authentication

我正在使用kotlin制作Firebase身份验证注册页面,并且在运行应用程序时出现运行时错误。 请参阅第3和第14行,我不知道出了什么问题。

我没有附加主要代码,如果需要附加主要代码,请通知我。

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.login, PID: 7505
    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.login/com.example.login.Register}: java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.example.login. Make sure to call FirebaseApp.initializeApp(Context) first.
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2567)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6119)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
     Caused by: java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.example.login. Make sure to call FirebaseApp.initializeApp(Context) first.
        at com.google.firebase.FirebaseApp.getInstance(SourceFile:218)
        at com.google.firebase.auth.FirebaseAuth.getInstance(Unknown Source)
        at com.example.login.Register.<init>(Register.kt:15)
        at java.lang.Class.newInstance(Native Method)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1078)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2557)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726) 
        at android.app.ActivityThread.-wrap12(ActivityThread.java) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:154) 
        at android.app.ActivityThread.main(ActivityThread.java:6119) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 
Application terminated.

实施

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.google.firebase:firebase-auth:16.0.3'
    implementation 'com.google.firebase:firebase-database:16.0.1'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

4 个答案:

答案 0 :(得分:3)

谢谢大家,但我自己解决了。我所做的就是

classpath 'com.google.gms:google-services:4.1.0'

classpath 'com.google.gms:google-services:4.2.0'

对我有用!

答案 1 :(得分:2)

我有类似的事情,因为我忘了添加

<%@ Register TagPrefix="dnn" TagName="USER" Src="~/Admin/Skins/User.ascx" %> <%@ Register TagPrefix="dnn" TagName="LANGUAGE" Src="~/Admin/Skins/language.ascx" %> <%@ Register TagPrefix="dnn" TagName="LOGIN" Src="~/DesktopModules/LoginSkinObject/ParrotLoginSkinObject.ascx" %>

在build.gradle的底部

答案 2 :(得分:1)

与其将其添加到项目级别的build.gradle中,而不是将其添加到应用程序级gradle中。

应用插件:“ com.google.gms.google-services”

答案 3 :(得分:0)

添加这一行build.gradle(Project)

  classpath 'com.google.gms:google-services:4.3.3' 

并添加此插件build.gradle(module)

apply plugin: 'com.google.gms.google-services'