Facebook HashKey Android

#android #facebook #facebook-graph-api

#Android #Facebook #facebook-graph-api

Вопрос:

Я следую руководству в Facebook, и все было в порядке. Примеры приложений работали нормально, но сегодня я получаю:

 Invalid key hash. The key hash HP... does not match any stored key hashes. Configure your app key hashes at http://developers.facebook.com/app/NUMBEROFSAMPLEAPP (355198514515820)
  

Я уже добавил два ключа, которые у меня есть: первый с помощью keytool от Java, а другой с использованием кода, приведенного в Facebook tutorial:https://developers.facebook.com/docs/android/getting-started. Первый начинается с DBxxxx, а второй с HPxxxx.

Какой из них мне следует использовать? Должен ли я добавлять «=» в конце ключа? Почему это не работает, если я добавил два ключа?

Вот код, который я добавил, чтобы получить ключ:

     try {
        PackageInfo info = getPackageManager().getPackageInfo(
                "com.facebook.samples.hellofacebook", 
                PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            Log.e("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
            }
    } catch (NameNotFoundException e) {

    } catch (NoSuchAlgorithmException e) {

    }
  

Ответ №1:

Для facebook SDK версии 3.18:
Длина ваших ключей должна быть 28. Итак, отвечая на ваш первый вопрос: вы должны добавить «=» в конце, если длина вашего ключа меньше 28.
Пытаюсь дать вам ответ на 2-й вопрос (почему это не работает …). Вам необходимо обновить образец приложения с идентификатором приложения, указанным для Facebook при создании «Образца приложения» или чего-либо еще наdevelopers.facebook.com/apps.
Попробуйте прочитать все руководство:developers.facebook.com/docs/android/getting-started/#samples.

Другими словами, вам нужно связать любое приложение с идентификатором приложения из Facebook.
Если вам нужна дополнительная помощь, просто попросите об этом 😉

кстати, 3 хороших подсказки:

  1. Когда вы создаете приложение на Facebook, это дает вам лучший мастер для вашего нового приложения на FB.
  2. Вам совсем не обязательно следовать этим руководствам, чтобы увидеть примеры действий. Просто создайте приложение, выберите его в верхнем левом меню (Приложения) на FB, нажмите «Настройки» ниже на панели мониторинга (на левой панели) и добавьте хэш-ключи, созданные в руководстве. В вашем проекте (eclipse или Android Studio) измените строковое значение «app_id» на /res/values/strings.xml для того, который доступен на странице «Настройки».
  3. По умолчанию вы НЕ можете видеть список друзей… вы должны отправить свое приложение на Facebook, если хотите его увидеть.