iphone - ios 中的错误(com.facebook.sdk 错误 5.)

标签 iphone ios objective-c facebook facebook-graph-api

在我的项目中,我不会发布任何内容,只是从 FaceBook 获取不同的数据。

有时我正在获取数据但是
大多数时候我都会收到这个错误

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

我的小代码是

permissions = [[NSArray alloc] initWithObjects:@"user_friends",@"read_stream",
@"read_requests",@"user_birthday",@"user_about_me",@"user_hometown",
@"user_location",@"user_likes",@"email",
               nil];


[FBSession openActiveSessionWithReadPermissions:permissions
                                   allowLoginUI:YES
                              completionHandler:
 ^(FBSession *session,
   FBSessionState state, NSError *error) {
NSString *queryNew55 = @"SELECT post_id,fromid,time FROM comment WHERE time > 1375553100 AND post_id IN (SELECT post_id FROM stream WHERE source_id = me())";

     // Set up the query parameter
     NSDictionary *queryParam15 = @{ @"q": queryNew55 };
     // Make the API request that uses FQL
     [FBRequestConnection startWithGraphPath:@"/fql"
                                  parameters:queryParam15
                                  HTTPMethod:@"GET"
                           completionHandler:^(FBRequestConnection *connection,
                                               id result,
                                               NSError *error) {
                               if (error) {
                                   NSLog(@"Error in comment query");
                                   NSLog(@"Error: %@", [error localizedDescription]);
                               } else {

                                   NSLog(@"comments Result: %@", result);


                               }

                           }
      ];

 }];  

我在谷歌上看到了很多关于同一个错误的东西
我也应用了它,但没有什么是永久有效的。

在 FaceBook 应用程序中,沙盒模式等所有内容均已关闭,并且捆绑 ID 已完美设置。

任何帮助(例如链接或代码)或与此相关的任何事情都将是很好的帮助。

最佳答案

我知道这个问题很老,但我的回答可能会帮助其他人。

我在遵循他们的一些代码/教程/文档后遇到了这个错误。

他们的文档和一些示例代码之间似乎存在脱节。

使用

if (FBSession.activeSession.state != FBSessionStateCreated) {
        // Create a new, logged out session.
        self.facebookSession = [[FBSession alloc] init];
    }

[self.facebookSession openWithCompletionHandler:^(FBSession *session,
                                                     FBSessionState status,
                                                     NSError *error) {

不会导致在

中更新 session
FBSession.activeSession 

正在更新。

因此您将有一个打开的 session (self.facebookSession) 和一个未打开的 crated&TokenLoaded session 。

所以调用任何电话:

[FBRequestConnection startForMeWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {

将失败,因为 FBRequestConnection 使用 FBSession.activeSession

因此,如果您打算自己管理 session ,那么在完成处理程序中您可以看到事件 session 。

[self.facebookSession openWithCompletionHandler:^(FBSession *session,
                                                     FBSessionState status,
                                                     NSError *error) {

        [FBSession setActiveSession:session];
        // post or load user data.
    }];

现在看来对我有用,

希望对你有帮助

关于iphone - ios 中的错误(com.facebook.sdk 错误 5.),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19195524/

相关文章:

iphone - XMPP 身份验证返回是,但从未调用 XMPPStreamDidAuthenticate

android - InAppPurchase 验证和独立的游戏逻辑服务器

ios - 如何在动画对象上调用方法?

c++ - 完全限制对文件夹的所有类型的访问

ios - 如何在 IOS 中滚动表格 View 时隐藏导航栏和标签栏

iphone - 修改 tableView 中的 UITableViewCellaccessoryType 时出现问题 :didSelectRowAtIndexPath:

ios - 如何使根导航栏透明,但子导航栏不透明?

objective-c - 以编程方式更改锁屏壁纸iphone

iphone - GameCenter 横向方向锁定

iphone - 注册推送通知