【问题标题】:Invalid android_key parameter无效的 android_key 参数
【发布时间】:2013-09-27 14:23:53
【问题描述】:

我正在使用 HTML5、jQuery Mobile、Phonegap 创建一个 Android 原生应用程序。在这里,我必须将登录创建为 facebook。为此,我已经下载了 phonegap SDK 并在 eclipse 中使用。我在 facebook 中创建了 AppId。之后我生成了密钥哈希。我已在 FaceBook 中输入了此密钥。但是,我面临“无效的 android_key 参数”问题。我已经浏览了所有的教程和博客,我已经完成了教程中解释的所有事情。帮助我摆脱这个问题。谢谢!

【问题讨论】:

    标签: facebook phonegap-plugins cordova-2.0.0


    【解决方案1】:

    您所面临的问题是因为您没有使用正确的密钥库文件、签名密钥和密钥算法。您需要生成 Android 密钥的哈希值并将其提交到 Facebook 上的开发者页面。

    如果您在 Windows(特别是 64 位版本)上生成此哈希,请使用适用于 Windows 的 OpenSSL 0.9.8e 或 0.9.8d 版本,而不是 0.9.8k。 em>

    下载 openssl 后,以管理员身份打开命令提示符 (cmd.exe),然后运行以下命令:

    keytool -genkey -v -keystore [keystore_name].keystore -alias [alias_name] -keyalg RSA -keysize 2048 -validity 10000
    

    请注意alias_name,并保留所有密码andriod

    现在,转到您的 phonegap 帐户>>编辑帐户>>单击签名密钥选项卡>>单击“添加密钥...”并提供以下信息:

    Title - anything
    
    Alias - alias_name that you have given while generating the keystore file.
    

    然后,使用您生成的密钥库文件创建一个新的哈希键,然后在您的 Facebook 应用程序中更新该哈希键。使用以下命令生成哈希键。

    keytool -exportcert -alias [alias_name] -keystore [keystore_filename.keystore] | openssl sha1 -二进制 | openssl base64

    应该是这样的!

    【讨论】:

      【解决方案2】:
      try {
      PackageInfo info = getPackageManager().getPackageInfo("com.eatapp", 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) {
      
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-05-02
        • 2016-07-07
        • 1970-01-01
        • 2018-11-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多