【问题标题】:Generating keyhash for Facebook为 Facebook 生成密钥哈希
【发布时间】:2013-06-22 07:07:41
【问题描述】:

谁能帮忙。

我正在按照AndroidHive 的教程在我的应用程序中实现 Facebook 登录。 它说,所以我从here 下载 OpenSSL,我这样做了。

然后按照 * 上的另一个教程(抱歉忘记复制 URL)生成 keyhash 我...

然后我解压缩并将下载的 OpenSSl 文件夹按照此文件路径 (C:\OpenSSL\openssl-0.9.8k_WIN32) 放在我的 C: 驱动器中。接下来我将路径复制到 \bin (C:\OpenSSL\openssl-0.9.8k_WIN32\bin) 然后,我根据此图像将此路径粘贴到我的系统环境路径中。

所以我的 PATH 现在在我的系统环境路径中看起来像这样 C:\PROGRAM FILES\COMMON FILES\ [此处指定的所有其他路径] ;C:\OpenSSL\openssl-0.9.8k_WIN32\bin

设置完 PATH 环境变量后,我打开 cmd 并输入以下命令: C:>keytool -exportcert -alias androiddebugkey -keystore C:\Users\Hans.android\debug.keystore | openssl sha1 -二进制 | openssl base64

在 Eclipse 中找到的我的 debug.keystore 的路径可以在这里看到。

当我运行上述命令时,我收到一条错误消息,提示“C:\”不能识别为内部或外部命令、可操作程序或批处理文件。

谁能告诉我哪里出错了。我在添加新的 PATH 后尝试重新启动,但它不起作用。 我已更改目录并重新尝试了该命令,但得到的只是访问被拒绝错误。

有人可以帮忙吗?

【问题讨论】:

  • 我为此创建了一个工具,请查看:*.com/a/17732453/2226605 如果我帮助了你,请投票给我的答案。

标签: android facebook openssl


【解决方案1】:

不要输入命令的前四个字符 C:\> 。只需在“keytool”处开始输入即可。

这是在您键入命令之前显示在每个新行上的“提示”。当您看到有关要键入的命令的说明时,您通常会看到这样的提示,只是为了提供上下文并让您知道您正在查看的是命令。所以如果一个网页说要运行

C:\> DIR

这意味着转到您的命令提示符并仅键入 4 个击键:D、I、R、ENTER。

【讨论】:

  • 好的,现在我知道我哪里出错了。感谢您及时的回复。现在似乎 100% 有效。
【解决方案2】:

在 C:\Users\Hans> 之后删除 C:> 并键入整个命令并再次检查。

您还要注意一些事项,请确保您为 Open SSL 和 android 调试密钥提供了正确的路径。

这应该可以解决您的问题。 如果这对您不起作用,请告诉我。

【讨论】:

    【解决方案3】:

    keytool 是 java 工具链自带的工具,你不需要安装 OpenSSL key tool 存在于目录 C:\Program Files\Java\jdk1.7.0_21\jre\bin (在我的情况下是 Windows 8 ),您只需要在 Path 环境变量中添加包含 keytool 的路径。在此之后,您将不会收到有关 keytool 的错误,所有其他过程都会顺利进行。

    希望有效果

    【讨论】: