7
我有一个代码以'publish_actions'权限登录Facebook。 这里的片段:Facebook iOS SDK:请求publish_actions时如何处理SKIP按钮?
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);
}];
当执行该方法,用户将被重定向到移动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]
棘手的部分是,当用户点击跳过按钮,在日志中的回调仍然列出'publish_actions'
为可用的权限之一。这是不正确的。 error
也是零。我如何正确检测这个?
这是日志:
2013-07-06 16:35:59.037 FbSandbox[56213:c07] >>> Permissions available: ("publish_actions")
提前感谢!
这似乎是答案。绝对可怕的API设计。 –