FBSDK 登录 - SFSafariViewController 已禁用?

Posted

技术标签:

【中文标题】FBSDK 登录 - SFSafariViewController 已禁用?【英文标题】:FBSDK Login - SFSafariViewController is disabled? 【发布时间】:2016-09-08 10:32:37 【问题描述】:

我的应用程序在一夜之间遇到了一个问题,我认为这是一个编码错误。问题是 SFSafariViewController 登录窗口(基于 Safari) - 不再显示。相反,它正在启动一个新的 Safari 应用程序,一旦我登录,我现在得到原生 ios 对话框“在“XXXXXApp”中打开他的页面?我没有更改任何设置,根本没有玩任何东西。之后下载 FSBDK iOS 的源代码并进行调试,结果发现“SFSafariViewController”已被 facebook 明确禁用。

我进行了一次图形调用,与应用程序用于启动此端点的调用相同:

https://graph.facebook.com/v2.7/<app-id>?fields=app_events_feature_bitmask%2Cname%2Cdefault_share_mode%2Cios_dialog_configs%2Cios_sdk_dialog_flows.os_version%289.3.0%29%2Cios_sdk_error_categories%2Csupports_implicit_sdk_logging%2Cgdpv4_nux_enabled%2Cgdpv4_nux_content%2Cios_supports_native_proxy_auth_flow%2Cios_supports_system_auth%2Capp_events_session_timeout&format=json&include_headers=false&sdk=ios

并且响应似乎禁用了控制器 SFSafariViewController。这部分有效载荷中的证据:

"ios_sdk_dialog_flows": "default": "use_native_flow": true, "use_safari_vc": false

以前,use_safari_vc 值设置为 true。在任何人的回答中,请记住我想使用 Safari 视图控制器 - 但不要启动 safari,因为它会退回到现在。最新的行为要求打开我的应用程序,我认为 Safari 视图控制器是为了解决这个问题!还要记住,直到今天早上,一切都运行良好。我已尝试多次重新创建我的应用,但仍然存在相同的行为。

帮助,我的 Facebook 用户体验现在很糟糕(请注意,我不关心使用本机行为 - 我只想再次使用 Safari 视图控制器!)

我正在使用 v4.15.0 的 Facebook SDK

干杯

【问题讨论】:

这里相同 - 我们所有的应用程序都使用 Safari 登录,而不是 SFSafariViewController。奇怪的行为! 我在 facebook 开发者系统中记录了一个错误,现在我从服务器获得了预期的行为:ios_sdk_dialog_flows: default: use_native_flow: false, use_safari_vc: true , message: use_native_flow: true 但是,由于我的错误仍然是“开放”,因此还没有官方回应。哦,好吧,至少它又能正常工作了! 【参考方案1】:

我从 Facebook 开发者小组得知这是服务器端的问题,并且该更改已恢复。

【讨论】:

以上是关于FBSDK 登录 - SFSafariViewController 已禁用?的主要内容,如果未能解决你的问题,请参考以下文章

使用FBSDK登录,无法执行segue

使用 FBSDK for iOS 登录冻结

iOS FBSDK 上的 Facebook 登录

在视图控制器之间传递 FBSDK 登录管理器结果

使用 react-native-fbsdk 注销的正确方法

React Native fbsdk - 如何更改 Facebook 登录按钮语言/本地化?