Android Facebook HashKey无效

时间:2014-12-23 06:04:42

标签: android facebook

我遇到了Android Facebook的关键问题。所以基本上我把我的密钥哈希作为+J+3yf/mrgPgKeg1llIttpSjcws=和我的Facebook应用程序ID 1596000240623060

enter image description here

里面的密钥哈希是使用正确的哈希:+ J + 3yf / mrgPgKeg1llIttpSjcws =

然而,当我尝试从我的Android运行时,当我进入登录页面时,它告诉我无效的关键字UfL1O1VVSEn88zyVkNdltm8X5bM与任何商店哈希键都不匹配。但我没有使用它。有什么想法吗?

提前致谢。

我将这些代码放在onCreate()页面上,我在其中调用了facebook登录名:

try {
        PackageInfo info = getActivity().getPackageManager().getPackageInfo(
                "nyp.edu.eneighbourhood", 
                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) {

    }

从cmd开始,我的做法和你建议的一样。

1 个答案:

答案 0 :(得分:1)

您必须使用debug.keystore生成开发哈希键,如果您有释放密钥,则生成版本哈希密钥。

根据Facebook Doc:

开发哈希

在Mac上:

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

在Windows上:

keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl base64

发布哈希密钥

keytool -exportcert -alias YOUR_RELEASE_KEY_ALIAS -keystore YOUR_RELEASE_KEY_PATH | openssl sha1 -binary | openssl base64

注意:如果您更改了开发机器或eclipse版本,则debug.keystore也会更改,因此您必须再次生成该哈希键。

祝你好运!