Facebook iOS SDK:请求发布操作时如何处理跳过按钮?
我有一个代码,可以通过“发布行动”权限登录Facebook。 以下是片段:Facebook iOS SDK:请求发布操作时如何处理跳过按钮?,ios,xcode,facebook,sdk,Ios,Xcode,Facebook,Sdk,我有一个代码,可以通过“发布行动”权限登录Facebook。 以下是片段: NSArray *facebookPermissions = [NSArray arrayWithObjects:@"publish_actions", nil]; [FBSession openActiveSessionWithPublishPermissions:[self facebookPermissions] defaultAudience
NSArray *facebookPermissions = [NSArray arrayWithObjects:@"publish_actions", nil];
[FBSession openActiveSessionWithPublishPermissions:[self facebookPermissions]
defaultAudience:FBSessionDefaultAudienceFriends
allowLoginUI:YES
completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
NSLog(@">>> Permissions available: %@", FBSession.activeSession.permissions);
}];
当执行该方法时,用户将被重定向到Mobile Safari Facebook页面,并询问Facebook是否允许访问其帐户
屏幕1:
APPNAME would like to access your public profile and friend list.
[CANCEL] [OK]
按OK后,由于我们使用openActiveSessionWithPublishPermissions方法,第二个页面将出现,询问facebook是否允许代表您发布内容
屏幕2:
APPNAME would like to post to your friends on your behalf.
[AUDIENCE] [SKIP] [OK]
棘手的是,当用户单击“跳过”按钮时,回调列表中的日志仍然是可用权限之一。这是不正确的。
错误也为零。如何正确地检测到这一点
这是日志:
2013-07-06 16:35:59.037 FbSandbox[56213:c07] >>> Permissions available: ("publish_actions")
提前谢谢 您可以通过me/permissions
验证接受的权限。这将列出用户允许的权限。将此列表与您请求的权限交叉引用,您将能够找出哪些被接受,哪些被跳过。这似乎就是答案。绝对糟糕的API设计。