Facebook关键哈希生成错误的格式

时间:2018-06-04 08:46:59

标签: android facebook

我试图使用facebook connect为Android应用生成一个发布密钥哈希。

当我跑步时

keytool -exportcert -alias al1 -keystore "C:\Users\Chris\.android\debug.keystore" | openssl sha1 -binary | openssl base64

生成

Pz80cT8/PyE/PxQ/Pz9QPz8/Pz8K

但根据Facebook表格,它应该没有字符并且有一个尾随符号。

当我复制并粘贴它时会出错

编辑 - 添加图片错误。此密钥与答案生成的密钥不同

生成的密钥是Bc0k73mIke + DkZ7U6l3Y6 + 6FX3w =但图像显示不同

enter image description here

1 个答案:

答案 0 :(得分:0)

请使用以下代码生成哈希密钥 (使用功能)

public static void printHashKey(Context pContext) {
    try {
        PackageInfo info = pContext.getPackageManager().getPackageInfo(pContext.getPackageName(), PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            String hashKey = new String(Base64.encode(md.digest(), 0));
            Log.i(TAG, "printHashKey() Hash Key: " + hashKey);
        }
    } catch (NoSuchAlgorithmException e) {
        Log.e(TAG, "printHashKey()", e);
    } catch (Exception e) {
        Log.e(TAG, "printHashKey()", e);
    }
}

生成此哈希密钥后,将此密钥添加到Facebook控制台。 之后你就可以访问facebook了。

使用命令
对于释放键生成如下步骤:
(仅限Windows用户):

Run the following command in a command prompt in the Java SDK folder:

keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | PATH_TO_OPENSSL_LIBRARY\bin\openssl sha1 -binary | PATH_TO_OPENSSL_LIBRARY\bin\openssl base64

使用此命令并下载SSL Use this link

(仅适用于MAC用户:)

keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | openssl sha1 -binary | openssl base64