Android Facebook app:访问令牌到期(expires_in)始终为0

Gad*_*kan 8 android facebook facebook-android-sdk


我正在开发一个使用facebook集成的应用程序.我试图从facebook库类接收access_token和expires_in标记.一旦我登录,我得到access_token正确但我总是得到expires_in标记始终为0.并且因为我isSessionValid()方法总是返回false.如果有人遇到这个问题并解决了,请告诉我.

当我没有在模拟器中安装Facebook应用程序时,我的代码运行得很好.我得到了webview,我可以登录并更新状态.但是,当我安装Facebook应用程序时,单击更新状态菜单选项打开Facebook应用程序,我被重定向到权限页面,然后我收到错误说"无法接收访问令牌".这实际上是因为expires_in标记为0.

我不想要求应用程序的用户卸载Facebook应用程序(如果已安装).请帮我解决这个问题.

谢谢,
Punit

Adi*_*mro 14

如果您设置了权限offline_access,则令牌到期时间为0.

对于任何其他有此问题的人(如果您已经放置offline_access权限并稍后删除),请按照以下步骤操作:

  • 转到您的Facebook个人资料设置并删除您的应用.
  • 然后再次登录
  • 再次授予您的应用权限.

或者你可以这样做:

  • 转到您的Facebook个人资料设置>应用> Your_App,然后删除"随时访问我的数据"权限.
  • 保存所做的更改.
  • 重新运行Your_App(即offline_access现在没有权限).