Facebook SDK登录永远不会在iOS 9上回覆我的应用程序 [英] Facebook SDK login never calls back my application on iOS 9

查看:152
本文介绍了Facebook SDK登录永远不会在iOS 9上回覆我的应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经遵循指南来更新我的应用程序以使用Facebook SDK 4.6当使用iOS 9 SDK构建时,可以正常工作。

I've followed this guide to update my application to use Facebook SDK 4.6 to work properly when built with the iOS 9 SDK.

现在点击登录按钮后,会显示一个Safari视图控制器(不应该重定向到Facebook应用程序? ),但在接受许可后,Safari视图控制器不会被忽略。它加载一个新的空白页面,坐在那里什么都不做。如果我点击完成按钮,返回的 FBSDKLoginManagerLoginResult isCancelled 是true。

When I tap the login button now, a Safari view controller gets presented (shouldn't it redirect to the Facebook app?), but after accepting permission the Safari view controller is never dismissed. It loads a new blank page and sits there doing nothing. If I tap the Done button, the returned FBSDKLoginManagerLoginResult's isCancelled is true.

SDK是否正常,通过Facebook应用程序选择Safari视图控制器?为什么登录完成后我不会得到回调?

Is it normal that the SDK is choosing the Safari view controller over the Facebook app? And why am I not getting callbacks after login is complete?

推荐答案

在iOS 9上,当 UIApplicationDelegate 应用程序:openURL:选项:已实现,应用程序:openURL:sourceApplication:注释:不会被调用。

Turns out that on iOS 9 when UIApplicationDelegate's application:openURL:options: is implemented, application:openURL:sourceApplication:annotation: will not get called.

所以我要做的是调用 FBSDKApplicationDelegate application:openURL:sourceApplication:annotation: from UIApplicationDelegate 应用程序:openURL:options:

So what I had to do is call FBSDKApplicationDelegate's application:openURL:sourceApplication:annotation: from UIApplicationDelegate's application:openURL:options:

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options {
    return [[FBSDKApplicationDelegate sharedInstance] application:app
                                                      openURL:url
                                            sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
                                                   annotation:options[UIApplicationOpenURLOptionsAnnotationKey]];
}

这篇关于Facebook SDK登录永远不会在iOS 9上回覆我的应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆