无法在 iOS 10 上使用 Facebook 登录

Posted

技术标签:

【中文标题】无法在 iOS 10 上使用 Facebook 登录【英文标题】:Can't login using Facebook Login on iOS 10 【发布时间】:2016-11-04 14:14:31 【问题描述】:

我在最新版本的 ios 10 和使用 Cocoapods 的最新 Facebook SDK 上登录 Facebook 时遇到问题。这工作正常,现在不工作了。当我从登录回来时,访问令牌为零。以前不是零。我确实在我的日志中看到了一条消息。我用谷歌搜索了错误,找不到任何东西。我已按照 Facebook 开发者登录指南中的说明进行操作。

2016-11-04 10:10:26.122435 Ghosts[833:83731] FBSDKLog:无效标识符:'fb_mobile_login_native_app_switch_dialog_result'。必须介于 1 到 40 个字符之间,并且只能包含字母数字、_、- 或空格,以字母数字或 _ 开头。```

if ([FBSDKAccessToken currentAccessToken]) 

FBSDKCoreKit 4.17.0

iOS 10.1.1

Xcode 8.1

带有 ARC 的 Objective-C

【问题讨论】:

fb_mobile_login_native_app_switch_dialog_result 有 47 个字符,但“标识符”最多允许 40 个字符(这里很可能是一个简单的变量名。)所以如果这是你自己编写的代码的一部分 - 修复它;如果它是 SDK 代码的一部分,请提交错误报告。 返回成功但没有访问令牌? Chris Slowik,我想通了并发布了答案。我必须使用通知而不是在登录后立即检查。 【参考方案1】:

事实证明,访问令牌之后可以立即为零。您必须等待通知才能使用它。我认为这是一个新要求。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(checkLogIn) name: FBSDKAccessTokenDidChangeNotification object:nil];

.

我认为其他错误消息只是一个警告。

【讨论】:

@deepakssn 查看 Swift 的这个答案。 ***.com/a/30347486/211457

以上是关于无法在 iOS 10 上使用 Facebook 登录的主要内容,如果未能解决你的问题,请参考以下文章

Apple在应用程序中拒绝了facebook登录应用程序

无法在 iOS 上使用 Facebook 登录

通过 facebook ios SDK 结合 Azure 移动服务获取名字和姓氏

Facebook SDK - iOS6 登录弹出窗口无法关闭

无法在 ios 8 的 facebook 上共享自动文本。

如何在 iOS 10 上使用 Facebook iOS SDK