Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio 为什么我的应用程序在收到使用FirebaseAuth的验证短信后立即停止工作?_Android Studio_Kotlin_Firebase Authentication - Fatal编程技术网

Android studio 为什么我的应用程序在收到使用FirebaseAuth的验证短信后立即停止工作?

Android studio 为什么我的应用程序在收到使用FirebaseAuth的验证短信后立即停止工作?,android-studio,kotlin,firebase-authentication,Android Studio,Kotlin,Firebase Authentication,我正在学习使用FirebaseAuth在线教程。我可以通过短信成功获得验证码,但一旦收到短信,应用程序就停止工作。你能帮帮我吗 我在安卓工作室工作,我在Kotlin编写代码 这是我的密码 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_sign_in) mAuth = Fireb

我正在学习使用FirebaseAuth在线教程。我可以通过短信成功获得验证码,但一旦收到短信,应用程序就停止工作。你能帮帮我吗

我在安卓工作室工作,我在Kotlin编写代码

这是我的密码

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_sign_in)

    mAuth = FirebaseAuth.getInstance()

    phoneNumber = findViewById(R.id.etxPhoneNumber)
    code = findViewById(R.id.etxCode)


    btnCode.setOnClickListener { view: View? ->
        progress.visibility = View.VISIBLE
        verify()
    }


}

private fun verificationCallbacks() {
    mCallbacks = object : PhoneAuthProvider.OnVerificationStateChangedCallbacks() {
        override fun onVerificationCompleted(credential: PhoneAuthCredential) {


            progress.visibility = View.INVISIBLE
            signIn(credential)
        }

        override fun onVerificationFailed(p0: FirebaseException) {

        }

        override fun onCodeSent(p0: String, p1: PhoneAuthProvider.ForceResendingToken) {
            super.onCodeSent(p0, p1)
        }

    }
}

private fun verify() {
    verificationCallbacks()
    val phoneNo = etxPhoneNumber.text.toString()
    PhoneAuthProvider.getInstance().verifyPhoneNumber(

        phoneNo,
        60,
        TimeUnit.SECONDS,
        this,
        mCallbacks


    )
}


private fun signIn(credential: PhoneAuthCredential) {
    mAuth.signInWithCredential(credential)
        .addOnCompleteListener { task: Task<AuthResult> ->
            if (task.isSuccessful) {
                toast("Logged in successfully")
                startActivity(Intent(this, MainActivity::class.java))
            }

        }

}

请添加您的验证码和/或Stacktrace。添加的代码,您可以检查吗?我只是靠着。请加上stacktrace。好的,先生。这意味着您正在重写一个空函数(这是不必要的),并且您只调用超级函数。您可以安全地删除它。不需要。在调用
verifyPhoneNumber
方法之前,请检查
phoneNo
是否为空。
2020-01-25 10:37:08.228 7511-7511/? E/Zygote: v2 2020-01-25 10:37:08.231 7511-7511/? E/Zygote: accessInfo : 0 2020-01-25 10:37:08.489 7511-7511/com.example.testapp E/FontFamily: Error mapping font file /data/data/com.android.settings/app_fonts/Cooljazz/DroidSans.ttf 2020-01-25 10:37:08.489 7511-7511/com.example.testapp E/FontFamily: Error mapping font file /data/data/com.android.settings/app_fonts/Cooljazz/DroidSans-Bold.ttf 2020-01-25 10:37:08.715 7511-7511/com.example.testapp E/ViewRootImpl@4d50979[MainActivity]: ViewRootImpl #2 Surface is not valid. 2020-01-25 10:37:11.915 7511-7511/com.example.testapp E/BoostFramework: BoostFramework() : Exception_1 = java.lang.ClassNotFoundException: Didn't find class "com.qualcomm.qti.Performance" on path: DexPathList[[],nativeLibraryDirectories=[/system/lib64, /vendor/lib64]] 2020-01-25 10:37:11.987 7511-7511/com.example.testapp E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.testapp, PID: 7511
    java.lang.IllegalArgumentException: Given String is empty or null
        at com.google.android.gms.common.internal.Preconditions.checkNotEmpty(Unknown Source)
        at com.google.firebase.auth.PhoneAuthProvider.verifyPhoneNumber(com.google.firebase:firebase-auth@@19.2.0:7)
        at com.example.testapp.SignIn.verify(SignIn.kt:70)
        at com.example.testapp.SignIn.access$verify(SignIn.kt:19)
        at com.example.testapp.SignIn$onCreate$1.onClick(SignIn.kt:41)
        at android.view.View.performClick(View.java:6205)
        at android.widget.TextView.performClick(TextView.java:11103)
        at android.view.View$PerformClick.run(View.java:23653)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6682)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)