Facebook SDK:在IOS7上无法完成操作(com.facebook.sdk错误2)

Posted

技术标签:

【中文标题】Facebook SDK:在IOS7上无法完成操作(com.facebook.sdk错误2)【英文标题】:Facebook SDK : the operation couldn’t be completed (com.facebook.sdk error 2) on IOS7 【发布时间】:2014-04-08 09:11:21 【问题描述】:

我正在开发一个在 Facebook 上发布状态的应用,但我收到以下错误: 操作无法完成(com.facebook.sdk 错误 2) 尽管当被问及是否可以在 Facebook 上发布帖子时,我按下了确定。 在 iPhone 设置上,我已经重置了隐私和位置,虽然我允许发布,但在“隐私”->“Facebook”下找不到我的应用

这是我获取权限的代码:

-(void)postOnFacebook

if (FBSession.activeSession.isOpen)
    [self postOnWall];
else

    [FBSession openActiveSessionWithPublishPermissions:[NSArray arrayWithObjects:@"publish_actions", nil]
                                       defaultAudience:FBSessionDefaultAudienceEveryone
                                          allowLoginUI:YES
                                     completionHandler:^(FBSession *session,
                                                         FBSessionState status,
                                                         NSError *error)
     
         if (error)
         
             UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error"
                                                             message:error.localizedDescription
                                                            delegate:nil
                                                   cancelButtonTitle:@"OK"
                                                   otherButtonTitles:nil];
             [alert show];
         
         else if (FB_ISSESSIONOPENWITHSTATE(status))
         
             NSLog(@"Sending post on wall request...");
             [self postOnWall];
         
     ];
;

【问题讨论】:

【参考方案1】:

试试这个:

是的,在您看到此错误后,如果您转到“设置”,您将看到此应用的设置已“关闭”。但在这种情况下的问题是,用户从未被提示允许访问——即第一次访问时设置被自动关闭。如果询问用户,那当然可以理解,但事实并非如此(就好像 SDK 默默地自动为用户按下了不允许)。这就是为什么这是一个问题。

在您进一步阅读之前,我想注意的是,一旦设置好,您不能简单地重复该过程来测试它,因为一旦设置好,它永远不会询问用户(甚至删除并重新安装应用程序)没有帮助)。要测试此问题,您需要通过转到设置 -> 常规 -> 重置 -> 重置位置和隐私来重置权限,然后才能尝试再次复制。

通过测试,我发现如果你第一次请求的权限中有offline_access,那么它会给出这个登录错误(并且不会提示用户并将权限设置为OFF)。 SDK不检查并告诉你这个权限是不允许的;它只是无法登录。

【讨论】:

但问题是我的应用甚至没有在 Facebook 的设置下列出... 我看不到开关是打开还是关闭,因为我的应用没有在 facebook 的隐私设置中列出。我已经尝试过重置,但它不起作用。 试试这个链接:***.com/questions/16052078/… 你的问题解决了吗,如果解决了,请投票。 奇怪的是我的iPhone上没有出现这个错误,我是这个应用的管理员。而是在其他 2 iPhone 上出现错误。该应用未处于开发模式!

以上是关于Facebook SDK:在IOS7上无法完成操作(com.facebook.sdk错误2)的主要内容,如果未能解决你的问题,请参考以下文章

操作无法完成。 (com.facebook.sdk.core 错误 3。)

FB ios SDK 3.13.1 操作无法完成(com.facebook.sdk 错误2)

操作无法完成。 (com.facebook.sdk 错误 5。)FACEBOOK 视频上传

操作无法完成 com.facebook.sdk 错误 3 - IOS-react-native-FBSDK

登录 facebook 时无法完成操作。(com.facebook.sdk 错误 2.0)错误。 iOS 6,iPhone3gs

iOS 7 是不是需要 Facebook SDK?