当我在我的Android设备上运行我的Android应用程序时,我第一次点击继续使用Facebook 按钮时工作正常。当我在注销后尝试再次登录时显示错误& #34;无效密钥有"密钥与任何存储的密钥哈希都不匹配。我已经重新生成了密钥哈希,并在facebook上替换了新密钥。 btt仍然没有得到结果。
但是同样的应用程序在Emulator上运行得很好。为什么它不能在我的设备上运行?
答案 0 :(得分:1)
以下是您需要做的事情 -
从Code下载openSSl解压缩。在C:/中创建一个文件夹-OpenSSL,并在此复制提取的代码。
检测debug.keystore文件路径。如果你没找到,那么在C:/中搜索并在下一步中使用命令中的Path。
检测您的keytool.exe路径并转到该dir / in命令提示符并在1行中运行此命令 -
$ keytool -exportcert -alias androiddebugkey -keystore "C:\Documents and Settings\Administrator.android\debug.keystore" | "C:\OpenSSL\bin\openssl" sha1 -binary |"C:\OpenSSL\bin\openssl" base64
它会要求输入密码,把android全部放进去。你会得到一个密钥哈希
答案 1 :(得分:0)
嗨将此代码放入任何可访问的活动的onCreate方法中,以在控制台中打印哈希键,并使用该应用程序更新您的facebook链接帐户中的哈希键。
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.facebook.samples.loginhowto",
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}