博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[译] Android 生命周期备忘录  —  第二部分:多 Activity
阅读量:6324 次
发布时间:2019-06-22

本文共 1055 字,大约阅读时间需要 3 分钟。

  • 原文地址:
  • 原文作者:
  • 译文出自:
  • 本文永久链接:
  • 译者:
  • 校对者:,

在这个系列中:

为了方便查阅,我制作了 。

请注意,图表中显示多个组件(activities,fragments 等)的生命周期时,并排显示的分组事件是并行的。执行焦点可以随时从一个并行事件组切换到另一个,因此并行事件组之间的调用顺序并不能保证。但是,组内的顺序是有保证的。

以下场景并不适用于有着自定义启动模式或任务关联型的 activities 和任务。想要了解更多,详见 Android 开发者官网:。

返回栈 — 场景 1:在 Activity 之间跳转

场景 1:在 Activity 之间跳转

在这种场景下,当一个新 activity 启动时,activity 1 被(但没有被销毁),类似于用户在进行跳转(就像按下 "Home" 一样)。

当返回按钮被按下,activity 2 被销毁结束运行。

管理状态

请注意,尽管 被调用,但是 不会被调用。如果在第二个 activity 处于活动状态时配置发生改变,则第一个活动将被销毁并仅在其重新获取焦点时重新创建。这就是保存一个状态的实例很重要的原因。

如果系统杀死应用程序进程以节省资源,这是另一种需要恢复状态的场景。

返回栈 — 场景 2:配置发生变化时返回栈中的 Activities

场景 2:配置发生变化时返回栈中的 Activities

管理状态

保存状态不仅对前台的 activity 很重要。配置发生变化后,栈中的所有的 activities 都需要重新恢复状态来重新创建它们的 UI。

此外,系统几乎可以随时终止你的应用程序进程,因此你应该准备好在任何情况下恢复状态。

返回栈 — 场景 3:应用的进程被终止

当 Android 操作系统需要资源时,它会杀死在后台的应用程序。

场景 3:应用的进程被终止

管理状态

请注意,完整返回栈的状态被保存起来,但为了有效地使用资源,只有在重新创建 activity 时才会恢复 activity。

如果发现译文存在错误或其他需要改进的地方,欢迎到 对译文进行修改并 PR,也可获得相应奖励积分。文章开头的 本文永久链接 即为本文在 GitHub 上的 MarkDown 链接。


是一个翻译优质互联网技术文章的社区,文章来源为 上的英文分享文章。内容覆盖 、、、、、、、等领域,想要查看更多优质译文请持续关注 、、。

转载于:https://juejin.im/post/5c8e018d51882545ca77d857

你可能感兴趣的文章
jquery版小型婚礼(可动态添加祝福语)
查看>>
Centos5.8 安装 PHP5.5 和 memcached
查看>>
第25周六
查看>>
[转]CENTOS LINUX安装并使用NFS共享文件
查看>>
Android AES加密算法及其实现
查看>>
Entity Framework公共的增删改方法
查看>>
hdu1698 Just a Hook 线段树:成段替换,总区间求和
查看>>
dorado spring知识补充
查看>>
Android -- ViewPager、Fragment、状态保存、通信
查看>>
如果想消除随机性的感觉
查看>>
.NET网站自动浏览器分享,解决IIS6应用池回收后第一次访问慢问题
查看>>
关于验证码识别3
查看>>
【JavaScript】javascript常用的东西
查看>>
Cucumber 入门一
查看>>
c++ 单例模式
查看>>
JAVA反射机制
查看>>
Java几款性能分析工具的对比
查看>>
SVN使用教程总结
查看>>
Chrome各个版本小常识
查看>>
阿里云图片压缩上传代码
查看>>