【发布时间】:2021-06-23 09:36:57
【问题描述】:
我按照文档中有关设置电子邮件密码身份验证的步骤进行操作,现在它运行良好了一段时间。我不知道为什么,但昨天它刚刚停止工作并一直给我错误:W/System: Ignoring header X-Firebase-Locale because its value is null.
该应用不再允许我登录或注册。
但问题仅在我通过 WiFi 连接时测试我的应用程序时出现,并且当我连接到移动数据 (LTE) 时它按预期工作。
我尝试连接到 VPN,希望问题出在我的服务提供商上,但问题仍然存在。
我也尝试在其他设备上测试该应用,但错误仍然存在。
我已尝试按照这些答案提供的步骤进行操作:
https://stackoverflow.com/a/65106158/16296874
https://stackoverflow.com/a/66993601/16296874
https://stackoverflow.com/a/64657110
但似乎没有任何效果。
我见过很多人遇到过这个问题并以不同的方式得到解决。尝试这些似乎没有效果。所以我不确定了。
package com.sunnyside.kookoo.verification.ui.fragments
import android.content.Intent
import android.os.Bundle
import android.text.TextUtils
import android.util.Log
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Toast
import androidx.navigation.fragment.findNavController
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.auth.ktx.auth
import com.google.firebase.ktx.Firebase
import com.sunnyside.kookoo.R
import com.sunnyside.kookoo.databinding.FragmentLoginBinding
import com.sunnyside.kookoo.databinding.FragmentProfileBinding
import com.sunnyside.kookoo.student.ui.StudentActivity
import com.sunnyside.kookoo.testKolanglods.ui.PangTestingLangLodsActivity
class LoginFragment : Fragment() {
private lateinit var auth: FirebaseAuth
private var _binding: FragmentLoginBinding? = null
private val binding get() = _binding!!
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
_binding = FragmentLoginBinding.inflate(inflater, container, false)
val view = binding.root
auth = Firebase.auth
binding.textLoginRegister.setOnClickListener {
findNavController().navigate(R.id.action_loginFragment_to_signupFragment)
}
binding.loginbtnBack.setOnClickListener {
findNavController().navigate(R.id.action_loginFragment_to_welcomeFragment)
}
binding.resetPasswordTxt.setOnClickListener {
findNavController().navigate(R.id.action_loginFragment_to_resetFragment)
}
binding.loginBtn.setOnClickListener {
login()
}
return view
}
private fun login() {
val email = binding.loginEmail.text.toString()
val password = binding.loginPassword.text.toString()
binding.llProgressBar.root.visibility = View.VISIBLE
auth.signInWithEmailAndPassword(email, password)
.addOnCompleteListener { task ->
if (task.isSuccessful) {
// Sign in success, update UI with the signed-in user's information
Log.d("AUTH", "signInWithEmail:success")
val intent = Intent(activity, StudentActivity::class.java)
activity?.startActivity(intent)
} else {
// If sign in fails, display a message to the user.
Log.w("AUTH", "signInWithEmail:failure", task.exception)
Toast.makeText(
context, "Authentication failed.",
Toast.LENGTH_SHORT
).show()
}
}
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
}
【问题讨论】:
-
我也遇到了同样的问题,你解决了吗?