我在我的项目中使用最新的Facebook iOS SDK。我已按照自己的指南使用FBLoginView成功实现了Facebook登录: https://developers.facebook.com/ios/login-ui-control/
这适用于大多数人,但是有些人遇到他们无法登录 - 收到错误消息,说他们需要接受所需的权限才能登录。即使他们明确接受这些权限!
我使用与上述链接(靠近页面底部)的示例相同的错误处理,似乎触发了FBErrorCategoryUserCancelled类型的错误。
我无法在我的任何Facebook帐户上模拟模拟器和iPhone上的错误。然而,多个人正在经历这个问题而没有任何重要的共同点。我该怎么办?
4月24日更新
我的WelcomeViewController
是处理Facebook登录的视图。在.m
文件中,我有以下代码来处理权限:
- (void)viewDidLoad
{
[super viewDidLoad];
// Facebook login permissions
loginView.readPermissions = @[@"email"];
loginView.publishPermissions = @[@"publish_actions"];
loginView.defaultAudience = FBSessionDefaultAudienceFriends;
}
4月24日更新第2部分
在我的测试人员的帮助下,我已经解决了问题。遇到登录问题的每个人都将Facebook与iOS集成在一起 - 即他们在iOS上登录Facebook(在“设置” - >“Facebook”下)。一旦禁用它 - 它们就可以登录。这是SDK中的错误还是如何处理?
答案 0 :(得分:1)
在Facebook中的应用程序设置中将沙箱模式设置为已禁用。
答案 1 :(得分:0)
如accepted answer to a question with a similiar problem所述,你应该这样做 仅在登录时请求读取权限。
另见iOS 6 Integration文件。
只有在用户实际尝试发布内容时才应申请发布权限 - 这也可以带来更好的用户体验(这样用户就无法感受到您的应用 将以他的名义自行出版。