Facebook auth.extendssoaccesstoken错误代码10

Zai*_*ani 5 facebook ios facebook-ios-sdk

在我们的Facebook应用开发者洞察中,我们看到方法auth.extendssoaccesstoken的每日错误一致,错误代码为10,"应用程序没有此操作的权限".我们使用最新的SDK,其中包含当前iOS集成指南的近乎精确的实现.搜索Google,SO和Facebook开发人员以查找错误和/或与扩展令牌有关的任何内容都没有提供任何结果.我应该在Facebook应用程序上启用什么?

Zai*_*ani 4

在进一步调查 Facebook SDK 源代码之后,我相信我已经有了坚实的领先优势。

  1. 我们的部分(不是全部)用户遇到此错误
  2. 之前的行为auth.extendSSOAccessToken取决于应用程序从用户处接收“offline_access”权限。
  3. facebook-ios-sdk 不会在其代码中的任何位置触及“offline_access”权限。
  4. 应用程序“没有权限”来扩展访问令牌表明该方法仍然依赖于应用程序获得“offline_access”权限。唯一的变化是这一切现在悄无声息地发生。

结论:应用程序未在多种不同的身份验证方法之一中被授予“offline_access”权限。iOS SDK 通过以下方式尝试进行身份验证:

  1. iOS 集成 Facebook 对话框
  2. iOS Facebook 应用程序“快速应用程序切换”
  3. 通过 Safari 登录
  4. Facebook SDK UIView 登录对话框

4 似乎已经过时且不太可能,而且我们的错误率约为 17%,这将其范围缩小到 1 或 3,因为 2 肯定仍然被广泛使用。

进一步分析后将更新。

更新 1 根据 Facebook 的见解和我们的 git 历史记录,我相信当用户使用 iOS6 集成 Facebook 对话框(方法 1)进行身份验证时会出现问题。得出这个结论是因为 iOS6 发布后 Facebook Developer Insights 上出现了错误,我们发布了使用 SDK 3.1 的应用程序版本

测试后会更新