iOS Facebook 登录 SDK 4.12

Posted

技术标签:

【中文标题】iOS Facebook 登录 SDK 4.12【英文标题】:iOS Facebook Login with SDK 4.12 【发布时间】:2016-06-14 18:40:00 【问题描述】:

我反对让 Facebook 登录在升级到 SDK 4.12 后正常工作。它在我们(非常)旧的 3.x 实现中运行良好。

我已经按照我能找到的所有文档,一遍又一遍地重新检查我的代码。希望有人能提供一些见解!

我的问题是,它根本不允许一键单点登录。单击 FBSDKLoginButton 时,它总是会弹出 Facebook Web 对话框以输入凭据。这是在实际设备上运行的,已安装并登录 Facebook 应用程序。

为什么我不能让它在不登录 Facebook 的情况下简单地允许访问?

简单代码如下:

FBSDKLoginButton *loginButton = [[FBSDKLoginButton alloc] init];
loginButton.readPermissions =
@[@"public_profile", @"email", @"user_friends"];
loginButton.delegate = self;

委托回调一切正常。唯一的问题是必须在 Facebook 弹出窗口上输入用户/密码。

(我的设备也在其设置中登录了 Facebook。)

谢谢!

【问题讨论】:

ios 9 及更高版本中使用 web 对话框。无论您是否在应用中登录都没关系 这真是太糟糕了。我认为重点是让它成为一种良好的用户体验......在 iOS9 中使用旧的 Facebook SDK,它可以无缝运行。 这是一个更好的用户体验。在 iOS9 中,每个应用程序切换都会弹出一个用户必须批准的对话框。如果他们不批准,他们就会进入一个奇怪的状态。我们不只是切换它,我们测试了大量的东西。他们只会被要求提供电子邮件/密码一次。然后webview就记住了 明白。那么如果用户已经通过 Safari 登录到 Facebook,这些凭据是否可用于 Facebook 登录,并且不需要凭据? (我认为这份文件是这么说的..developers.facebook.com/blog/post/2015/10/29/…)。 正确。所以他们只需要登录一次 【参考方案1】:

为喜欢旧方式的人提供解决方案。使用 SDK 4.5.1。它具有预期的 Facebook 登录流程。您可能会丢失 4.6 中的一些最新功能,但它已经解决了我们所有的问题。

https://developers.facebook.com/docs/ios/downloads

【讨论】:

以上是关于iOS Facebook 登录 SDK 4.12的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ios 中使用 facebook sdk 4.1 获取用户信息?

Facebook通过iOS中的Facebook SDK通过应用程序登录?

Facebook SDK for iOS 处理登录

Facebook SDK IOS登录问题

facebook-ios-sdk 是不是使用 iOS 6 Facebook 集成来支持登录而不打开本机 Facebook 应用程序?

ios facebook登录sdk 4.28.0错误代码3