#onCreateメソッド内でFirebaseAuthのインスタンスを取得しておきます
LoginActivity.kt
class LoginActivity : AppCompatActivity() {
companion object {
private const val RC_SIGN_IN = 120
}
private lateinit var loginViewModel: LoginViewModel
private lateinit var mAuth: FirebaseAuth
private lateinit var googleSignInClient: GoogleSignInClient
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//onCreateメソッド内でFirebaseAuthのインスタンスを取得しておきます
mAuth = FirebaseAuth.getInstance()
#ログイン処理
TaskAuthResult 操作の結果に
public Task < AuthResult > signInWithEmailAndPassword (String email、String password)
指定されたメールアドレスとパスワードでユーザーのサインイン
LoginActivity.kt
private fun loginEmailUser() {
val email: String = username.text.toString()
val password: String = password.text.toString()
//入力欄が空白だったらエラーメッセージ
if (email == "") {
val ts = Toast.makeText(this@LoginActivity, "please write email.", Toast.LENGTH_SHORT)
ts.setGravity(Gravity.CENTER, 0, 0)
ts.show()
} else if (password == "") {
val ts = Toast.makeText(this@LoginActivity, "please write password.", Toast.LENGTH_SHORT)
ts.setGravity(Gravity.CENTER, 0, 0)
ts.show()
} else {
//ログイン処理
mAuth.signInWithEmailAndPassword(email, password)
.addOnCompleteListener { task ->
if (task.isSuccessful) {
val intent = Intent(this@LoginActivity, DashboardActivity::class.java)
startActivity(intent)
finish()
} else {
val ts = Toast.makeText(
this@LoginActivity,
"Error Message: " + task.exception!!.message.toString(),
Toast.LENGTH_SHORT
)
ts.setGravity(Gravity.CENTER, 0, 0)
ts.show()
}
}
}
}