20160827 : 強化說明
20160917 : 更新程式碼
自從 FireBase 開放有關行動開發的功能後
行動裝置開發者就可以專注在 UI 和 UX 的呈現
如果 App 還需要註冊、登入才能使用某些功能
這真的是一大福音
不僅省時又好控管也可以針對資料的存取做篩選
我們話不多說
直接開始進入主題吧
為什麼要有這功能? 用途為?
1 . 讓 FireBase 的 資料庫多一層保護
2 . 會員與非會員資料存取的差異
3 . 運用很廣,請大家集思廣益一起在底下留言
有關此篇的註冊是用一般註冊( 電子郵件、密碼 )
如果想用 Gmail、Facebook...等,官方皆有說明
請先完成 FireBase 的前置作業 : Android-FireBase 的前置作業
1 . 安裝 auth 相關 Lib
build.gradle{
.
.
compile 'com.google.firebase:firebase-auth:9.2.0'
}
2 . 確認 FireBase Console 的註冊 Auth 是否有開啟
如果沒開啟郵件註冊
3 . 確認信的內容,除非要有特定格式,否則建議使用預設
4 . 程式 ( 註冊帳號 )
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
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;
import com.google.firebase.auth.FirebaseUser;
public class MainActivity extends AppCompatActivity{
private FirebaseAuth mFirebaseAuth;
private final String TAG = "Auth";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String email = "email";
String password = "password";
mFirebaseAuth = FirebaseAuth.getInstance();
mFirebaseAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
Log.d(TAG, "signInWithEmail:onComplete:" + task.isSuccessful());
if (!task.isSuccessful()) {
Log.w(TAG, "signInWithEmail:failed", task.getException());
}
}
});
}
}
5 . 如果註冊成功,在 FireBase Console 會出現註冊用戶
參考資料 : Authenticate with Firebase using Password-Based Accounts on Android
參考資料 : Firebase Authentication
沒有留言:
張貼留言