Facebook + Android 密钥哈希

Facebook + Android Key Hashes

我正尝试在我的 Android 应用程序中登录 Facebook 并在密钥哈希上堆叠:我使用

创建它们
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

然后我把它上传到 facebook。现在,如果我按下登录按钮,Facebook 会显示 1 秒然后关闭,Logcat 中什么也没有显示,有什么问题吗?

马伦

尝试在调用 facebook 对话框之前检查您的 activity 是否正在完成。如果发生这种情况,Facebook 对话框将无法再次调用启动器 activity。

在您的应用开发版本(未签名)中,只需使用此代码获取哈希:

    try {
        PackageInfo info = getPackageManager().getPackageInfo("com.your.package", 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) {
    }

要在您签名的应用程序中记录此内容,请在清单

中使用 android:debuggable="true"
<application
    android:debuggable="true"
    ... 
</application>