我的应用程序现在使用适用于 iOS 的 Facebook SDK 版本 3.1.1。
在 iOS6 上,我注意到FBSession expirationDate
. 日期始终设置为 4001 年(遥远的未来?)。我已经读到这可能与offline_access
许可有关,但我们并没有要求这样做(我们曾经在非常旧的应用程序版本中这样做过。但这是在干净图像上的全新安装。)
根据 FB SDK 指南,我们总是首先通过 FBSession openActiveSessionWithReadPermissions 请求基本读取权限。返回的会话到期日期始终为 4001-01-01。后来,当我们想发帖时,我们打电话FBSession reauthorizeWithPublishPermissions
,要求publish_action
。
在令牌过期之前,这一切似乎都可以正常工作。我只注意到 expireDate 问题,因为我发现我们正在将过期令牌传递给图形 API,并且这些调用失败了。
但这不应该发生,对吧?- 每当应用程序启动时我们调用FBSession openActiveSessionWithReadPermissions
,每当应用程序启动时我们调用FBSession handleDidBecomeActive
。刷新任何过期的活动令牌应该是正确的,是吗?
我可能做错了什么,有哪些事情需要检查?为什么将 expireDate 设置为 4001?
编辑:
我认为我的问题与此处描述的内容有关:OpenActiveSession for Facebook iOS SDK 后访问令牌过期
我没有使用任何 FB SDK 支持来调用图形 API。所以我没有利用显然内置的 SDK 支持来刷新 iOS6 管理的令牌。
编辑 2:
我认为这是我的问题的完全重复:
也在这里引用:http: //developers.facebook.com/bugs/441739699216684 ?browse=search_5099512da57214b73000801