此應用沒有配置Android密鑰哈希。 - 使用Facebook SDK登錄


0 Answers

要生成釋放密鑰的散列,請在Mac或Windows上運行以下命令,替換您的釋放密鑰別名和密鑰存儲的路徑。 在OS X上,運行:

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

在Windows上,使用:

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


參考: https://developers.facebook.com/docs/android/getting-started/#create_hashhttps://developers.facebook.com/docs/android/getting-started/#create_hash

Question

我在我的應用程序中使用Facebook帳號登錄時遇到問題。 我讀到Facebook文檔。 我做了所有步驟作為Facebook Doc。

首先在facebook上使用app登錄 - 成功 ! 而不是註銷應用程序。 我想用我的Facebook帳戶重新登錄。 但不工作 ! 我帶走了這個Excepiton! 請幫幫我 !

例外情況:此應用沒有配置Android密鑰哈希。在http:developers.facebook.com/apps/上配置您的應用密鑰哈希值“APP ID”

Finaly; 我習慣了HashKey Genarate的部分代碼

 try {
        PackageInfo info =     getPackageManager().getPackageInfo("MY PACKAGE NAME",     PackageManager.GET_SIGNATURES);
        for (android.content.pm.Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            String sign=Base64.encodeToString(md.digest(), Base64.DEFAULT);
            Log.e("MY KEY HASH:", sign);
          //  Toast.makeText(getApplicationContext(),sign,     Toast.LENGTH_LONG).show();
        }
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}

我解決了我的問題。 我應該在Facebook上完成設置。 腳步 :

  1. 轉到Facebook開發人員的頁面: https://developers.facebook.com/https://developers.facebook.com/
  2. 打開應用程序選項卡並單擊設置

  3. 將生成哈希鍵粘貼到HashKey的字段上=如果您還沒有它,請獲取密鑰哈希部分代碼

  4. 並且單點登錄將為“是”:單點登錄:啟用此設置。

我想分享我的決心。 也許有人需要此解決方案。 祝你好運 !




Related