"Вход в аккаунт отменен игроком" в facebook api для Unity IOS (только если у вас есть приложение facebook на устройстве)

Я использую единство facebook api 4.3.6 для ios. Его работа прекрасна, если у меня нет устройства #facebookapp на моем устройстве. Как только я загружу его и попробую войти в систему, он приведет меня к #facebookapp и перенаправит снова на мою игру с обратным вызовом

FB Login callback: {"is_logged_in": false, "user_id": "", "access_token": ""} Вход в систему отменен игроком

Это происходит, только если у меня загружено приложение facebook! Я думаю, что некоторые из них относятся к кешу, но точно не знают, что это такое. При удаче?

3 ответа

Я считаю, что это не связано с Unity. Вот несколько причин, по которым я столкнулся

  1. Вы должны спросить разрешения на чтение и запись отдельно. Подождите, пока вы не получите разрешения на чтение, чем запрос на отправку для разрешения на запись.

  2. Убедитесь, что ваше приложение разрешено входить в систему (если на вашем устройстве установлено приложение FB)

  3. Убедитесь, что ваш идентификатор пакета приложений добавлен в developer.facebook.com.


Вот что помогло мне решить эту проблему с Unity Facebook-Android.

установка режима песочницы:

  1. Перейдите на страницу https://developers.facebook.com/apps
  2. Выберите соответствующее приложение из раскрывающегося списка.
  3. Перейдите в раздел "Статус и обзор" из таблицы в левой части страницы.
  4. Вы хотите сделать это приложение и все его живые функции доступными для широкой публики? - Выберите переключатель, чтобы установить значение YES/NO.

если кнопка ВКЛ/ВЫКЛ отключена, вернитесь в Настройки и введите действительный адрес электронной почты.


Я понял, почему, когда на устройстве установлено приложение facebook, мое приложение не может войти в facebook.

  • Во-первых: программное обеспечение OpenSSL неправильно создает keyhass. Я загрузил OpenSSL отсюда: http://code.google.com/p/openssl-for-windows/downloads/list, и он неправильно создает keyhash. Я использовал другое программное обеспечение OpenSSL, вы можете скачать его здесь: https://www.dropbox.com/sh/t6tt44dc2nm6vza/6mp1W74GiZ, он создает кешаш справа.

  • Второй: в классе FacebookAndroidUtil.cs, строка 62, вы добавляете System.Environment.GetEnvironmentVariable("HOMEDRIVE") перед System.Environment.GetEnvironmentVariable("HOMEPATH"). Facebook SDK требует файл debug.keystore в: C:\Users\UserName.android\debug.keystore. Если Редактор Unity, Edit Setting Facebook еще не создал хеш-ключ отладки Android. Затем используйте программное обеспечение Eclipse, создайте и запустите любой проект. Eclipse будет генерировать debug.keystore. Если он не создается в папке: C:\Users\UserName.android\debug.keystore, затем найдите его, скопируйте и вставьте в C:\Users\UserName.android\debug.keystore

  • В-третьих: опубликуйте приложение в Facebook, поэтому убедитесь, что оно: "Это приложение является общедоступным и доступно для всех пользователей".

licensed under cc by-sa 3.0 with attribution.