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

Операция не может быть завершена. (ошибка com.facebook.sdk 2.) ios6

Привет, я пользуюсь ios6 для входа в facebook, и я получаю эту ошибку как собственное всплывающее окно

Операция не может быть завершена. (ошибка com.facebook.sdk 2.)

Это используемый сценарий. (Я запускаю это на simularor)

Я зарегистрировался в приложении facebook через настройки, и я попытался войти в свое приложение и его работу.

Затем я вышел из фейсбука из настроек и снова вошел в систему с другим пользователем. Затем я попытался войти в приложение. Я получаю эту ошибку.

Я попытался выйти из приложения с помощью команды

[FBSession.activeSession closeAndClearTokenInformation];

Но бесполезно.

Идентификатор пакета в приложении facebook такой же, как в моем приложении ios.

это код, который я использовал для входа в систему

NSArray *permissions = [[NSArray alloc] initWithObjects:@"email", nil];
    [FBSession openActiveSessionWithReadPermissions:permissions
                                       allowLoginUI:YES
                                  completionHandler:
     ^(FBSession *session,
       FBSessionState state, NSError *error) {
         [self sessionStateChanged:session state:state error:error];
     }];

Любая помощь приветствуется.

Это ошибка, которую я получаю

Домен = com.facebook.sdk Код = 2 "Операция не может быть завершена. (ошибка com.facebook.sdk 2.)" UserInfo = 0x9535330 {Com.facebook.sdk: ErrorLoginFailedReason = com.facebook.sdk: SystemLoginDisallowedWithoutError, com.facebook.sdk: ErrorSessionKey =, expirationDate: (null), refreshDate: (null), попыткаRefreshDate: 0001-12-30 00:00:00 +0000, разрешения: (null) > }

Примечание Я получил ту же ошибку в другом случае. В то время это было ошибкой в ​​моем коде

Вместо предоставления разрешения

NSArray *permissions = [[NSArray alloc] initWithObjects:@"email",@"birthday", nil];

i ошибочно делал это как

NSArray *permissions = [[NSArray alloc] initWithObjects:@"email,birthday", nil];

РЕШЕНИЕ Даже после исправления кода я получал ту же ошибку. Мне нужно выйти и войти в facebook с экрана настроек ios. Как только я это сделал, правильный код никогда не вызывал никаких проблем. Обратите внимание, что проблема возникла только на устройстве, которое ранее выполняло багги-код. Заметьте, что вызвало проблему, Надеюсь, эта информация поможет кому-то.

4b9b3361

Ответ 1

Это сработало для меня:

  • Перейдите в приложение настроек вашего iPhone.
  • Откройте настройки Facebook.
  • Прокрутите вниз до своего приложения и убедитесь, что ваше приложение позволяет facebook взаимодействие.

Это может произойти на любом устройстве, поэтому в вашем приложении вам нужно будет правильно обработать эту ошибку. Я считаю, что вы даете пользователям отзыв о том, почему Login With Facebook не удалось и попросите пользователя проверить свои настройки Facebook на своем устройстве.

 - (void)facebookSessionStateChanged:(FBSession *)session state:(FBSessionState)state error:(NSError *)error
{
    switch (state) {
        case FBSessionStateOpen:
            // handle successful login here
        case FBSessionStateClosed:
        case FBSessionStateClosedLoginFailed:
            [FBSession.activeSession closeAndClearTokenInformation];

            if (error) {
                // handle error here, for example by showing an alert to the user
                UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Could not login with Facebook"
                                                                message:@"Facebook login failed. Please check your Facebook settings on your phone."
                                                               delegate:nil
                                                      cancelButtonTitle:@"OK"
                                                  otherButtonTitles:nil];
                [alert show];
            }
            break;
        default:
            break;
    }

Ответ 2

проверьте свой идентификатор Bundle для своего проекта, и вы дадите идентификатор Bundle для своего приложения, которые создают на developer.facebook.com, что они такие же или нет.

Ответ 3

Другая потенциальная причина этой ошибки: попытка получить разрешение для приложения Facebook в режиме песочницы, когда пользователь Facebook не указан в админах приложений, разработчиках или тестировщиках.

Ответ 4

Я решаю свою проблему, передавая разрешение nil во время входа в систему.

[FBSession openActiveSessionWithReadPermissions:nil
                                       allowLoginUI:YES
                                  completionHandler:

Ответ 6

У меня была такая же проблема, и я потратил целый день на выяснение проблемы. Это сообщение об ошибке с помощью SDK для Facebook очень расплывчато. У меня возникла эта проблема из-за того, что метод openURL: перезаписывается в MyApplication. Я удалил перезаписанный метод, и логин facebook работал нормально.

Ответ 7

Для меня проблема заключалась в недопустимых разрешениях - я запрашивал "день рождения" вместо "user_birthday". Стыдно, что сообщение об ошибке, по крайней мере, минимально описательно, просто сказал, что "права недействительны", а не ERROR CODE 2, уберегли бы меня столько времени.