Tutorial Autentikasi Email Dan Password Dengan Firebase
assalamualaikum warahmatullahi wabarakatuh, salam sejahtera bagi kita semua. Pada kesempatan ini saya ingin membagi ilmu tentang bagaimana cara menghubungkan android studio dengan firebase autentikasi. Atau lebih tepatnya autentikasi dengan email dan password dan bagaimana caranya, pertamatama kita harus mengautentikasikan projek android studio dengan firebase console.Bagi teman-teman yang belum tau bagai mana caranya dapat dilihat pada posting kita sebelumnya
setelah kita menghubungkan projek android kita denga firebase, langkah selanjutnya adalah
mengenable Email/Password yang tedapat pada Autentication – sign in method pada
console firebase.
mengenable Email/Password yang tedapat pada Autentication – sign in method pada
console firebase.
adalah mendeklarasikan FirebaseAuth dengan nama mAuth
private FirebaseAuth mAuth;
mAuth = FirebaseAuth.getInstance();
@Override public void onStart() { super.onStart(); FirebaseUser currentUser = mAuth.getCurrentUser(); updateUI(currentUser); } Langkah selanjutnya adalah membuat signin method (letakkan dibawah onCreate Method) private void signIn(String email, String password) { Log.d(TAG, "signIn:" + email); if (!validateForm()) { return; } showProgressDialog(); mAuth.signInWithEmailAndPassword(email, password) .addOnCompleteListener(this, new OnCompleteListener() { @Override public void onComplete(@NonNull Task task) { if (task.isSuccessful()) { Log.d(TAG, "signInWithEmail:success"); FirebaseUser user = mAuth.getCurrentUser(); updateUI(user); } else { Log.w(TAG, "signInWithEmail:failure", task.getException()); Toast.makeText(EmailPasswordActivity.this, "Authentication failed.", Toast.LENGTH_SHORT).show(); updateUI(null); } if (!task.isSuccessful()) { mStatusTextView.setText(R.string.auth_failed); } hideProgressDialog(); } }); } private boolean validateForm() { boolean valid = true; String email = mEmailField.getText().toString(); if (TextUtils.isEmpty(email)) { mEmailField.setError("Required."); valid = false; } else { mEmailField.setError(null); } String password = mPasswordField.getText().toString(); if (TextUtils.isEmpty(password)) { mPasswordField.setError("Required."); valid = false; } else { mPasswordField.setError(null); } return valid; }
@Override public void onClick(View v) { int i = v.getId(); if (i == R.id.email_create_account_button) { createAccount(mEmailField.getText().toString(), mPasswordField.getText().toString()); } else if (i == R.id.email_sign_in_button) { try { Class aClass = Class.forName("com.google.firebase.quickstart.auth.GoogleSignInActivity"); Object o = aClass.newInstance(); Method method = aClass.getMethod("signIn"); method.setAccessible(true); method.invoke(o); } catch (Exception e) { e.printStackTrace(); } } else if (i == R.id.sign_out_button) { signOut(); } else if (i == R.id.verify_email_button) { sendEmailVerification(); } }
Post a Comment