【发布时间】:2014-03-11 14:14:21
【问题描述】:
我正在构建一个连接到 Facebook 的 iOS 应用程序。我从TokenCacheHowTo 项目中获得了大部分与 Facebook 相关的代码(几乎全部复制)。我遇到了两个问题,一个有一个简单的修复,但我认为可能导致我的第二个问题。
起初登录并没有持续。我已经从 TokenCacheHowTo 复制了所有代码,所以我很困惑为什么并寻找解决方案。最终我找到了这个question,它说如果我从权限参数中删除@[@"basic_info"],它就会起作用。它确实做到了。我仍然对它为什么会起作用感到困惑。注意:我从我的应用委托中的openSessionWithAllowLoginUI 方法中删除了@[@"basic_info"]。
我现在的问题是我想要一个用户朋友列表,所以我在应用程序委托中执行以下请求。
FBRequest* friendsRequest = [FBRequest requestForMyFriends];
[friendsRequest startWithCompletionHandler: ^(FBRequestConnection *connection,
NSDictionary* result,
NSError *error) {
NSLog(@"Under");
NSArray* friends = [result objectForKey:@"data"];
NSLog(@"Found: %i friends", friends.count);
}];
此代码在我的应用程序委托中输出 Found: 0 friends,但如果我将代码放在 TokenCacheHowTo 中的相同位置,它会输出 Found: X friends,其中 X 是我的实际朋友数量。这让我感到困惑,因为我能够从 Facebook 获取用户信息,例如他们的 ID 和姓名,并将其存储在我的服务器上。
我意识到这可能有一个简单的解决方案,但我还没有很好地掌握 Facebook SDK,所以我被卡住了。
【问题讨论】:
标签: ios objective-c facebook facebook-graph-api facebook-ios-sdk