在 Swift 中登录 Facebook。 “收到未知方案:授权”

Posted

技术标签:

【中文标题】在 Swift 中登录 Facebook。 “收到未知方案:授权”【英文标题】:Facebook Login in Swift. "Unknown scheme received: authorize" 【发布时间】:2016-11-15 11:47:48 【问题描述】:

我是 Swift 新手,我必须将社交网络登录(Facebook 和 Google)集成到旧应用程序中。此应用将调用为 A。

首先,我创建了一个新项目来了解这两个 SDK。这个应用程序将调用为 B

在了解了A应用之后,没有任何问题,我去了B。

在运行应用程序时尝试集成 Facebook SDK,我收到此错误:

收到未知方案:授权

获取此错误的步骤。

    点击 Facebook 登录按钮 输入我的电子邮件和密码 接受权限 接受登录

屏幕变成全白。 在 B 应用程序中,Facebook 登录完成,回到我的应用程序和 Facebook 登录按钮,更改为注销。

当我为 B 应用程序执行 SDK 中的步骤时,当我按照 Facebook 的说法填写 Info.plist 时。

B -> Info -> URL Types

创建了一个新的 URL 类型

当我对 A 做同样的事情时,将 Info.plist 填入

A -> Info -> URL Types

未创建新的 URL 类型

然后我不得不手动创建它。

这是 A 的 Info.plist

这是 B 的 Info.plist

我认为问题出在这里,但我不知道为什么。

A 不起作用 B 作品

问候

【问题讨论】:

【参考方案1】:

您能否确认 A 和 B 的捆绑标识符相同或不同。

如果不同则have you added both app identifier in Facebook app configuration correctly?

【讨论】:

A 和 B 的包标识符不同。我在 Facebook 开发者中创建了两个不同的应用 只是配置问题,比较App B和App A中的配置,info.plist文件(URL Scheme) 另外,Facebook 开发门户上的两个应用程序配置。 我比较了 A 和 B 应用程序之间的 info.plist。 “facebook”区域没有区别。另外,我检查了 facebook 控制台网站,并且包标识符和 facebook id 是正确的。【参考方案2】:

已修复!问题是调用方法

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool 

而不是

func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool 

【讨论】:

以上是关于在 Swift 中登录 Facebook。 “收到未知方案:授权”的主要内容,如果未能解决你的问题,请参考以下文章

无法在 Xcode Swift Facebook 登录 SDK 中获取访问令牌

无法使用 Facebook SDK IOS Swift 登录 [重复]

在 Swift 中使用 Parse 登录 Facebook

Swift - 立即解析 Facebook 登录默认为用户取消登录

在 iOS9 和 Swift2 中使用 Parse 登录 Facebook

如何在 swift 中注册使用 ParseUI 的 Facebook 按钮登录的 PFUser?