iOS SSO与多个应用程序

我search了这个问题的答案,一直无法find任何答案。

我有一系列的iOS应用程序,我想使用相同的Facebook应用程序。 SSO与我创build和testing的第一个应用完美配合。 但所有其他的失败,并返回一个unknown_error。

我打电话给:

self.facebook = [[[Facebook alloc] initWithAppId:<app id> urlSchemeSuffix:<app suffix> andDelegate:self] autorelease]; 

这是所有工作,即使login失败,我返回到正确的应用程序。 不过,每次我的:

 - (void)fbDidNotLogin:(BOOL)cancelled 

方法调用取消等于NO。

有什么其他的设置,我需要改变某处? 这是因为我的应用程序尚未提交到应用程序商店(除正在工作的应用程序除外)? 如果是这样的话,我该如何testing这个东西呢?

谢谢Daniel

我发现有用的“unknown_error”消息只发生在通过iOS的Facebook应用程序进行身份validation时。

一个快速和肮脏的解决方法是强制Facebook SDK使用移动Safari浏览器进行身份validation。 在Facebook.m中查找[self authorizeWithFBAppAuth:YES safariAuth:YES]并更改FBAuth值。

不是最好的解决scheme…但是如果你需要一个项目出来… …)

我遇到了同样的问题,如上所述。 我解决这个问题的方法是确保共享Facebook应用程序的iOS应用程序的所有Bundle ID都被列出。

多个iOS应用程序共享相同的Facebook应用程序

正如你在图片中看到的,我有两个URL Scheme后缀,模糊的部分是连接到这个Facebook应用程序的应用程序的Bundle ID。 由于它是免费和付费版本,我只使用一个App Store ID,所以免费版本的post将链接到付费版本的App Store链接。

希望这可以帮助!