Простая кнопка входа Facebook iOS SDK v.4.0.1 не работает

Я должен интегрировать функцию входа в facebook в свое приложение для iOS. Я скачал последнюю версию Facebook SDK 4.0.1. Я реализовал простую кнопку с классом FBSDKLoginButton. Когда я нажимаю кнопку входа, симулятор переходит в Safari, где я ввожу учетные данные, и приложение авторизуется. Когда он возвращается в представление приложения, кнопка не переключается на кнопку выхода из системы и без токена.

Код идет в ветке result.isCancelled следующего метода

- (void)loginButton:(FBSDKLoginButton *)loginButton
didCompleteWithResult:(FBSDKLoginManagerLoginResult *)result
              error:(NSError *)error {
    if (error) {
        // Process error
    }
    else if (result.isCancelled) {
        // Handle cancellations
    }
    else {
        // Navigate to other view
    }
}

В appdelegate.m я помещаю метод

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    return [[FBSDKApplicationDelegate sharedInstance] application:application
                                                          openURL:url
                                                sourceApplication:sourceApplication
                                                       annotation:annotation];
}

Может кто-то мне помочь, пожалуйста?


person Max    schedule 06.05.2015    source источник
comment
Сначала я бы вернулся через: developers.facebook.com/docs/facebook -login/ios#login-button, чтобы узнать, что вы могли пропустить.   -  person NSWill    schedule 07.05.2015
comment
Может быть полезно увидеть больше кода из вашего контроллера представления, который содержит FBSDKLoginButton.   -  person NSWill    schedule 07.05.2015
comment
Я следую инструкциям по ссылке developers.facebook.com/docs/facebook -login/ios#login-button но я думаю, что в туториале чего-то не хватает   -  person Max    schedule 07.05.2015
comment
Что происходит на реальном устройстве?   -  person Daniel    schedule 07.05.2015
comment
я еще не устанавливал на устройство   -  person Max    schedule 07.05.2015


Ответы (2)


Я решил проблему с кнопкой входа в систему, настроив приложение на панели инструментов разработчиков facebook. Проблема в том, что если я установил

self.loginButton.delegate = self;

когда я нажимаю кнопку LogOut, приложение вылетает с objc_release.

Предложения? Спасибо

введите здесь описание изображения

person Max    schedule 07.05.2015
comment
Спасибо за это! Не удалось найти его в документах FB, и это определенно была моя проблема. Тоже такой очевидный! - person johncorser; 07.06.2015

Из документов вам нужно это:

- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[FBSDKLoginButton class];
...
return YES;
}

https://developers.facebook.com/docs/facebook-login/ios#login-button

person Daniel    schedule 06.05.2015
comment
у меня есть этот код в моем делегате приложения. Без него кнопка не будет отображаться... - person Max; 07.05.2015