Загрузка веб-просмотров iPhone как аутентифицированного пользователя Facebook SSO? - PullRequest
3 голосов
/ 18 июля 2011

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

Моя проблема в том, что когда я пытаюсь передать URL-адрес Facebook в UIWebView (например, посмотреть на чей-то профиль, а затем выполнить какие-либо действия, такие как отправка запроса на добавление в друзья), веб-представление открывается со знаком Опция In / Login снова там, что не должно происходить, так как мой пользователь уже выполнил вход через FB SDK.

Интересно, что открытие URL через openURL запускает приложение Safari и загружает страницу как должным образом аутентифицированный пользователь ... однако, тогда я вне моего приложения:

NSString *url = [NSString stringWithFormat:@"http://m.facebook.com/RobertScoble"];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString: url]];

Итак, мой вопрос: есть ли способ загрузки веб-просмотра через facebook-ios-sdk в качестве аутентифицированного пользователя? Или есть какой-то способ заставить openURL загружать страницу не в Safari, а в моем веб-просмотре?

Заранее спасибо!

Ответы [ 3 ]

1 голос
/ 25 марта 2012

Кроме того, это не уникально для iOS. Использование Android SDK и SSO от Facebook также представит это неудобное взаимодействие с пользователем. То есть, если вы используете комментарии Facebook на основе webView в своем родном приложении для Android и используете единый вход Facebook, для комментариев потребуется аутентификация пользователя.

Насколько мне известно, это ошибка в дизайне мобильных SDK Facebook.

ПРИМЕЧАНИЕ. При выборе не SSO модель аутентификации webView позволит всем встроенным плагинам facebook работать должным образом. По крайней мере, это касается Android.

1 голос
/ 25 марта 2012

Вот ответ из другой темы ...

http://facebook.stackoverflow.com/a/9831872/717418

0 голосов
/ 07 ноября 2011

К сожалению, вы никак не можете это сделать.Сайт Facebook хранит вашу идентификационную информацию (токен авторизации) в cookie-файле, и cookie-файлы не передаются между мобильным сафари и UIWebview в сторонних приложениях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...