Facebook ios sdk 3.5 openActiveSessionWithReadPermissions不使用Web登录回调

时间:2013-07-09 21:28:09

标签: ios authentication facebook-ios-sdk

我刚刚切换到Facebook ios sdk 3.5并尝试使用

验证用户身份
[FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:allowLoginUI completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
    //callback methods
}];

我在info.plist文件中设置了FacebookAppID,FacebookDisplayName,CFBundleURLSchemes。 在AppDelegate中,我有以下功能设置:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    return [FBSession.activeSession handleOpenURL:url];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    BOOL wasHandled = [FBAppCall handleOpenURL:url
                         sourceApplication:sourceApplication];
    // add app-specific handling code here
    return wasHandled;
}

现在,当我在iPhone上登录facebook帐户时,它可以调用回调块,我认为它是用于FBAppCall的新路由。

但问题是,当我没有设置我的iPhone FB帐户时,应用程序尝试使用safari Web视图或FB应用程序进行身份验证,然后在safari或应用程序上按下允许访问按钮后,我的应用程序被调用并且它显示了Launch图像,但它只是挂在那里,并且永远不会调用回调块。我认为这是一个不同的应用程序处理openurls的路线,但我不确定,因为我是否在

中设置了一个断点
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url;

它永远不会在断点处停止。

0 个答案:

没有答案