Facebook SDK 3.1上的iOS 6本机支持问题

我在我的一个应用程序中使用了Facebook SDK 3.0,一切正常。 它将用户重定向到Facebook应用程序(如果已安装)或移动到移动网站(如果没有)。

上周,我整合了新的SDK 3.1,以便与Facebook帐户进行本机集成。 为此,我搬离了:

[FBSession openActiveSessionWithPermissions:permissions allowLoginUI:YES completionHandler:^(FBSession *session, FBSessionState status, NSError *error) { /* My code here */ }]; 

现在已弃用新版本:

 [FBSession openActiveSessionWithPublishPermissions:permissions defaultAudience:FBSessionDefaultAudienceFriends allowLoginUI:YES completionHandler:^(FBSession *session, FBSessionState status, NSError *error) { /* My code here */ }]; 

在iOS 5上,没有任何改变,完美。 在iOS 6上,它可以在我的设备上运行,但我有一些用户报告系统正在询问他们的权限,但他们无法连接。

事实上,我有一个video,当系统要求Facebook权限时,甚至点击“确定”,该应用程序无法访问该帐户,甚至没有在系统偏好设置中注册。

以下是video: http : //www.youtube.com/watch?v = JUHF9KNNg6M

如果我从系统中删除该帐户,一切都像以前在Facebook SDK 3.0上预期的那样。

有人也遇到过这个问题吗? 或者你知道如何解决这个问题吗?

您是否已将您的许可请求分开?

“iOS 6中内置的Auth Dialog为开发人员提供了在他们的应用程序中使用Facebook登录的本地方式,而无需进行快速应用程序切换。注意,要使用iOS 6本机身份validation,应用程序需要更改用户请求权限的方式 – 应用程序必须将他们的读取和写入权限请求分开。用于iOS的Facebook SDK支持这些function,并帮助开发人员使用它们构建适用于多个iOS版本和设备配置的应用程序。“

https://developers.facebook.com/docs/howtos/ios-6/

可以发布您要求的权限吗?

iOS6上的本机Facebook集成已弃用了offline_access权限,如果您尝试包含它,则身份validation将失败。 有关详细信息,请参阅https://developers.facebook.com/docs/howtos/ios-6/ 。

我认为你的问题可能是你没有在Facebook上指定你的包标识符。 我也有这个,一旦我在developers.facebook.com中指定了bundle标识符,一切都开始正常了。