美文网首页
强制退出状态保存与重新启动状态恢复

强制退出状态保存与重新启动状态恢复

作者: 栩檬 | 来源:发表于2021-04-15 15:22 被阅读0次

问题

场景:有一个包含 ActivityA , ActivityB 和 ActivityC 三个 Activity 的 APP,在 ActivityA 按返回键可以退出APP,其他 Activity 按返回键只能回到上一个 Activity。在 ActivityC 强制退出1后,再次启动 APP 直接打开 ActivityC 如何实现?

回答

实现思想

  1. 每次切换 Activity 后,记录下当前 Activity。APP 退出后,记录的就是退出前的最后一个 Activity。
  2. 每次启动 APP 后,检查上次退出时的 Activity。如果是 ActivityC,那么直接启动 ActivityC;否则正常启动。

实现细节

  1. 对每个 Activity 编号后,可以使用 SharedPreferences 对象来存取。
  2. 可以在 Activity 生命周期方法 onStop()2 中执行页面编号的保存任务。
  3. 由于每个 Activity 都涉及页面编号的保存,可以将这一逻辑写在父类中。

说明

[1] 强制退出:打开近期任务,滑动 APP 的方式退出。
[2] 部分国内定制的 Android 系统,点击菜单键打开近期任务可能不会触发 onStop() 方法。

测试设备参数

操作系统:MIUI 12.0.4 稳定版 (Android 10)

测试代码

https://github.com/XuMeng-0/android-study

相关文章

网友评论

      本文标题:强制退出状态保存与重新启动状态恢复

      本文链接:https://www.haomeiwen.com/subject/kedelltx.html