杰西·陈(Jesse Chen)的回答很好。Facebook SDK可以正常运行,请不要破坏它。
我再次遇到这个问题,发现Facebook SDK文档已得到纠正,现在非常好。现在,它指导如何设置调试和释放哈希键。照它说的去做。
以下是我的老故事。缺少可以为旧的Play商店设置两个哈希键的功能,一个用于调试,一个用于已签名的已发布应用程序。
我发现这个问题是在我的Facebook的SDK文档中的情况。它引导我们使用调试键哈希,并将其放入Facebook的应用程序配置中。哈希被引导以这种方式:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
当您从Eclipse调试或运行应用程序时,此方法工作正常。
但是,如果将应用程序发布到Andoid Play,则必须使用自己的发布者密钥来导出签名的.apk文件。使用该.apk,Facebook应用程序控制台中的哈希不再有效!您必须为开发人员密钥获取哈希,如下所示:
keytool -exportcert -alias <developer alias> -keystore ~/.android/<developer keystore> | openssl sha1 -binary | openssl base64
并将其放在已发布应用程序的Facebook应用程序控制台的Android Key Hash中。之后,SSO再次可以很好地处理您签名的.apk文件。