我有我的签名证书的哈希密钥,我使用keytool获取如下:
keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl
base64
我已经成功生成了密钥,并将该密钥添加到我的Facebook开发者页面。
当我第一次运行我的应用程序时,它可以正常工作,但是当我注销并重新登录后再次尝试时,它会显示错误消息 - this app has no android key hashes configured
。
我也尝试了以下代码:
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.example.mypack", PackageManager.GET_SIGNATURES);
for (android.content.pm.Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.i("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
但是仍然无法正常工作。Facebook的hello示例应用程序也遇到了相同的问题。我该如何解决这个问题?