【问题标题】:Signing Android app on Mac for Facebook App在 Mac 上为 Facebook 应用签名 Android 应用
【发布时间】:2012-10-31 20:27:54
【问题描述】:

我曾经在 PC 上使用 keytool 对我的应用程序进行签名,并获取在 FB 应用程序中使用的哈希码。

现在,我已切换到 Mac,我必须重新签署我的应用程序。

我已经按照为 mac cannot find keytool on a mac 解释的过程进行了操作

我已成功生成签名的 .APK,但我不知道在哪里可以找到我的应用在 Mac 上的 Android Key Hash?

谁能指点我正确的方向。

【问题讨论】:

    标签: android facebook macos


    【解决方案1】:

    我不是 Mac 用户,因此无法为您提供专门针对 Mac 的解决方案,但我可以为您提供更好、更简单的解决方案。

    我在这里发布了类似的答案:https://stackoverflow.com/a/13283088/450534。第二种解决方案适用于任何平台。

    试试这个。这与上面链接的答案完全相同。

    我总是发现最简单的做法是,让 Facebook SDK 告诉你哈希键是什么。这要简单得多,不会超过几分钟。

    第 1 步: 在您的 Facebook SDK 中,找到 Util.java 类。在那,改变这个:

    private static boolean ENABLE_LOG = false;
    

    到:

    private static boolean ENABLE_LOG = true;
    

    第 2 步: 创建一个签名的 APK,传输到您的设备并安装。如果已经安装,自然会提示。

    第 3 步: 在您的 DDMS (Logcat) 运行并且您的设备连接到计算机的情况下,运行该应用程序并继续寻找 key mismatch 警告。该警告具有 实际 哈希键。复制该密钥,转到您的 Facebook 开发者页面并将新密钥添加到列表中。

    您可能还想从我的这个答案中查看 cmets。 https://stackoverflow.com/a/10516629/450534。在第三条评论中,OP 已将回复发布在Logcat

    编辑:官方 Facebook Getting Started - Step 4 页面提供此命令用于在 Mac 上生成密钥哈希:

    keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -二进制 | openssl base64

    【讨论】:

    • 嘿,是的,这个带有警告的技巧很好,但实际上有 keytool,到达那里的关键是打开终端并浏览到 /users/.android 并在那里运行,因为有调试钥匙。此时,您会在屏幕上看到哈希键。无论如何,Tnx! :)
    • @girly:很高兴能帮上忙。我用 FB Docs 的链接编辑了我的答案。也许,这可能会给您一种生成密钥哈希的方法。但我总是发现这是一种获得万无一失的 Key Hash 的好方法。有点像,从马嘴里出来的。 ;-)
    猜你喜欢
    • 2012-11-19
    • 1970-01-01
    • 2012-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-13
    • 1970-01-01
    相关资源
    最近更新 更多