无法从除我以外的其他android设备从我的应用程序登录facebook

无法从除我以外的其他android设备从我的应用程序登录facebook,android,facebook,login,permissions,facebook-login,Android,Facebook,Login,Permissions,Facebook Login,我查过谷歌,stackoverflow,整个互联网……但似乎没有什么能解决这个问题。我想我遗漏了一些可以解决这个问题的细节。以下是说明: 我已经在我的android应用程序中集成了FB登录。它可以在我的设备上正常工作,但在其他设备上运行时,单击“登录”时,它会请求权限,当给予权限时,它会返回到登录状态…这意味着会话不会在其他设备上打开..我还使用以下代码生成哈希键: try { PackageInfo info = getPackageManager().getPacka

我查过谷歌,stackoverflow,整个互联网……但似乎没有什么能解决这个问题。我想我遗漏了一些可以解决这个问题的细节。以下是说明:

我已经在我的android应用程序中集成了FB登录。它可以在我的设备上正常工作,但在其他设备上运行时,单击“登录”时,它会请求权限,当给予权限时,它会返回到登录状态…这意味着会话不会在其他设备上打开..我还使用以下代码生成哈希键:

try {
            PackageInfo info = getPackageManager().getPackageInfo(
                    "MY_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));
                }
        } catch (NameNotFoundException e) { 
 } catch (NoSuchAlgorithmException e) {  
}
我还使用导出应用程序的密钥库(最后一个密钥库)将哈希键放置在应用程序的fb页面上,并使用正确的密码通过以下方法生成哈希键(注意,我使用的是Windows 7):

keytool-列表别名androiddebugkey-keystore~/.android/debug.keystore |openssl sha1-二进制 |openssl base64

当然,我在上面的命令中使用了我的releasekey和最终密钥库。它要求输入密码,我给出了正确的密码。所以我猜,生成的散列键是正确的。如果使用-exportcert而不是-list,则会显示“无效类型-exportcert”

到目前为止,我已经在fb页面上添加了4个关键哈希。沙盒模式已关闭

在过去的6天里,我一直在为这个问题绞尽脑汁。我认为哈希键存在一些问题,导致其他用户不允许从应用程序打开fb会话。如果你遇到过类似的问题,请找人帮忙,或者可能的解决方案/方法也会有帮助

感谢您的时间和宝贵的意见

谢谢

我看到您正在使用调试密钥,请尝试从eclipse助手导出应用程序,然后创建自己的密钥库。一旦创建了密钥,请再次运行上一个命令,更改密钥的名称和密钥库的路径,然后将哈希密钥放在facebook页面上,并在其他设备中安装导出的.apk


“run”选项生成的.apk使用您的调试密钥进行签名,而使用导出助手导出的.apk使用您的个人密钥进行签名。

Hi Constantino,正如我在下面提到的keytool命令“当然,我在上述命令中使用了我的releasekey和最终密钥库”。因此,我使用了从eclipse导出时创建的密钥库和密钥,而没有使用调试密钥库和调试密钥。我在fb页面中放置了该哈希键,然后在其他设备上安装了exported.apk…但仍然存在相同的问题:(@user2499971奇怪的错误,您是否尝试通过USB连接这些设备并检查输出日志?USB调试指南:另外,请记住,如果设备中安装的本机facebook应用程序足够旧,可能还无法实现实际的登录过程。请尝试更新它,并将标记安卓:noHistory=“true”在你的清单文件中?尝试在日志中删除它,它不会显示任何内容…我已检查…我没有在清单文件中添加android:noHistory标记。我遇到了完全相同的问题,你找到解决方案了吗?提前谢谢!几乎相同的问题,
keytool -list-alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64