Firebase (6)
=========
Email Verification လက္ေတြ႕ Project
=========
ဒီ Project အတြက္ auth version 9.4.0 နဲ႔ အဆင္မေျပပါဘူး။ ေနာက္ဆံုး version ရေအာင္ Build.gradle မွာ ဒီလို ျပင္ေရးၿပီး download ခ်ထားပါ။
compile 'com.google.firebase:firebase-auth:+'
========
ဒီ Project က Sign up button ကို ႏွိပ္ပါ။ Sign In button နဲ႔ ၀င္ၾကည့္ပါ။ Confirm လုပ္ဖို႔ ေျပာပါမယ္။ ကိုယ့္ email ထဲ ၀င္ၿပီး confirm လုပ္ေပးပါ။ Sign In ျပန္လုပ္ၾကည့္ရင္ ok သြားပါလိမ့္မယ္။
=======
MainActivity
=======
package nnl.aide.lessons;
import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import com.google.firebase.auth.*;
import com.google.android.gms.tasks.*;
public class MainActivity extends Activity
{
TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv=(TextView)findViewById(R.id.tv);
}
public void onClick(View v){
if(v.getId()==R.id.bt1){
FirebaseAuth.getInstance()
.createUserWithEmailAndPassword("nyinyilwin@gmail.com",
"12345678nnl")
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete( Task<AuthResult> task) {
if(task.isSuccessful()) {
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
user.sendEmailVerification()
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(Task<Void> task) {
if (task.isSuccessful()) {
tv.setText("Verification email sent. Please check your email to confirm.");
}else{
tv.setText("Sign Up: Verification email error.");
}
}
});
}else{
tv.setText("Registration NOT succeeded");
}
}
});
}else{
FirebaseAuth auth = FirebaseAuth.getInstance();
auth.signInWithEmailAndPassword("nyinyilwin@gmail.com",
"12345678nnl")
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete( Task<AuthResult> task) {
if (task.isSuccessful()) {
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if(user.isEmailVerified()){
tv.setText("Email confirmed; signed in.");
}else{
//Email confirm မလုပ္ရေသး
tv.setText("Verification email not confirmed yet.");
}
}else{
tv.setText("Sign in failed.");
}
}
});
}
}
}
=======
main.xml
=======
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:text="Not signed up yet."
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv"/>
<Button
android:layout_height="wrap_content"
android:text="Sign up"
android:layout_width="wrap_content"
android:onClick="onClick"
android:id="@+id/bt1"/>
<Button
android:layout_height="wrap_content"
android:text="Log in"
android:layout_width="wrap_content"
android:onClick="onClick"
android:id="@+id/bt2"/>
</LinearLayout>
=======
:)
#firebase
Comments
Post a Comment