Kotlin

When a new user signs up using your app's sign-up form, complete any new
account validation steps that your app requires, such as verifying that the
new account's password was correctly typed and meets your complexity
requirements.

Create a new account by passing the new user's email address and password
to createUserWithEmailAndPassword:

If the new account was created, the user is also signed in. In the callback,
you can use the getCurrentUser method
to get the user's account data.

To protect your project from abuse, Firebase limits the number of new
email/password and anonymous sign-ups that your application can have from the
same IP address in a short period of time. You can request and schedule
temporary changes to this quota from the
Firebase console.

Sign in a user with an email address and password

The steps for signing in a user with a password are similar to the steps for
creating a new account. In your app's sign-in activity, do the following:

In your sign-in activity's onCreate method, get the shared
instance of the FirebaseAuth object:

If sign-in succeeded, you can use the returned FirebaseUser to proceed.

Next steps

After a user signs in for the first time, a new user account is created and
linked to the credentials—that is, the user name and password, phone
number, or auth provider information—the user signed in with. This new
account is stored as part of your Firebase project, and can be used to identify
a user across every app in your project, regardless of how the user signs in.