URL方案后缀是否在Facebook iOS SDK 3.1中工作?

时间:2012-10-17 23:03:39

标签: facebook authentication ios6 url-scheme

我正在尝试将我的应用程序从iOS SDK 3.0更新到SDK 3.1,但是我遇到了使URL Scheme Suffix工作的问题。我的应用程序有几个不同的SKU,并已成功使用方案后缀为“ipad”和“iphone”与3.1之前的SDK。

当实施3.1 SDK并获得读取权限时,Facebook应用程序不再将我发回我的应用程序(这是在iOS6中不使用集成的Facebook登录时)。我注意到,如果我删除了URL Scheme Suffix,登录过程会按预期工作,并在对权限说“OK”后将其发送回我的应用程序。只需将info.plist更改为不包含后缀即可使其工作;添加它会打破它。

我的问题是:URL后缀是否适用于3.1更新的任何人?我无法确认他们是否正在工作。更新似乎已经相当多地改变了身份验证流程,但我不明白为什么会故意删除它。此外,Facebook上的这个错误是否相关? http://developers.facebook.com/bugs/183527235116115

最后,由于我认为在解决之前我不能更新,因此不立即更新SDK有什么后果?我讨厌我的应用程序中断,因为旧的身份验证方法被终止。 Facebook是否有旧的身份验证不可用的路线图?

2 个答案:

答案 0 :(得分:1)

检查以下内容:

  • 您的应用的info.plist文件中有一个FacebookAppID属性

  • 您有为您的应用定义的网址方案。此方案必须包含您要使用的后缀。

  • 在调用FB API之前设置了URL Scheme后缀。

  • URL Scheme后缀仅包含小写字母(没有像破折号等特殊字符;没有空格)

我被困在最后一点大约一天!

编辑:plist中的FacebookID应该称为FacebookAppID(类型字符串)

RGDS

答案 1 :(得分:0)

您打算如何创建和打开会话?

我认为你必须采用两步法:

  1. initWithAppID:权限:urlSchemeSuffix:tokenCacheStrategy:
  2. openWithCompletionHandler:
  3. 我不确定这已经从3.0版本改为3.1版本。