Facebook在iOS上与SDK 3.5连接

时间:2013-05-11 13:30:06

标签: ios facebook facebook-ios-sdk

我正在开发iOS应用并切换到新的Facebook iOS SDK 3.5.1。

在iOS 6上,使用系统内的Facebook集成,我的应用程序中用户的登录过程按预期工作,在用户授予权限后调用完成处理程序块。

问题是不使用此集成时,无论是否安装了Facebook应用程序。

当我调用“openActiveSessionWithReadPermissions”时,立即使用FBSessionStateClosedLoginFailed状态调用完成处理程序块,然后用户授予应用程序权限,当他返回应用程序时,永远不会再次调用完成处理程序,因此我不会收到通知用户登录。

我尝试过很多更改,从我的facebook用户允许的应用列表中删除应用,从设备上卸载应用等等......但我不知道那里发生了什么......

任何帮助都非常感谢!

感谢社区

1 个答案:

答案 0 :(得分:1)

发现修复!在同样的情况下,这是其他的。

我没有正确处理切换回我的应用程序,这就是为什么只在使用快速应用程序切换(使用Safari或Facebook应用程序)时才会发生错误。从技术上讲,我应该在应用程序委托中实现以下两个方法:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [FBSession.activeSession handleDidBecomeActive];
}

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    return [FBSession.activeSession handleOpenURL:url];
}