[译] Android 生命周期备忘录  —  第二部分:多 Activity

[译] Android 生命周期备忘录  —  第二部分:多 Activity为了方便查阅,我制作了 PDF 格式备忘录。 在这种场景下,当一个新 activity 启动时,activity 1 被停止(但没有被销毁),类似于用户在进行跳转(就像按下 “Home” 一样)。 当返回按钮被按下,activity 2 被销毁结束运行。 请注意,尽管 onSa…

在这个系列中:

为了方便查阅,我制作了 PDF 格式备忘录

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

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

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

[译] Android 生命周期备忘录  —  第二部分:多 Activity

场景 1:在 Activity 之间跳转

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

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

管理状态

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

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

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

[译] Android 生命周期备忘录  —  第二部分:多 Activity

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

管理状态

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

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

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

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

[译] Android 生命周期备忘录  —  第二部分:多 Activity

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

管理状态

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

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


掘金翻译计划 是一个翻译优质互联网技术文章的社区,文章来源为 掘金 上的英文分享文章。内容覆盖 AndroidiOS前端后端区块链产品设计人工智能等领域,想要查看更多优质译文请持续关注 掘金翻译计划官方微博知乎专栏

今天的文章[译] Android 生命周期备忘录  —  第二部分:多 Activity分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/23598.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注