Приложение Facebook iOS не может войти в систему на устройстве

#ios #facebook

#iOS #Facebook

Вопрос:

Это очень неприятная проблема. Проект DemoApp из iOS SDK от Facebook отлично работает на симуляторе, но когда я устанавливаю его на устройство, он не проходит мимо страницы входа в систему. Единственными изменениями, внесенными в код, были:

1) Заменил AppID в контроллере представления 2) Заменил AppID в Info plist

Приложение компилируется и открывается на устройстве. Кнопка входа в систему переключается на окно с названием Facebook с кнопкой отмены в правом верхнем углу. Внизу окна есть большая синяя кнопка входа. Нажатие на кнопку входа перенаправляет в то же окно. Это единственное приложение Facebook iOS на устройстве. Я удалил остальные. Кроме того, метод fbDidNotLogin() никогда не вызывается. Было несколько других сообщений об этой проблеме, но в данном случае решения, похоже, не сработали. Достаточно ли этой информации, чтобы увидеть, что происходит? Нужно ли создавать приложение для другой цели? Это очень сбивает с толку. Спасибо за вашу помощь!

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

1. Почему бы вам просто не использовать ShareKit. Если вы делаете базовые вещи, публикуя материалы на Facebook, почему бы вам не использовать его?

2. Я хочу получить доступ к Graph API.

Ответ №1:

Нашел это! В Facebook.m есть следующая строка кода:

 [self authorizeWithFBAppAuth:YES safariAuth:YES];
  

iOS SDK попытается использовать приложение Facebook на устройстве. Установка authorizeWithFBAppAuth в значение NO запустит Safari, и это работает.

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

1. Странно, но это помогло. Теперь попытаемся получить авторизацию через приложение. Вам удалось это получить? Пример приложения для взлома Facebook выполняет авторизацию через приложение FB, когда я пытаюсь это сделать, но для моего приложения это всегда было отклонением

2. Хорошо. Моя проблема была очень простой и глупой, но ее было трудно найти 🙂 Я неправильно написал идентификатор пакета iOS в базовой настройке приложения Facebook.

Ответ №2:

1) Заменил AppID в контроллере представления 2) Заменил AppID в Info plist

Вы также должны установить «идентификатор пакета iOS» в настройках приложения. это проверяется перед авторизацией.

Надеюсь, это поможет

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

1. Похоже, это не помогло. Я отредактировал свой оригинальный пост и поместил скриншот экрана авторизации на устройстве. Нажатие кнопки входа в систему обновляет это окно, и ничего не меняется. Метод handleOpenURL никогда не вызывается.

2. Хм, я не вижу скриншота

3. Это не позволило бы мне опубликовать его, потому что я еще не сделал 10 сообщений. Я нашел ответ. Опубликовано ниже. Спасибо за помощь!