我有一个涉及导航的应用程序。 如果用户开始导航,则会创建一种“navigationLifecycleManager”。这将存储在应用程序实例中,以便它可以在配置更改、在活动之间切换等情况下存活。
但是,如果用户“退出”应用程序,则我想要终止一些后台线程,将一些较小的数据存储到应用程序存储中等等。因此,我需要一些挂钩告诉我何时退出应用程序。
- 导航应该在任何活动生命周期中保留(这就是为什么它已经在应用程序实例中了)
- 导航应该在按下主页按钮时保留。
- 导航不应在按下“返回”键结束应用程序时保留。
- 导航不应在通过向左滑动从“最近使用的应用程序”列表中滑出它时保留。
大部分都可以通过覆盖“onPause”并检查“isFinishing”来实现。但是,这不能解决从最近使用的应用程序列表中滑动的问题。滑动似乎没有调用任何内容。活动/应用程序中既没有调用“onPause”,也没有调用“onDestroy”或“onTerminate”。