将 Facebook 登录与 android 集成时出现无效哈希键错误

Invalid hash key error while integrating facebook login with android

我看到一条消息说“无效的散列键。散列键 ********** 不是...”。但我将此密钥复制到 MyApp/Settings/keyhash 中。然而是行不通的。

我尝试使用命令 keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 生成哈希键。

即使在我使用新密钥更新我的应用程序之后,这也生成了另一个哈希密钥。该应用程序仍然无法运行。

我最初在另一台计算机上安装了这个应用程序,在那里运行良好。才把项目转移到新电脑上,这些问题都来了。

这些是我的 logcat 价值观:

07-28 13:06:40.446  15812-15812/com.zobbr.mettl.zobbr I/System.out﹕ waiting for debugger to settle...
07-28 13:06:40.646  15812-15812/com.zobbr.mettl.zobbr I/System.out﹕ waiting for debugger to settle...
07-28 13:06:40.847  15812-15812/com.zobbr.mettl.zobbr I/System.out﹕ waiting for debugger to settle...
07-28 13:06:41.047  15812-15812/com.zobbr.mettl.zobbr I/System.out﹕ waiting for debugger to settle...
07-28 13:06:41.249  15812-15812/com.zobbr.mettl.zobbr I/System.out﹕ waiting for debugger to settle...
07-28 13:06:41.450  15812-15812/com.zobbr.mettl.zobbr I/System.out﹕ debugger has settled (1359)
07-28 13:06:41.627  15812-15812/com.zobbr.mettl.zobbr D/Your Tag﹕ bPx5YeVB5lOVc+oiEwo/VWuV8+k=
07-28 13:06:41.641  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: switch
07-28 13:06:41.641  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: foreignObject
07-28 13:06:41.641  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: pgfRef
07-28 13:06:41.648  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: pgf
07-28 13:06:41.664  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: switch
07-28 13:06:41.664  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: foreignObject
07-28 13:06:41.664  15812-15812/com.zobbr.mettl.zobbr D/SVGAndroid﹕ UNRECOGNIZED SVG COMMAND: pgfRef

使用此代码生成哈希键

try {
        PackageInfo info = getPackageManager().getPackageInfo(
                "Your package name", 
                PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            Log.d("Your Tag", Base64.encodeToString(md.digest(), Base64.DEFAULT));
            }
    } catch (NameNotFoundException e) {

    } catch (NoSuchAlgorithmException e) {

    }