2016-12-26 200 views
0

我的应用程序有两个登录选项gplus和facebook。用脸书登录并不能正常工作

步骤: 1.登录facebook([email protected]) - ok,然后注销。

  1. 使用gmail([email protected])登录 - ok,然后注销。

  2. 用脸书登录([email protected]) - ok,然后注销。

  3. 用gmail([email protected])登录 - ok,然后注销。

  4. 通过脸书登录([email protected]) - 没有错误,他们要求的页面“你已经给了权限.....”被看作是第二秒,然后自己关闭。并且应用可以回到登录页面。

  5. 用gmail([email protected])登录 - ok,然后注销。

  6. 登录与Facebook([email protected]) - 同样的问题5.
  7. 登录与Facebook([email protected]) - 同样的问题5.
  8. 登录了Gmail(XYZ @ gmail的。 com) - 好的,然后注销。

上述步骤在两个设备上进行了测试。这个问题只能在其中一个设备上看到。

其他设备没有问题。 这两款设备都安装了Facebook-Lite和Facebook Messenger应用程序。

问题的原因是什么?

对于登录

LoginManager.getInstance().registerCallback(mFBCallbackManager, new FacebookCallback<LoginResult>() { 
     @Override 
     public void onSuccess(LoginResult loginResult) { 

      getFBUserInfo(loginResult); 
     } 

     @Override 
     public void onCancel() { 
      // Log "Login attempt canceled. 
     } 

     @Override 
     public void onError(FacebookException error) { 
      // Log "Login attempt failed." 
     } 
    }); 

对于注销:

if (null != AccessToken.getCurrentAccessToken() && null != Profile.getCurrentProfile()) {   
     LoginManager.getInstance().logOut(); 
    } 

回答

0

以我的经验,一旦你通过Facebook获准,并尝试重新进行身份验证,对话框将闪烁第二和消失因为你已经获得了许可。

看看在你的Facebook个人资料的应用程序列表: https://www.facebook.com/settings?tab=applications

注销不会从列表中删除此身份验证的应用程序,它只是结束当前会话。下次尝试对Facebook进行身份验证时,如果检测到此应用已具有权限,则会闪烁对话框并继续。

+0

但这不是问题,我只是描述了我的应用程序的行为。问题是为什么我无法从第三次开始登录? – OnePunchMan

+0

是什么让你觉得你没有登录?您描述的唯一问题是,身份验证窗口快速闪烁。您没有包含检索帐户信息的任何代码,并且在第三次尝试之后未做任何其他操作。包括更多的代码和细节;我很乐意提供帮助。 –