С выпуском 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;
}
}];