【问题标题】:Unity Android using Facebook SDK, missing Debug Android KeyHashUnity Android 使用 Facebook SDK,缺少 Debug Android KeyHash
【发布时间】:2013-10-08 09:18:30
【问题描述】:

提前感谢大家,

我遵循了这个文档:

还有这个在 Android 中集成 facebook 的特定视频:

但 Unity 没有填写(如视频中所示)“Debug Android Key Hash”字段,我应该将其插入我的 facebook 应用程序中。

问题截图

我已经安装了:

  • Unity 4.2
  • jdk1.7.0_25(带环境变量Path)
  • 所有 android sdk 版本
  • openssl(在 C:\openssl 中)

我尝试使用 cmd.exe 手动创建“debug.keystore”文件 (Facebook Android Generate Key Hash) 使用 keytool 并将其移至 "C:\Users\(My UserName)\.android",但 Unity 找不到该密钥哈希。

谁能帮帮我?我卡住了……

------------- 已解决 ------------------------

我使用此解决方案 Facebook Android Generate Key Hash 创建了一个 debug.keystore,移至 "C:\Users\(My UserName)\.android" 并在 facebook 上使用此密钥

【问题讨论】:

    标签: android facebook unity3d android-keystore


    【解决方案1】:

    Unity 编辑器中的脚本将尝试运行:

    keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl base64

    (如果您使用的是 mac,则为 mac 等效项)

    见:https://developers.facebook.com/docs/android/getting-started/facebook-sdk-for-android/

    从您的命令看来,您应该拥有以下密钥:

    "C:\Users\(My UserName)\.android"

    而不是

    "C:\Users(My UserName).android"

    (注意文件夹)

    或者,如果您有多个硬盘驱动器并且主驱动器上没有您的 home,则将 debug.android 移动到 home 变量路径指向的位置。

    另一件事是确保 keytool 和 openssl 都在您的路径中。您可以在 shell 中手动执行它们。如果找不到它们,请将它们添加到您的 PATH 中。

    希望对你有帮助。

    【讨论】:

    • 是的,对不起。我以错误的方式写了路径,但我的意思是你说的 - >“C:\ Users(My UserName)\ .android”。我通过shell手动创建密钥来解决。然后我将密钥库移动到“.android”文件夹并使用它。我会尝试在PATH环境变量中添加opensll,谢谢!
    • 没问题。如果这仍然不起作用,还有一个替代解决方案。查看本页第 4 步下的“疑难解答”部分:developers.facebook.com/docs/android/getting-started/… 它可以直接从设备本身获取 keyhash。
    • @brian_jew -- 如果你看到这个,嘿,如果开发 Unity-Mac->Android 的话很难做到这一点。已经惊慌失措地给你发了电子邮件:)这是一个令人难以置信的浪费时间;在 Mac 上使用 Unity 的密钥哈希存在一些令人震惊的问题。 (请注意其他问题:无论我在 Mac 上启动哪个 Unity 项目,我都只会在 FB 设置中获得相同的密钥哈希......这是否正确??)
    【解决方案2】:

    像这样,但不是 eventappkey.keystore 和 path 把 debug.keystore 的路径 那么底部的 SHA1 就是你用于 facebook 的,记得在使用 release keystore 签名时更改它

    【讨论】:

      【解决方案3】:

      您可以尝试在 Android Studio 中创建一个空项目(您可以稍后将其删除)。这样做会在“C:\Users\{username}\.android”目录中生成所需的 debug.keystore 文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多