FBSessionLoginBehaviorWithFallbackToWebView 在 safari 中打开,但不在 webview 中

Posted

技术标签:

【中文标题】FBSessionLoginBehaviorWithFallbackToWebView 在 safari 中打开,但不在 webview 中【英文标题】:FBSessionLoginBehaviorWithFallbackToWebView opens in safari but not in webview 【发布时间】:2014-04-02 06:12:04 【问题描述】:

我在我的应用中使用 Facebook 登录。如果安装了本机应用程序,我将遵循 Facebook 的指导方针。安装本机应用程序后,它可以正常工作。但是当它不是我有问题时。

我将 FBSessionLoginBehaviorWithFallbackToWebView 指定为 LoginBehavior。但是,当未安装应用程序时,它会在 Safari 中打开 Facebook 登录页面,而不是在 webView 中。我认为如果用户设备中未安装 Facebook 应用程序,此行为将在 webView 中打开它。

我是否需要先使用任何其他 LoginBehavior 才能使用 Native 应用程序,然后使用 webView 而不是 safari?

【问题讨论】:

【参考方案1】:

试试这个行为:

FBSessionLoginBehaviorForcingWebView

它不会重定向到 Safari

【讨论】:

根据 Facebook 更改的指南,这是不可取的。现在我们必须使用 Facebook 应用程序(如果已安装)。但是即使用户已经安装了 Facebook 应用程序,这也会在 webView 中打开登录页面。如果我错了,请纠正我。 是的,非常正确,如果用户没有安装 facebook 应用程序并且您不想使用 Safari,那么您已经在检查它,那么这是我迄今为止在应用程序中使用的唯一出路也是。 这没有任何默认的 LoginBehavior 吗?我认为 FbSessionLoginBehaviorWithFallbackToWebView 会以顾名思义的方式工作。它会尝试打开一个应用程序,但如果没有安装应用程序,则会隐式使用 webView。 我有同样的问题,但我只用 FBSessionLoginBehaviorForcingWebView 解决了它 如果我这样做,我必须手动分别管理本机应用程序和 webView 的所有内容。你也做过吗?

以上是关于FBSessionLoginBehaviorWithFallbackToWebView 在 safari 中打开,但不在 webview 中的主要内容,如果未能解决你的问题,请参考以下文章