2014-03-06 84 views
0

我开发了一个使用Facebook登录登录的应用程序。我正在使用Facebook SDK 3.7中提供的默认登录按钮来提供登录功能。问题是,有些设备无法登录到应用程序。问题发生在少数设备上,超过70%的设备能够登录。android facebook sdk登录问题3.7

的错误是:

Session state:CLOSED_LOGIN_FAILED, token:{AccessToken token:ACCESS_TOKEN_REMOVED permissions:[]} 
+0

添加错误日志,这将帮助我们回答。 – OMAK

+0

错误如下:会话状态:CLOSED_LOGIN_FAILED – sandeep

+0

也许那些30%的设备根本不允许您的应用希望他们允许的任何内容? – mangusta

回答

0

似乎是一个哈希生成问题。

只要使用该解决方案 -

PackageInfo info = getPackageManager().getPackageInfo("<your_package_name>", PackageManager.GET_SIGNATURES); 

for (Signature signature : info.signatures) 
    { 
     MessageDigest md = MessageDigest.getInstance("SHA"); 
     md.update(signature.toByteArray()); 
     Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); 
    } 

这将使用Facebook提供的标准哈希生成。

同样也有提到here

UPDATE:

虽然问题通常与你生成散列和你放置Facebook登录代码的方法的方式,我认为有一些很好的教程在那里从你可以确认你的结果。其中一个如下所述。

如果你想检查一步一步的登录Facebook的方式,然后阅读以下教程using-facebook-sdk-android-development-part-1

+0

您好ved普拉卡什,我在我的应用程序中使用相同的东西。几乎60%的设备记录好,但在某些设备,它不记录。我得到了上面提到的错误。 – sandeep

+0

您从哪种活动生命周期方法调用此登录代码?尝试将其称为'oncreate()'你的活动。 –

+0

我从onCreate()调用。 – sandeep