Подтвердить что ты не робот

Кнопка входа в систему Facebook SDK 4.6 на iOS не использует приложение Facebook для аутентификации

Я использую Facebook SDK v4.6.0 для iOS 9 в простом приложении Swift для добавить кнопку входа в систему в мое приложение ( Я выполнил шаги в Подготовка ваших приложений для iOS 9).

Кнопка входа в систему всегда открывает Safari для аутентификации и никогда не использует собственное приложение Facebook. Это ожидаемое поведение? Можно ли использовать родное приложение (где многие пользователи уже прошли аутентификацию) вместо того, чтобы сразу перейти на веб-логин?

Я пробовал тестировать приложение на своем iPhone, строя и работая с помощью XCode и со сборкой, распространяемой TestFlight. Он всегда открывает Safari для аутентификации, хотя у меня есть собственное приложение, установленное и настроенное.

Я нашел этот важный вопрос, где ответ, похоже, применим только к SDK 3.x. Я также нашел другие вопросы, которые имели ссылки на настройку tryFBAppAuth или authorizeWithFBAppAuth, которые, как представляется, применимы к красным случаям в предыдущих версиях FB SDK. Я не нашел четкого ответа для 4.6.

4b9b3361

Ответ 2

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

<key>LSApplicationQueriesSchemes</key>
  <array>
    <string>fbapi</string>
    <string>fbapi20130214</string>
    <string>fbapi20130410</string>
    <string>fbapi20130702</string>
    <string>fbapi20131010</string>
    <string>fbapi20131219</string>    
    <string>fbapi20140410</string>
    <string>fbapi20140116</string>
    <string>fbapi20150313</string>
    <string>fbapi20150629</string>
    <string>fbauth</string>
    <string>fbauth2</string>
    <string>fb-messenger-api20140430</string>
  </array>

Если вы не настроите белый URL-адрес, ваше приложение iOS не сможет переключиться на это приложение. В этом случае SDK для facebook отобразит Safari вместо родного приложения.

Ответ 3

Собираетесь ли вы с iOS9 SDK (XCode 7.x)? Как упоминалось в странице подготовки FB iOS9, вы должен компилироваться с новыми политиками переключения приложений для SDK.