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

10

我正在使用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'
}

5
请在您应用程序级别的 build.gradle 文件中最后一个位置添加 apply plugin: 'com.google.gms.google-services'。例如:http://prntscr.com/ncpwui - Ajay Mehta
你有使用过_FirebaseApp.initializeApp(Context)_吗? - Piyush
@AjayMehta-Rlogical,它已经在那里了。 - Lenin Bakhara
@Piyush 我没有用那个 - Lenin Bakhara
1
你必须使用它。 - Piyush
4个回答

14

我之前遇到了类似的问题,因为我忘记在 build.gradle 的底部添加如下代码:

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


11

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

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

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

那对我有用!


1
我有一个类路径 'com.google.gms:google-services:4.3.3',但是我遇到了错误。 - Punter Bad
它应该同时使用classpathapply plugin。只使用其中一个是没有意义的。 - Onik

1

不要在项目级别的 build.gradle 文件中添加以下内容,而是将其添加到应用程序级别的 gradle 文件中。

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


0

build.gradle(Project)文件中添加这行代码

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

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

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接