iOS上的Facebook SDK 4.6loginbutton不使用Facebook应用程序进行身份validation
我在一个简单的Swift应用程序中使用Facebook SDK v4.6.0 for iOS 9为我的应用程序添加一个loginbutton (我已经按照准备您的应用程序iOS 9中的步骤)。
loginbutton始终打开Safari进行身份validation,并从不使用原生Facebook应用程序。 这是预期的行为? 是否有可能使用本地应用程序(许多用户已被authentication),而不是直接进入networkinglogin?
我已经尝试通过使用XCode构build和运行,以及由TestFlight分发的构build来testing我的iPhone上的应用程序。 它始终打开Safari进行身份validation,即使我已经安装和configuration了本机应用程序。
我发现这个相关的问题 ,答案似乎只适用于3.x SDK。 我还发现了其他一些问题,这些问题涉及configurationtryFBAppAuth
或authorizeWithFBAppAuth
,这似乎适用于以前版本的FB SDK的边缘案例。 4.6还没有find明确的答案。
这是devise,我已经填补了一个错误报告前几天,Facebook仍然有一些与iOS9的问题。
查看Facebook团队回复: https : //developers.facebook.com/bugs/786729821439894/? search_id谢谢
您需要将Facebook本机应用列入白名单。 在您的info.plist中,确保您有以下条目
<key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fbapi20130214</string> <string>fbapi20130410</string> <string>fbapi20130702</string> <string>fbapi20131010</string> <string>fbapi20131219</string> <string>fbapi20140410</string> <string>fbapi20140116</string> <string>fbapi20150313</string> <string>fbapi20150629</string> <string>fbauth</string> <string>fbauth2</string> <string>fb-messenger-api20140430</string> </array>
除非您将urlscheme列入白名单,否则您的iOS应用将无法切换到该应用。 在这种情况下,Facebook SDK将显示Safari而不是原生应用程序。
你正在编译与iOS9 SDK(XCode 7.x)? 正如FB的iOS9准备页面中所提到的,您应该使用新的SDK来编译应用程序切换策略。
- iPhone应用程序拒绝17.2:应用程序要求用户使用其Facebook帐户login
- Facebook SSO未login(isSessionValid始终返回NO)
- IOS – Facebook SDK fbDidLogin未被调用 – 初始化视图控制器。
- iOS Facebook SDK – 远程定义FacebookAppID
- iOS共享“发生错误。 请稍后再试。”
- 目标C块 – 如何提取块数据(Facebook SDK)
- 为什么我不能从我的iOS应用发布到粉丝页面?
- ObjC,Facebook的页面 – 张贴新闻饲料作品,但张贴照片没有
- Facebook iOS SDK 3.1:“错误:HTTP状态码:400”