I want to create an EmailPassword authentication page as it can be inferred from the code below:
package parsa.lop.sibeh;
import android.content.Intent;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.google.android.gms.common.api.GoogleApiClient;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthResult;
import com.google.firebase.auth.FirebaseAuth;
public class MainActivity extends AppCompatActivity {
private FirebaseAuth mAuth;
private Button mLogin;
private EditText mEmail;
private EditText mPassword;
private GoogleApiClient mGoogleApiClient;
private FirebaseAuth.AuthStateListener mAuthListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mAuth = FirebaseAuth.getInstance();
mLogin = findViewById(R.id.login);
mEmail = findViewById(R.id.email);
mPassword = findViewById(R.id.password);
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
if(firebaseAuth.getCurrentUser() != null){
startActivity(new Intent(MainActivity.this, StartActivity.class));
}
}
};
}
@Override
protected void onStart() {
super.onStart();
mAuth.addAuthStateListener(mAuthListener);
}
public void loginButton(View view){
String email = mEmail.getText().toString();
String pass = mPassword.getText().toString();
mAuth.signInWithEmailAndPassword(email, pass).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
Toast.makeText(MainActivity.this, "Signed In", Toast.LENGTH_LONG).show();
}
}
});
}
}
my app build.gradle
contains
implementation 'com.google.firebase:firebase-core:16.0.6'
implementation 'com.google.firebase:firebase-auth:16.1.0'
and my project build.gradle
contains
classpath 'com.google.gms:google-services:4.2.0'
i have created an account in firebase and i downloaded google-services.json
in my app folder.
so i don't get any errors except that when i click the button via loginButton()
function i get a from the emulator as to update the google play services