我正在使用 HTML5、jQuery Mobile、Phonegap 创建一个 Android 本机应用程序。在这里,我必须将登录创建为 facebook。为此,我已经下载了 phonegap SDK 并在 eclipse 中使用。我在 facebook 中创建了 AppId。之后我生成了密钥哈希。我已在 FaceBook 中输入了此密钥。但是,我面临“无效的 android_key 参数”问题。我已经浏览了所有的教程和博客,我已经完成了教程中解释的所有事情。帮助我摆脱这个问题。谢谢!
问问题
1466 次
2 回答
0
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) {
}
于 2014-01-28T11:26:47.357 回答
0
由于您没有使用正确的密钥库文件、签名密钥和密钥算法而面临的问题。您需要生成 Android 密钥的哈希值并将其提交到 Facebook 上的开发人员页面。
如果您在 Windows 上生成此哈希(特别是 64 位版本),请使用适用于 Windows 的 OpenSSL 0.9.8e 或 0.9.8d 版本,而不是 0.9.8k。
下载 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
应该是这样!
于 2013-10-11T13:37:52.617 回答