我遵循了 Facebook 开发者网站上关于将 Facebook SDK 3.1 集成到 iOS 6 中的所有指示。我的代码在 iPhone 6.0 模拟器上完美运行(用户可以登录 Facebook),但是当我在 iPhone 上运行应用程序时,函数 [ FBRequest requestForMe] startWithCompletionHandler] 不生成响应。根据 Facebook 开发者网站,它要么成功要么返回错误,但两者都没有。该应用程序只是坐在那里等待永远不会出现的响应。我的代码如下:
- (void)populateUserDetails {
if (FBSession.activeSession.isOpen) {
[[FBRequest requestForMe] startWithCompletionHandler:
^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error) {
if (!error) {
NSLog(@"logged in");
} else {
NSLog(@"error: %@", error);
}
}];
} else {
NSLog(@"no active session");
}
}
使用断点,我确定 activeSession 始终处于打开状态,因此实际调用了 startWithCompletionHandler: 方法。也许这是一个构建问题,因为它在模拟器上运行良好?有任何想法吗?