Android Facebook会话在应用程序关闭后被销毁

Android Facebook会话在应用程序关闭后被销毁,android,facebook-graph-api,Android,Facebook Graph Api,我已将Facebook与我的android应用程序集成。它工作正常,但当我关闭应用程序时,会话被破坏,我必须再次登录 我想在用户单击注销按钮之前保持登录状态?如何实现这一点?此解决方案的关键和问题的原因可能在使用的访问令牌中找到。我猜您当前正在使用短访问令牌 如果您使用一个长期访问令牌,请参阅,并以持久的方式存储它,那么问题就会得到解决。由于您使用的是Android,我会将其存储在SQLite中,并在应用程序启动/恢复时检索 从Facebook开发者网站: 到期和扩展令牌 一些访问令牌的有限有效

我已将Facebook与我的android应用程序集成。它工作正常,但当我关闭应用程序时,会话被破坏,我必须再次登录


我想在用户单击注销按钮之前保持登录状态?如何实现这一点?

此解决方案的关键和问题的原因可能在使用的访问令牌中找到。我猜您当前正在使用短访问令牌

如果您使用一个长期访问令牌,请参阅,并以持久的方式存储它,那么问题就会得到解决。由于您使用的是Android,我会将其存储在SQLite中,并在应用程序启动/恢复时检索

从Facebook开发者网站:

到期和扩展令牌

一些访问令牌的有限有效期约为1到2小时。为了在到期后继续使用这些令牌,需要对其进行扩展

使用Facebook SDK for Android和iOS的应用程序、桌面应用程序或使用服务器端登录流的应用程序会自动生成长期用户访问令牌。每次触发登录流时,此长寿命令牌都会刷新和扩展。但是,实现自己的客户端流的应用程序必须实现一些服务器端代码,以便使用Graph API端点手动扩展令牌:

所以,如果我是你,我会尝试生成一个相关类型的长期访问令牌,以持久的方式存储它(例如在数据库中),并在应用程序启动或恢复时使用它

问候,,
Jonas

此解决方案的关键和问题的原因可能在使用的访问令牌中找到。我猜您当前正在使用短访问令牌

如果您使用一个长期访问令牌,请参阅,并以持久的方式存储它,那么问题就会得到解决。由于您使用的是Android,我会将其存储在SQLite中,并在应用程序启动/恢复时检索

从Facebook开发者网站:

到期和扩展令牌

一些访问令牌的有限有效期约为1到2小时。为了在到期后继续使用这些令牌,需要对其进行扩展

使用Facebook SDK for Android和iOS的应用程序、桌面应用程序或使用服务器端登录流的应用程序会自动生成长期用户访问令牌。每次触发登录流时,此长寿命令牌都会刷新和扩展。但是,实现自己的客户端流的应用程序必须实现一些服务器端代码,以便使用Graph API端点手动扩展令牌:

所以,如果我是你,我会尝试生成一个相关类型的长期访问令牌,以持久的方式存储它(例如在数据库中),并在应用程序启动或恢复时使用它

问候,, 乔纳斯说我想补充一点

  • 如果您愿意,应用程序不应该一次又一次地要求登录,当应用程序启动时,您应该使用持久存储来实现这一点。将
    accessToken
    保存到一个文件夹中。因为把它保存在数据库里不是个好主意。如果您的应用程序不需要使用数据库,那么它就没有理由创建一个数据库来存储一个值。使用保存的访问令牌验证会话,它将为您工作
希望这能帮助你。。。干杯…

正如@所说,我想补充一点

  • 如果您愿意,应用程序不应该一次又一次地要求登录,当应用程序启动时,您应该使用持久存储来实现这一点。将
    accessToken
    保存到一个文件夹中。因为把它保存在数据库里不是个好主意。如果您的应用程序不需要使用数据库,那么它就没有理由创建一个数据库来存储一个值。使用保存的访问令牌验证会话,它将为您工作
希望这能帮助你。。。干杯