Недействительный ключ Android и Facebook Connect

Когда я пытаюсь реализовать Facebook Connect в своем приложении для Android, я получаю следующую ошибку.

11-02 16: 41: 31.660: D / Facebook-authorize (13194): Ошибка входа: invalid_key: Несоответствие ключа Android. Ваш ключ «8Ioc4p / jMXoU9Lezug4nzmZfFUg» не соответствует разрешенным ключам, указанным в настройках вашего приложения. Проверьте настройки своего приложения на странице http://www.facebook.com/developers.

Я сбросил ключ в приложении Facebook, но он все равно показывает ту же ошибку. Как я могу это исправить?


person Harsha M V    schedule 02.11.2011    source источник
comment
Я заметил в своем AndroidManifest.xml, что у меня было: android: launchMode = singleInstance Я никогда не получал ключевую неверную ошибку. Но когда я удалил эту строку, я начал получать ошибку неверного ключа. Я не знаю, как это связано с этой ошибкой.   -  person Lisa    schedule 03.05.2012
comment
@Harsha M V. Мой хеш-ключ - YLMxxxxxxxxxxxxxxxR8 =, который я получаю в командной строке. но ошибка такая же, как и у вас: YLMxxxxxxxxxxxxxR8 не соответствует разрешенным ключам. Так следует ли мне удалить = из хеш-ключа в конфигурациях ?? Поскольку в принятом ниже ответе отображается =. Как вы ее решили? Спасибо   -  person Archie.bpgc    schedule 24.10.2012


Ответы (10)


Ваш ключ: "8Ioc4p / jMXoU9Lezug4nzmZfFUg"

Теперь скопируйте этот ключ, откройте этот URL и вставьте этот ключ в родном приложении для Android, отмеченном зеленой рамкой.

Введите описание изображения здесь

person Community    schedule 03.11.2011
comment
Привет, приятель, если ты откроешь так много тем, они проголосуют против. u: P используйте кнопку «Редактировать», чтобы редактировать ваши ответы .. на тот же самый. и большое спасибо :) Я пингую тебя напрямую, если мне понадобится помощь, надеюсь, все в порядке - person Harsha M V; 03.11.2011
comment
так что = лишний или не нужно туда добавлять? - person Chintan Khetiya; 14.05.2013
comment
У меня тоже эта проблема с подключением к facebook, и я так много раз проверял, что ключи совпадают, и я использую правильный app_id и все такое, но я все еще не могу заставить его работать. - person CaffeinatedCM; 23.06.2013
comment
Это то, что называется Адрес на стене :) - person Ivan Chernykh; 26.11.2015
comment
@ user647826 Скажите, пожалуйста, почему Facebook показывает эту ошибку? Facebook показывает другой ключ, и я получил другой выпущенный хэш ключа из командной строки. Как я могу получить этот хеш-ключ, прежде чем запустить приложение? Каким будет подходящее решение для будущих приложений? - person Nooruddin Lakhani; 06.07.2017

Я не знаю, решена ли ваша проблема прямо сейчас, но у меня была та же проблема, что и у вас, и теперь я нахожу полное решение.

У вас есть две среды для разработки: отладка и подписанное приложение, когда вы используете эти команды для получения ключа

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 вы получаете ключ от debug.keystore,

Но когда вы подписываете приложение, вы получаете новый ключ, потому что ваше приложение использует новый keystore. Вы можете получить свой «подписанный ключ приложения» с помощью этой программы. http://www.easyfacebookandroidsdk.com/download/keyhash.zip, но вы должны подписаться с тем же хранилищем ключей который вы используете в своем приложении.

person Leonardo Arango Baena    schedule 17.08.2012
comment
+1 thx - по какой-то причине решение keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 в командной строке не сработало для меня, поскольку оно давало другой хэш (и мой проект использует это место для поиска хранилища ключей отладки), но простой SDK facebook, упомянутый в этом комментарии, работал! Сказать, что сгенерированный хеш на несколько символов отличается от того, который сообщается в приложении при ошибке (+ to -, _ to /) - что странно. - person Dori; 30.08.2013
comment
У меня такая же проблема, когда подпись моего приложения не совпадает с указаниями FB для выходов keytool. Кто-нибудь знает, почему это так? - person swooby; 17.02.2015
comment
Что мне делать с этим zip-файлом? - person Katedral Pillon; 19.03.2015

Ваш ключ

8Ioc4p/jMXoU9Lezug4nzmZfFUg

Этот ключ зашифрован вашим устройством, поэтому мы должны сообщить этот ключ пользователю Facebook (в вашем приложении, которое вы создаете в Facebook).

Теперь вам нужно скопировать этот ключ в собственное приложение, а затем сохраните его. Через несколько минут вы получите полный доступ.

person Community    schedule 02.11.2011
comment
как я могу установить этот ключ в свое приложение. похоже, что это ключ отладки по умолчанию для моей установки. - person Harsha M V; 02.11.2011

Ошибка для меня была вызвана несоответствием между моим ключом отладки, когда я тестировал свое приложение, и ключом выпуска, когда я подписывал версию выпуска.

11-02 16: 41: 31.660: D / Facebook-authorize (13194): Ошибка входа: invalid_key: Несоответствие ключа Android. Ваш ключ «8Ioc4p / jMXoU9Lezug4nzmZfFUg» не соответствует разрешенным ключам, указанным в настройках вашего приложения. Проверьте настройки своего приложения на странице http://www.facebook.com/developers.

Если вы скопируете и вставите 8Ioc4p / jMXoU9Lezug4nzmZfFUg в поле Android Key Hash в настройках приложения Facebook, он должен работать. Если вы снова получите эту ошибку (показывающую другое значение ключа) при тестировании подписанной версии выпуска, скопируйте этот дополнительный ключ в поле хэша после исходной записи, чтобы у вас было два значения.

Я был удивлен, что в поле Key Hash было разрешено более одной записи, но, похоже, это нормально, и это решило проблему для меня как для тестовой, так и для выпускной версии.

person brandall    schedule 16.09.2012
comment
Я проголосовал за это только потому, что решение сработало для меня - вставка хэша ключа сообщения об ошибке в поле Key Hashes настроек приложения FB. - person Pup; 24.07.2015

Ключ отладки собственного приложения Android создается автоматически с использованием debug.keystore файла, расположенного по адресу ~/.android/debug.keystore. Когда вы разрабатываете свое приложение на нескольких машинах, у вас должен быть один и тот же debug.keystore файл ...

Как только это будет сделано, вы можете вставить ключ отладки собственного приложения Android на страницу настроек Facebook вашего приложения.

person ashvayka    schedule 03.01.2012

Фактически вы передаете не этот ключ напрямую, а значение Base64 этого ключа.

См. https://developers.facebook.com/docs/mobile/android/build/#sig, в котором объясняется, как это сгенерировать.

person Deepak G M    schedule 23.01.2012

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

person Kiran Babu    schedule 02.11.2011

Вы можете использовать приложение Facebook в своем приложении, чтобы использовать его. В этом исходном коде для Есть интеграция с Facebook.

person Community    schedule 02.11.2011

Если ключ недействителен, вам необходимо создать новое приложение Facebook на сайте разработчиков Facebook. Он предоставляет вам новый ключ. Используйте этот ключ в своей демонстрации на Facebook.

person dilipkaklotar    schedule 02.11.2011
comment
вы также можете загрузить код для Facebook по этой ссылке github.com/facebook/facebook-android-sdk < / а> - person dilipkaklotar; 02.11.2011

У меня есть эта проблема, я решил ее, удалив "C: \ Users \ user_name.android \ debug.keystore" и сгенерировав новый с eclipse. Затем я меняю старый хеш-ключ из Facebook, и он работает!

person facudev    schedule 13.11.2013