使用Facebook SDK 4.7.0尝试打开Facebook登录对话框失败。 '什么都没发生'从UI的角度来看。
我在我的控制台日志中得到-canOpenURL: failed for URL: "fbauth2:/" - error:
,人们说我可以忽略
我在控制台Warning: Attempt to present <FBSDKContainerViewController: 0x1268cdd20> on <UIAlertController: 0x12688dac0> whose view is not in the window hierarchy!
好。
为了记录,我的plist中有正确的Facebook SDK 4.6.0+条目以及NSAppTransport协议的Facebook特定豁免。
在我添加这些东西之前它崩溃了,在我添加了它可以工作的东西之后,但没有注意到它不起作用!
我使用
开始此过程[login logInWithReadPermissions:settings.readPermissions
handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
是的,已弃用的功能,但它仍然有效。不幸的是,现在它永远不会回到这个块中的任何回调
在FBSDKLoginManager.m
中进行调试时,它会进入此代码块
case FBSDKLoginBehaviorBrowser: {
[self performBrowserLogInWithParameters:loginParams handler:^(BOOL openedURL,
NSString *authMethod,
NSError *openedURLError) {
if (openedURL) {
completion(YES, authMethod, openedURLError);
} else {
completion(NO, authMethod, openedURLError);
}
}];
break;
}
它运行completion(YES, authMethod, openedURLError);
因为opensURL返回true。
但我的应用中没有任何反应。没有启动浏览器或Facebook应用程序。
任何见解都表示赞赏。
答案 0 :(得分:0)
我最终降级到Facebook 4.5.1并更新我的plist for Facebook 4.5或更低。它按预期工作