使用Facebook登录时在Firebase中创建新用户

时间:2018-12-24 06:34:11

标签: android firebase firebase-authentication facebook-authentication

当我使用Facebook(firebase)登录时,我正在尝试创建新的用户数据,当我重新登录firebase中的数据重新启动时,你们能告诉我如何使用Facebook登录时创建新用户数据的方法吗? ,这是我的代码(我知道错了)

 private void handleFacebookAccessToken(AccessToken accessToken) {
    final AuthCredential authCredential = FacebookAuthProvider.getCredential(accessToken.getToken());
    gAuth.signInWithCredential(authCredential)
            .addOnSuccessListener(new OnSuccessListener<AuthResult>() {
                @Override
                public void onSuccess(AuthResult authResult) {
                    String emailFB = authResult.getUser().getEmail();
                    String uIdFacebook = authResult.getUser().getUid();
                    userClass = new User(uIdFacebook, "", emailFB, "", "",
                            "", "");
                    FirebaseDatabase.getInstance().getReference("Users")
                            .child(FirebaseAuth.getInstance().getCurrentUser().getUid())
                            .setValue(userClass);
                    Log.d(TAG, "uIdFacebook: "+ uIdFacebook);
                    Toast.makeText(StartScreen.this, "Welcome "+ emailFB, Toast.LENGTH_SHORT).show();
                    Intent intent =  new Intent(StartScreen.this, UserProfileScreen.class);
                    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
                    startActivity(intent);
                    finish();
                }
            }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception e) {
            Toast.makeText(StartScreen.this, "ERROR: " +e.getMessage(), Toast.LENGTH_SHORT).show();
        }
    });

}

0 个答案:

没有答案