FBNativeDialogNotSupported Пакет SDK для Facebook 3.1

С выпуском Facebook SDK 3.1 в нем появился класс, который запускает родной диалог Facebook для публикации в iOS 6.

Ниже приведен код для него.

[FBNativeDialogs presentShareDialogModallyFrom:currentController initialText:nil image:nil url:nil handler:^(FBNativeDialogResult result, NSError *error) {
 //Print Error
                    }];

Домен ошибки = com.facebook.sdk Code = 7 «Операция не может быть завершена (ошибка 7 com.facebook.sdk)»

Итак, я попытался сначала войти в систему, используя следующий код, а затем запустить FBNativeDialog. Но он не входит в обработчик завершения, когда кнопка Хорошо нажата в окне разрешений Facebook в Safari.

AppDelegate *appDelegate=[[UIApplication sharedApplication] delegate];
appDelegate.session = [[FBSession alloc] initWithPermissions:[NSArray arrayWithObjects:@"publish_stream", nil]];


                    [appDelegate.session openWithCompletionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
                        switch (status) {
                            case FBSessionStateOpen:
                            [FBNativeDialogs presentShareDialogModallyFrom:currentController initialText:nil image:nil url:nil handler:^(FBNativeDialogResult result, NSError *error) {
                        NSLog(@"Dialog Error= %@",error);
                    }];
                                break;

                            default:
                                break;
                        }
                    }];

person NNikN    schedule 30.09.2012    source источник
comment
вы настроили учетную запись facebook?   -  person Bastian    schedule 30.09.2012
comment
Вот код, который я пробовал дальше pastebin.com/nx89KxaJ   -  person NNikN    schedule 30.09.2012


Ответы (1)


при нажатии кнопки «ОК» в окне разрешений Facebook в Safari

Вам необходимо настроить учетную запись Facebook на устройстве/симуляторе iOS 6, чтобы использовать собственные диалоговые окна общего доступа. После того, как вы это сделаете, вы также получите собственные диалоговые окна разрешений iOS, поэтому приложение не должно переключаться на Safari для входа в систему. См. мой аналогичный ответ на http://facebook.stackoverflow.com/a/12681352/1712979.

person Chris Pan    schedule 01.10.2012