Here's my Kotlin activity code:
package com.florize.nostagram
import android.content.Intent
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.auth.FirebaseUser
import kotlinx.android.synthetic.main.activity_login.*
class LoginActivity : AppCompatActivity() {
var auth: FirebaseAuth? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
auth = FirebaseAuth.getInstance()
email_login_button.setOnClickListener {
signinAndSignup()
}
}
fun signinAndSignup() {
auth?.createUserWithEmailAndPassword(
email_edittext.toString().trim(),
password_edittext.toString()
)
?.addOnCompleteListener { task ->
if (task.isSuccessful) {
//Creating a user account
moveMainPage(task.result?.user)
} else if (task.exception?.message.isNullOrEmpty()) {
//Show the error message
Toast.makeText(this, task.exception?.message, Toast.LENGTH_LONG).show()
} else {
//Login if you have account
signinEmail()
}
}
}
}
and my layout code:
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp">
<EditText
android:id="@+id/email_edittext"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:hint="@string/email" />
</com.google.android.material.textfield.TextInputLayout>
I set the inputType for Email Field.
but Firebase Toast says "The email address is badly formatted.".
and I added trim() behind the "email_edittext.toString()"
doesn't work. still same error.
How can I fix it?
(I cut my Kotlin activity code because it's too long)