Java 用户注销并再次登录后,将您登录到应用程序时发生Firebase facebook登录错误
我使用firebase facebook登录我的应用程序,当用户第一次从facebook登录时,它会创建帐户并允许用户登录,但在用户注销后,或者如果我删除应用程序数据并再次登录,它会给出错误日志Java 用户注销并再次登录后,将您登录到应用程序时发生Firebase facebook登录错误,java,android,firebase,facebook-android-sdk,firebase-authentication,Java,Android,Firebase,Facebook Android Sdk,Firebase Authentication,我使用firebase facebook登录我的应用程序,当用户第一次从facebook登录时,它会创建帐户并允许用户登录,但在用户注销后,或者如果我删除应用程序数据并再次登录,它会给出错误日志 fbauth = FirebaseAuth.getInstance(); final LoginButton loginButton = (LoginButton) findViewById(R.id.fbsignup_button); loginButton.setR
fbauth = FirebaseAuth.getInstance();
final LoginButton loginButton = (LoginButton) findViewById(R.id.fbsignup_button);
loginButton.setReadPermissions("email","public_profile");
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser user = firebaseAuth.getCurrentUser();
if (user != null) {
Intent intent = new Intent(SignupActivity.this, BaseActivity.class);
startActivity(intent);
// User is signed in
Log.d("", "onAuthStateChanged:signed_in:" + user.getUid());
} else {
// User is signed out
Log.d("", "onAuthStateChanged:signed_out");
}
}
};
loginButton.registerCallback(mCallbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.d("FacebookAuthresult", "facebook:onSuccess:" + loginResult);
handleFacebookAccessToken(loginResult.getAccessToken());
}
@Override
public void onCancel() {
Log.d("FacebookAuthresult", "facebook:onCancel");
// ...
}
@Override
public void onError(FacebookException error) {
Log.d("FacebookAuthresult", "facebook:onError", error);
// ...
}
});
private void handleFacebookAccessToken(AccessToken token) {
Log.d("FacebookAuthresult", "handleFacebookAccessToken:" + token);
AuthCredential credential = FacebookAuthProvider.getCredential(token.getToken());
fbauth.signInWithCredential(credential)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
Log.d("FacebookAuthresult", "signInWithCredential:onComplete:" + task.isSuccessful());
if (task.isSuccessful()) {
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
appsettings appData = new appsettings();
if(user.getEmail()!= null)
appData.setEmailofuser(user.getEmail());
if(user.getDisplayName() != null)
appData.setUsername(user.getDisplayName());
if(user.getPhotoUrl() != null) {
appData.setUriofphoto(user.getPhotoUrl());
Log.v("FBReturnedphoto", user.getPhotoUrl().toString());
appData.savePreference(getApplicationContext());
}
Intent intent = new Intent(SignupActivity.this, BaseActivity.class);
startActivity(intent);
}
else {
Log.w("FacebookAuthresult", "signInWithCredential", task.getException());
Toast.makeText(SignupActivity.this, "Authentication failed.",
Toast.LENGTH_SHORT).show();
}
// ...
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
mCallbackManager.onActivityResult(requestCode, resultCode, data);
}
这是一个报告给Facebook工具和支持团队的错误,并已得到确认。您现在可以在上看到错误的状态 您还可以在下面看到堆栈溢出问题:
发布错误日志。现在请检查我添加的错误日志。您好!检查错误状态。已解决。如果我提供哈希键,此错误是否会得到修复?否。这是SDK问题。继续关注bug进度。
08-25 21:07:52.021 19950-19950/android.housekeeping2 D/FacebookAuthresult: facebook:onError
Login Error: There is an error in logging you into this application. Please try again later.
at com.facebook.login.LoginManager.onActivityResult(LoginManager.java:173)
at com.facebook.login.LoginManager$1.onActivityResult(LoginManager.java:139)
at com.facebook.internal.CallbackManagerImpl.onActivityResult(CallbackManagerImpl.java:82)
at android.housekeeping2.Authentication.SignupActivity.onActivityResult(SignupActivity.java:304)
at android.app.Activity.dispatchActivityResult(Activity.java:6456)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3695)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3742)
at android.app.ActivityThread.-wrap16(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1393)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:102)
08-25 21:07:52.021 19950-19950/android.housekeeping2 D/FirebaseApp: Notifying background state change listeners.
08-25 21:07:52.021 19950-19995/android.housekeeping2 V/FA: Activity resumed, time: 201706171