Unity — FaceBook Пользователь отменил авторизацию…

Проблема с которой многие сталкивались и будут сталкиваться. Все сделано правильно, в вашей игре есть кнопка «войти через FaceBook», и нажав ее выплывает заветное окно, спрашивающее разрешение на предоставление прав приложению, но… Но после нажатия «Ок», вместо авторизации, появляется сообщение что пользователь отказался от авторизации. И это при том, что в редакторе все хорошо! Не волнуйтесь — есть решение!

Пришлось и мне поломать голову над этим вопросом.

Решение простое, предполагаю, что вы уже перерыли тонны статей и форумов с поиском решения и первую проблему с хеш ключами решили. К слову, если вы зашли в меню FaceBook Settings у вас нет предупреждения о не найденном Open SSL и нет критической ошибки (такое возможно если вы таки установили библиотеку, но вместо предупреждения стали получать критическую ошибку, которая не дает компилировать приложение.

И так решение: Не буду вдаваться в подробности, просто сделайте.

Скопируйте свой файл apk (последний из удавшихся) в папку bin от вашей JDK. После выполните такую команду:

keytool -list -printcert -jarfile YOUR_APK_NAME.apk

Результатом выполнения команды будет много текста и значений, среди них найдите SHA1 и примерно вот такое значение:

79:D0:E6:80:4E:27:1E:D1:89:28:CB:D7:E6:BE:2E:0C:FB:24:88:52

Копируем это значение и переходим на эту страничку:

http://tomeko.net/online_tools/hex_to_base64.php

Генерируем ключ, и полученный результат добавляем в список ключей на странице приложения в FaceBook Developers.

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

Вот и вся проблема. Конечно, возможны и другие ошибки, но в моем случае — это оказалось то что надо.

А теперь о причинах возникновения такой проблемы.

Дело в том, что в редакторе Unity есть поле с генерированным ключом, и разработчики от FaceBook говорят, что именно его надо добавить на странице приложения. Но нюанс — это дебаг ключ, т.е. ключ на время тестирования. Его хватает для запуска и проверки под редактором, или там где нет приложения FaceBook. А вот когда вы компилируется проект и получаете релиз версию, тут этот ключ роли не играет, требуется именно релиз ключ приложения. Но об этом почему то умалчивается. Либо я плохо искал.

Какие вопросы могут еще интересовать:

Команду не знаете как правильно выполнить,

Не смогли решить проблему с крит ошибкой после добавления SSL

Вообще не поняли что делать с этой SSL/

Если нужны ответы, пишите в комментариях — отвечу где смогу. Если будет много вопросов напишем статью :)

Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Проверка * Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.