我在Google Play上传了我的全功能应用程序,当从那里下载时,facebook登录无效!我正确配置我的Facebook应用程序并使用eclipse环境。搜索后,可以通过facebook键哈希来完成。但是,我得到了它:
How to generate Key Hash for facebook SDK In Mac
似乎还必须获得分发的密钥哈希......但是如何?谢谢。
答案 0 :(得分:2)
备选方案1:
将此功能与使用发布密钥签名的应用一起使用。 不从Eclipse部署的那个。
在您应用的第一个活动中运行此段代码:
try {
PackageInfo info = getPackageManager().getPackageInfo(
"YOUR_PACKAGE_NAME", PackageManager.GET_SIGNATURES);
for (Signature signature: info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.e("FACEBOOK APP SIGNATURE", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
这一行:Log.e("FACEBOOK APP SIGNATURE", Base64.encodeToString(md.digest(), Base64.DEFAULT));
将在DDMS中记录Key Hash。
备选方案2:
C:\Program Files\Java\jre7\bin
openssl sha1 -binary debug.txt > debug_sha.txt
然后,
openssl base64 -in debug_sha.txt > debug_base64.txt
完成! debug_base64.txt 包含您的Key Hash。在您的应用控制台中复制此内容即可完成设置。
在我的经验中,这两种方法都给了我正确的Key Hash。但是,在少数情况下(相当随机的),第一种选择没有给出正确的Key Hash,而第二种选择始终有效。看看哪些适合你。
答案 1 :(得分:0)
在生成发布哈希键时,请注意
生成用于生产的哈希密钥时,您需要在Windows上使用openssl-0.9.8e_X64.zip
,不能使用openssl-0.9.8k_X64.zip
版本会产生不同的哈希键,由于某些原因9.8k无法正常工作,而9.8e则可以。
OR
使用以下流程
这就是我解决这个问题的方法
将您的APK下载到Java jdk \ bin文件夹中的PC
就我而言C:\Program Files\Java\jdk1.7.0_121\bin
转到java jdk\bin
文件夹并运行cmd然后
在您的cmd中复制以下命令
keytool -list -printcert -jarfile yourapkname.apk
将SHA1值复制到剪贴板
像这样CD:A1:EA:A3:5C:5C:68:FB:FA:0A:6B:E5:5A:72:64:DD:26:8D:44:84
并打开Hex To Base 64,将您的SHA1值转换为base64。
答案 2 :(得分:0)
尝试此解决方案,对我来说我遇到了同样的错误,但是尝试几个小时后现在可以正常工作。
Login Error: There is an error in logging you into this application. Please try again later