无法生成正确的释放Key Hash(Android Facebook Sdk)

时间:2015-12-28 23:32:34

标签: android facebook hash release keytool

我正在完成一个使用Android Facebook SDK的应用程序,以便使用Facebook登录。我的应用程序必须使用正确生成的密钥哈希配置,该哈希必须存在于我的计算机上,并且还必须设置到我的Facebook开发者控制台中。

当我从我的Android应用程序打印当前密钥哈希时,使用在其他类似的stackoverflow帖子上找到的代码片段,它会将我过去使用过的旧密码记录记录到我的Facebook Developper控制台中。它可能是debug keyhash。

现在,我尝试使用keytool命令生成 发布 keyhash。 当我在Mac上工作时:

keytool -exportcert -alias MyReleaseKey -keystore ~/.android/myreleasekey.keystore | openssl sha1 -binary | openssl base64

我几乎尝试了一切,但是这个命令从不要求我输入密码,并且永远不会生成文件。有些人说如果不是要求输入密码,那么输入的路径可能无效。 所以,我尝试了所有路径,以及我可以在互联网上找到的所有内容,例如删除Android Studio生成的~/.android/debug.keystore。什么都行不通......

为什么我无法生成发布密钥? 是否必须存储到~/.android/文件夹中? 我知道在生成debug keyhash时,我们必须输入"android"密码作为密钥库密码。我可以输入我想要的发布密钥库密码吗?

1 个答案:

答案 0 :(得分:2)

  

,永远不会生成文件。

为什么期望生成文件?该命令只是输出一个字符串,然后粘贴到Facebook开发控制台。

如何生成发布APK?查看app/build.gradle或转到Android Studio内部的Build -> Generate Signed APK,查找密钥库文件的路径(可能以.keystore.jks结尾)。

现在,简化命令以生成APK,直到您确定已找到路径为止。仅使用

keytool -exportcert -alias MyReleaseKey -keystore ~/.android/myreleasekey.keystore

不会屏蔽任何错误,并告诉您确切的错误。