Отключить единый вход (SSO) в Facebook IOS SDK - PullRequest
2 голосов
/ 22 июня 2011

Мы создали приложение для iOS, которое использует Facebook SDK.К сожалению, наш клиент попросил отключить фоновую обработку в приложении, и это означает, что схема единого входа в Facebook (SSO) не работает для нас (поскольку наше приложение теперь запускается с нуля, когда оно запускается после входа в систему / авторизации).в приложении Facebook).

Таким образом, вопрос заключается в следующем: можем ли мы отключить единый вход в SDK Facebook iOS таким образом, чтобы он вел себя так же, как в более старых версиях SDK, при этом вход / авторизация Facebook выполнялась в веб-приложении?-view

Ответы [ 4 ]

6 голосов
/ 23 июня 2011

Откройте файл Facebook.m в библиотеке FBconnect и найдите:

- (void)authorize:(NSArray *)permissions
         delegate:(id<FBSessionDelegate>)delegate {

комплект:

   [self authorizeWithFBAppAuth:NO safariAuth:NO];

И FBconnect авторизуется только с внутренним всплывающим окном ...

2 голосов
/ 22 июня 2011

Я не знаю, можете ли вы отключить sso или нет, но у меня есть хитрость для этого (каждый раз, когда для входа на Facebook нужны учетные данные).

напишите эти строки в методе appDelegate d idFinishLaunchingWithOptions

NSHTTPCookieStorage* cookies = [NSHTTPCookieStorage sharedHTTPCookieStorage];
for (NSHTTPCookie* cookie in
[[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) {
NSString *domainStr=(NSString *)[cookie domain];
NSLog(@"%@",domainStr);
if([domainStr isEqualToString:@".facebook.com" ])
{
[cookies deleteCookie:cookie];
}
1 голос
/ 12 сентября 2012

[self authorizeWithFBAppAuth: NO safariAuth: NO];

0 голосов
/ 23 июня 2011

вы можете сохранить состояние вашего приложения перед вызовом процесса аутентификации на Facebook.но если приложение FB находится на телефоне вашего пользователя,

[facebook authorize:permissions delegate:self]

перенаправит вас на него.

Но если у вас есть только основные потребности, вы можете использовать часть веб-просмотраФБ SDK.Использование:

[facebook authorize:permissions delegate:self]

заставит FB SDK отображать веб-просмотр, который позаботится о процессе авторизации.

...