2016-01-25 116 views
2

从代码运行时,它运行良好。但是在创建apk之后,它会给出无效的密钥散列Facebook无效密钥哈希错误

这就是为什么我添加了关键的哈希,但仍然得到同样的错误。有错误的keyhash甚至没有匹配我的密钥哈希,我也添加了我自己的密钥哈希。

+0

当你发布版本APK,我需要重新构建的keyhash的,但不知道为什么他们是不同的,此键,FB – PeDuCKA

+0

签署申请@PeDuCKA没有收到您的评论。 –

+0

当您构建发行版本APK时,您需要重新构建keyhash和此密钥以在fb – PeDuCKA

回答

-1

如果你得到错误“无效的密钥哈希并没有任何在Facebook页面的应用程序中找到关键hases的。” 比请检查您的应用程序ID,如果它在你的存储Facebook应用程序ID不同的string.xml比你必须从应用程序ID您的Facebook开发者更新字符串的.xml Facebook的帐号。

+0

中签署应用程序检查了它的应用程序ID是否正确。我不知道密钥哈希在哪里被添加。有没有为我注册了API 2.2我的应用程序,目前我使用的SDK版本4.8.1 –

+0

和密钥哈希相关API版本什么没有任何人在我的球队 –

+0

您可以通过下面的函数由OnCreate中功能让您的密钥散列。 –

0

通过此功能,可以让你的应用程序密钥散列和更新Facebook应用程序的密钥哈希,如果得到同样的错误比请在Facebook的开发者控制台应用程序包名称和应用程序ID。

public void generateHashkey() { 
     try { 
      PackageInfo info = getPackageManager().getPackageInfo(
        "com.integration", 
        PackageManager.GET_SIGNATURES); 
      for (Signature signature : info.signatures) { 
       MessageDigest md = MessageDigest.getInstance("SHA"); 
       md.update(signature.toByteArray()); 

       Log.i("Info", info.packageName + "\n" + Base64.encodeToString(md.digest(), 
         Base64.NO_WRAP)); 
      } 
     } catch (PackageManager.NameNotFoundException e) { 
      Log.d(TAG, e.getMessage(), e); 
     } catch (NoSuchAlgorithmException e) { 
      Log.d(TAG, e.getMessage(), e); 
     } 
    } 
+0

试了一下它给了我一样的终端通过 “密钥工具-exportcert -alias androiddebugkey -keystore〜/ .android/debug.keystore | OpenSSL的SHA1 -binary | OpenSSL的BASE64”。我已经添加了。我还添加了一个给出了错误,但我仍然得到相同的错误 –

+0

使用此功能再次尝试,如果您希望您的应用程序被用于开发人员控制台的检查状态和查看选项,并启用开关对于所有用户都可以使用您的应用程序 –

+0

您得到您的答案或不? –

相关问题