Objective c FBNativeDialogNotSupported Facebook sdk 3.1
随着FacebookSDK3.1的发布,它有一个类可以在iOS 6中为Post启动FacebookNative对话框 下面是它的代码Objective c FBNativeDialogNotSupported Facebook sdk 3.1,objective-c,ios,facebook-graph-api,facebook-ios-sdk,Objective C,Ios,Facebook Graph Api,Facebook Ios Sdk,随着FacebookSDK3.1的发布,它有一个类可以在iOS 6中为Post启动FacebookNative对话框 下面是它的代码 [FBNativeDialogs presentShareDialogModallyFrom:currentController initialText:nil image:nil url:nil handler:^(FBNativeDialogResult result, NSError *error) { //Print Error
[FBNativeDialogs presentShareDialogModallyFrom:currentController initialText:nil image:nil url:nil handler:^(FBNativeDialogResult result, NSError *error) {
//Print Error
}];
Error Domain=com.facebook.sdk Code=7“操作无法完成。(com.facebook.sdk错误7.)”UserInfo=0x1e5e0930{com.facebook.sdk:NativeDialogReasonKey=com.facebook.sdk:NativeDialogNotSupported
因此,我尝试先使用以下代码登录,然后启动FBNativeDialog。但是,当Safari中按下Facebook权限窗口的OK按钮时,它不会进入完成处理程序
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;
}
}];
在Safari中按下Facebook权限窗口的OK按钮时
为了使用本机共享对话框,您需要在iOS 6设备/模拟器上设置Facebook帐户。一旦设置完毕,您还将获得本机iOS权限对话框,因此不应该有应用程序切换到Safari登录。请参阅我对的类似回复,您是否配置了Facebook帐户?下面是我尝试进一步使用的代码R