Finally, I got the answer above, I was mistaken for the AccessToken in the QBUsers.signInUsingSocialProvider () method. I need to get AccessToken after successfully logging into facebook using
AccessToken accessToken = loginResult.getAccessToken();
Then I need to pass this accessToken inside QBUsers.signInUsingSocialProvider ()
Here is my complete code:
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() { @Override public void onSuccess(LoginResult loginResult) { AccessToken accessToken = loginResult.getAccessToken(); facebooklogin(accessToken); } @Override public void onCancel() { // App code Toast.makeText(getApplicationContext(), "Cancel", Toast.LENGTH_SHORT).show(); } @Override public void onError(FacebookException exception) { // App code Toast.makeText(getApplicationContext(), "Error-Check Network Connection", Toast.LENGTH_SHORT).show(); } }); public void facebooklogin(final AccessToken accessToken) { QBAuth.createSession(new QBEntityCallbackImpl<QBSession>() { @Override public void onSuccess(QBSession session, Bundle params) { String token = accessToken.getToken(); QBUsers.signInUsingSocialProvider(QBProvider.FACEBOOK, token, null, new QBEntityCallbackImpl<QBUser>() { @Override public void onSuccess(QBUser user, Bundle args) { Toast.makeText(getApplicationContext(), "Success QB", Toast.LENGTH_SHORT).show(); } @Override public void onError(List<String> errors) { Toast.makeText(getApplicationContext(), "onError QB", Toast.LENGTH_SHORT).show(); } }); } @Override public void onError(List<String> errors) { Toast.makeText(getApplicationContext(), "onError", Toast.LENGTH_SHORT).show(); } }); }
source share