iphone - Facebook 对话框登录问题

标签 iphone ios facebook ipad dialog

我使用 Facebook 对话框以这种方式在墙上发帖

[facebook dialog:@"feed" andParams:params andDelegate:self];

如果用户在对话框之前没有登录,登录窗口会出现在对话框中。没关系,但是当用户按下登录对话框时,用户必须再次调用对话框,毕竟将我的消息张贴在他的墙上。强制用户调用对话框两次是很奇怪的,所以任何人都可以帮我解决这个问题吗?

最佳答案

解决此问题的最简单方法是将您的params 存储在ivar 中。然后,当 FBConnect 使用 fbDidLogin 调用您的委托(delegate)时,您可以自动重新发出 dialog:andParams:andDelegate 调用。

更长且更正确的解决方案是,您需要将授权和发布步骤分开。您可以将 fb.accessToken 和到期日期存储在 NSUserDefaults 中,然后在您第一次尝试访问 FBConnect 时调用它们。如果到期日期已过,则调用 authorize:delegate 以获取新的访问 key 。 fbLogin 完成后,您将对话框发布给用户以继续。

或者,你不能重新发明轮子,看看 ShareKit http://getsharekit.com/以获得更完整的解决方案。

关于iphone - Facebook 对话框登录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9224039/

相关文章:

iOS 自动布局结果不正确

ios - 动画时 UIViewController 的方向错误

javascript - 从 Facebook 帖子获取点赞

iphone - 是否有流行的 iOS Twitter 客户端列表及其用于关注和发推文的自定义 URL 方案?

ios - SVProgressHUD 在模态视图的背景中显示

iphone - 每次重启 iPhone App 时 NSHomeDirectory 返回不同的路径

iphone - writeImageToSavedPhotosAlbum 太慢?

ios - watchOS 2 兼容 iOS

iphone - facebook登录后UILabel变为null(UILabel不更新)

android - 带有回调的 Facebook SDK 4.0 AppInviteDialog