使用iOS图形API检索Facebook签入-无数据
我正在尝试使用Facebook的Graph API从iPhone应用程序中检索自己的签入列表。我请求了一个令牌,可以访问我的个人资料信息和朋友列表,但当我请求签入时,我总是返回一个空记录集。我猜这与我请求的权限有关,但是我可以在Facebook Graph API Explorer()上使用相同的权限进行查询,并且我确实获得了数据 令牌请求:使用iOS图形API检索Facebook签入-无数据,ios,objective-c,facebook,facebook-graph-api,Ios,Objective C,Facebook,Facebook Graph Api,我正在尝试使用Facebook的Graph API从iPhone应用程序中检索自己的签入列表。我请求了一个令牌,可以访问我的个人资料信息和朋友列表,但当我请求签入时,我总是返回一个空记录集。我猜这与我请求的权限有关,但是我可以在Facebook Graph API Explorer()上使用相同的权限进行查询,并且我确实获得了数据 令牌请求: NSArray *perm = [NSArray arrayWithObjects: @"user_status", @"user_events
NSArray *perm = [NSArray arrayWithObjects:
@"user_status", @"user_events", @"user_location",
@"friends_checkins", @"friends_status", nil];
[FBSession openActiveSessionWithReadPermissions:perm
allowLoginUI:YES
completionHandler:
^(FBSession *session,
FBSessionState state, NSError *error) {
//handle the session opening
}];
然后,当我尝试检索签入时(在单独的视图控制器中):
我无法找出可能缺少的内容。您是否尝试打印当前会话状态和错误!如果你没有到达
的循环块,那么可能会出现错误!错误
为nil
(执行进入for
循环,但不进入循环)。我已将打印的会话描述添加到问题中。谢谢你的建议。是的,你需要为自己的签入列表和朋友的签入列表分别获得用户签入
和朋友签入
,有关更多详细信息,请访问该网站-谢谢。添加您的评论作为答案,以便我可以将其标记为已回答。
[[FBRequest requestForGraphPath:@"/me/checkins"] startWithCompletionHandler:
^(FBRequestConnection *connection,
NSDictionary<FBGraphObject> *checkins,
NSError *error) {
if (!error) {
NSLog(FBSession.activeSession.description);
NSArray *data = [checkins objectForKey:@"data"];
for (FBGraphObject *c in data) {
//execution never gets here because data is empty
}
}
}];
<FBSession: 0x15555555, state: FBSessionStateOpen, loginHandler: 0x5555555, appID:
55555555555, urlSchemeSuffix: , tokenCachingStrategy:<FBSessionTokenCachingStrategy:
0x15555555>, expirationDate: 4001-01-01 00:00:00 +0000, refreshDate: 2013-05-15 06:55:56
+0000, attemptedRefreshDate: 0001-12-30 00:00:00 +0000, permissions:(
"user_status",
"user_events",
"user_location",
"friends_checkins",
"friends_status"
)>