在我们的 Facebook 应用程序开发人员洞察中,我们发现 auth.extendssoaccesstoken 方法每天都出现错误代码 10,“应用程序无权执行此操作”。我们使用的是最新的 SDK,几乎完全执行当前的 iOS 集成指南。在谷歌、SO 和 Facebook 开发人员中搜索错误和/或与扩展 token 有关的任何内容都没有结果。有什么我应该在 Facebook 应用程序上启用的吗?
最佳答案
在进一步调查 Facebook SDK 源后,我相信我有一个可靠的线索。
- 部分(并非全部)用户遇到此错误
auth.extendSSOAccessToken
之前的行为取决于应用收到用户的“offline_access”权限。- facebook-ios-sdk 不会在其代码的任何地方触及“offline_access”权限。
- 应用程序“没有权限”扩展访问 token 表明该方法仍然取决于应用程序获得“offline_access”权限。唯一的变化是这一切现在悄无声息地发生。
结论: 在许多不同的身份验证方法之一中,该应用程序未被授予“offline_access”权限。 iOS SDK 尝试通过以下方式进行身份验证:
- iOS 集成 Facebook 对话
- iOS Facebook 应用“快速应用切换”
- 通过 Safari 登录
- Facebook SDK UIView 登录对话框
4 似乎已过时且不太可能,我们得到约 17% 的错误率,将其缩小到 1 或 3,因为 2 肯定仍被广泛使用。
将在进一步分析后更新。
更新 1 使用 Facebook 的见解和我们的 git 历史,我相信当用户使用 iOS6 集成 Facebook 对话框(方法 1)进行身份验证时会出现问题。之所以得出这个结论,是因为iOS6发布后Facebook Developer Insights出现错误,我们发布了一个使用SDK 3.1的应用程序版本
测试后会更新
关于ios - Facebook auth.extendssoaccesstoken 错误代码 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15213057/