FBNativeDialogNotSupported Facebook sdk 3.1
Posted
技术标签:
【中文标题】FBNativeDialogNotSupported Facebook sdk 3.1【英文标题】: 【发布时间】:2012-09-30 06:58:05 【问题描述】:随着 Facebook SDK 3.1 的发布,它有一个类可以在 ios 6 中为 Post 启动 Facebook 原生对话框。
下面是它的代码。
[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 权限窗口的 Okay 按钮时,它不会进入完成处理程序。
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;
];
【问题讨论】:
你配置了facebook账号吗? 这是我进一步尝试的代码pastebin.com/nx89KxaJ 【参考方案1】:当在 Safari 中按下 Facebook 权限窗口的 Okay 按钮时
您需要在 iOS 6 设备/模拟器上设置 Facebook 帐户才能使用本机共享对话框。完成此操作后,您还将获得本机 iOS 权限对话框,因此不应有应用程序切换到 Safari 登录。查看我对http://facebook.***.com/a/12681352/1712979的类似回复
【讨论】:
以上是关于FBNativeDialogNotSupported Facebook sdk 3.1的主要内容,如果未能解决你的问题,请参考以下文章