使用firebase和facebook登录时出现问题

时间:2017-07-26 06:28:18

标签: android firebase firebase-authentication facebook-login

我的问题是与Facebook签名时我的Firebase身份验证错误,signInWithCredential(AuthCredencial credencial)中的方法OncompleteListener任务结果不成功,我无法理解这是为什么。

@Override
protected void onCreate(Bundle savedInstanceState) {
    ....
    callbackManager = CallbackManager.Factory.create();
    loginButton.setReadPermissions("email", "public_profile");
    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            System.out.println("Entro");
            handleFacebookAccessToken(loginResult.getAccessToken());
        }
    ...
    });

    firebaseAuth = FirebaseAuth.getInstance();
    firebaseAuthListener = new FirebaseAuth.AuthStateListener() {
        @Override
        public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
            FirebaseUser user = firebaseAuth.getCurrentUser();
            if (user != null) {
                // User is signed in
                Log.d("TAG", "onAuthStateChanged:signed_in:" + user.getUid());
            }
        }
    };
}

private void handleFacebookAccessToken(AccessToken accessToken) {

    AuthCredential credential = facebookAuthProvider.getCredential(accessToken.getToken());        firebaseAuth.signInWithCredential(credential).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {

        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            Log.d("TAG","TERMINOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO");
            if (!task.isSuccessful()){
                Toast.makeText(this, "Error al iniciar en firebase", Toast.LENGTH_SHORT).show();
        }

    });
}

如果你运行监听器永远不会改变状态而永远不会转到我的MainActivity,这个代码是由Firebase教程和Facebook教程完成的。 Facebook签到好,但Firebase没有,抱歉我的英文,谢谢!

1 个答案:

答案 0 :(得分:0)

我在浏览网页和其他人,论坛等后解决了问题。发现我在firebase和facebook开发者中的应用ID不一样