【问题标题】:Android Key Hash for Facebook with Cordova带有 Cordova 的 Facebook 的 Android 密钥哈希
【发布时间】:2015-05-10 13:32:22
【问题描述】:

我正在使用 Meteor 和 Cordova 开发一个混合应用程序。我正在尝试配置 Facebook Connect 并让它在 iOS 上运行,但我被困在 android 上。我似乎找不到正确的密钥哈希。 我总是收到消息:

无效的密钥哈希。密钥哈希...与任何存储的密钥哈希都不匹配。

我已经尝试通过以下命令找到正确的密钥哈希:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

和标准密码“android”。我将生成的密钥添加到 Facebook,但没有帮助。我还在以下post 中尝试了该工具。它给了我另一个也没用的钥匙。有什么想法吗?

【问题讨论】:

    标签: android facebook cordova meteor


    【解决方案1】:

    Meteor 在通过meteor run android-device 创建安卓应用时使用自己的调试密钥库。 密钥库位于 ~/.meteor/android_bundle/.android/debug.keystore

    使用以下代码和密钥库密码android 来创建您的密钥哈希:

    keytool -exportcert -alias androiddebugkey -keystore \
    ~/.meteor/android_bundle/.android/debug.keystore | openssl sha1 -binary | openssl base64
    

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题,只需将错误消息上的密钥放在 FB 设置上。它奏效了。

      【讨论】:

      • 很难区分该消息中的某些字符,例如L / I, O / 0. 不能尝试所有组合。
      • 无法从本机流程中复制/粘贴。这就是首先提出这个问题的原因。
      • 我不明白你的意思。在 windows cmd 行或 linux 中,您会收到错误,您只需复制粘贴密钥
      【解决方案3】:

      Facebook keyhash 与您的应用程序的包名称和密钥库一起使用。

      使用生产密钥库对您的 apk 进行签名,并使用以下代码获取 facbook 密钥哈希

      try {
      PackageInfo info = getPackageManager().getPackageInfo("your package", PackageManager.GET_SIGNATURES);
      for (Signature signature : info.signatures) {
          MessageDigest md = MessageDigest.getInstance("SHA");
          md.update(signature.toByteArray());
          Log.e("MY KEY HASH:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
      }
      } catch (NameNotFoundException e) {
      
      } catch (NoSuchAlgorithmException e) {
      
      }
      

      facebook Keyhash 将以 '=' 等于符号开头。 出于测试目的,您可以同时拥有来自调试密钥库和生产密钥库的密钥哈希。

      更多信息请见here

      【讨论】:

      • 我正在创建一个 Cordova 应用程序,就像我说的那样,所以我真的不知道将您提议的 Java 代码放在哪里。必须有不使用自定义代码的解决方案?
      • 该帖子明确指出这是一个 Cordova 问题,尽管代码 sn-p 确实有效,但由于没有解释如何将其放入 Cordova 项目而被否决。
      猜你喜欢
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      • 2018-12-15
      • 2013-11-29
      • 1970-01-01
      • 1970-01-01
      • 2012-01-30
      • 1970-01-01
      相关资源
      最近更新 更多