【发布时间】:2013-06-12 18:23:55
【问题描述】:
我正在开发一个 android 应用程序,在该应用程序中,我将 tabhost 用于 tabbar
在每个选项卡中,我都托管了 FragmentActivity,而 FragmentActivity 又托管了不同的片段
我通过网络调用从服务器获取数据,并且在发送每个调用时我必须发送身份验证令牌(我首先进行登录调用)身份验证令牌在 30 分钟后自动过期..
现在的问题是,如果用户在应用程序中间按下主页按钮,应用程序会进入后台,如果用户再次启动应用程序,即把它带到前台(比如 30 分钟或更长时间),同时身份验证令牌会过期然后网络调用失败....
我怎么知道我的应用何时进入前台 ??????????
我已经用谷歌搜索了这个问题,我现在得到的解决方案是
- 使用 onCreate()、onPause()、onResume() 方法,但在我的情况下,我有 5 个不同的选项卡,根据此解决方案,我必须检查每个 FragmentActivity 的方法,这些方法不仅在 App 上被调用恢复也是选项卡切换和 FragmentActivities 的初始创建....
- 我的第二种方法是使用 ActivityManager
这两种方法都不适合我............ 我在我的应用程序中间,真的需要帮助
【问题讨论】:
-
当你回到前台时,你的 onResume() 会被调用。但我认为问题在于设计 - 您可能会发现后台服务更适合通信内容
-
使用已知令牌请求不是更容易吗,如果失败只需请求一个新令牌并从那开始跟进?
标签: android oncreate onresume onpause