Facebook Key Hash问题:与商店密钥哈希不匹配

时间:2013-12-12 16:48:08

标签: android facebook facebook-graph-api hash

我知道,这个问题被多次询问。但我再次遭遇这个问题。我首先使用命令行创建了一个密钥哈希:

keytool -exportcert -alias androiddebugkey -keystore "C:\Users\admin\.android\debug.keystore" | "D:\Work\FL\SocialNetwork\openssl-0.9.8k_WIN32\bin\openssl.exe" sha1 -binary | "D:\Work\FL\SocialNetwork\openssl-0.9.8k_WIN32\bin\openssl.exe" base64

这给了我一把钥匙:7sfF8f3iv6txnCqYW4zoK3lQRBM =

现在我在Facebook App Settings上添加了这个密钥哈希。然后编译并运行我的Android应用程序。但不幸的是我在logcat中得到了以下异常:

Uh oh. The user cancelled the Facebook login.com.facebook.FacebookAuthorizationException: UnknownError: ApiException:Key hash Dfd2yTJmYckjhuASsVgSXLJ_Tso does not match any stored key hashes.

因此它与哈希键完全不匹配。但是什么是正确的关键。我已经使用我的代码生成了哈希密钥,因为它已在不同的帖子中提出:

try {
          PackageInfo info = getPackageManager().getPackageInfo(
                  "com.social.socialnetworking", 
                  PackageManager.GET_SIGNATURES);
          for (Signature signature : info.signatures) {
              MessageDigest md = MessageDigest.getInstance("SHA");
              md.update(signature.toByteArray());
              Log.d("Testing:", "Hi key ::  "+Base64.encodeToString(md.digest(), Base64.DEFAULT));
              }
      } catch (NameNotFoundException e) {

      } catch (NoSuchAlgorithmException e) {

      }

这回复了以下关键字:torTZ0ApYu3ylNnPUj7fcAjMsfQ =

现在,当我尝试使用此密钥并再次运行应用程序时,它给了我同样的错误。

现在我很惊讶我应该怎么做这个facebook的整合。这是我的关键工具的问题吗?任何人都可以给我正确的解决方案。我确实尝试了不同的选择,也累了。

请帮助..

1 个答案:

答案 0 :(得分:0)

是..现在我能够解决它。问题是在上面的代码包名称略有错误。所以它是一个给出错误的哈希键。我已经尝试添加错误消息中给出的密钥。但那没用。还有一点,我想在这里说:在facebook设置哈希密钥框中,不要删除任何哈希密钥。如果要生成多个hask密钥,只需添加它们即可。我也做错了。 -