为什么我的Firebase身份验证Kotlin代码无法正常工作?

时间:2019-03-27 14:29:42

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

我注册了在线CBT并学习Kotlin进行android编程。视频教程于2017年制作,我获得了该教程系列中制作的应用程序的代码。我一直遵循着每个步骤,直到将我的应用程序与Firebase连接起来,甚至在“身份验证”中输入了示例用户数据,并将“使用规则”设置为公开,但令我惊讶的是,同样的Kotlin代码在视频教程中也可以正常工作,但对我来说并不起作用。 然后,我尝试了来自github的示例LoginActivity.kt和RegisterActivity.kt代码,即使这些代码也不起作用。请查看我的代码,并帮助我解决此问题。 当我单击loginBtn时,应用程序崩溃,并且没有数据发送到Firebase。 Logcat显示以下错误:

"#{'%010d' % rand(0..9999999999)}"

com.punjabweb.myapp.LoginActivity $ onCreate $ 2.onClick(LoginActivity.kt:43)

和我的LoginActivity.kt的kotlin代码如下:

java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.paramlowe.mypg2. 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:1)
    at com.punjabweb.myapp.LoginActivity.loginUser(LoginActivity.kt:50)
    at 
com.punjabweb.myapp.LoginActivity.access$loginUser(LoginActivity.kt:25)
    at 

1 个答案:

答案 0 :(得分:0)

您需要在控制台中启用Firebase电子邮件身份验证。乍一看似乎您的代码还可以。 这可能是有原因的,因为您在应用gradle的末尾没有google-services插件:

dependencies {
    ....
}

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