Activity 是 Android 应用的核心组件之一,其生命周期管理直接影响应用状态与资源分配。以下是关键生命周期方法及调用顺序:
一、标准生命周期流程
onCreate()
- 初始化布局与基本组件
- 📌 示例:
setContentView(R.layout.activity_main)
onStart()
- Activity 可见但未获得焦点
- ⚠️ 适合初始化非必须的资源(如动画)
onResume()
- Activity 开始交互,进入前台
- ⚙️ 通常用于恢复用户操作状态
onPause()
- 暂停时保存数据或释放资源
- 📌 例如:
override fun onPause() { super.onPause() }
onStop()
- Activity 被隐藏,停止更新UI
- ⚠️ 可考虑释放非必须的资源
onDestroy()
- 最终销毁,释放所有资源
- 📌 用于清理数据库连接等
二、特殊场景补充
横竖屏切换
- 会触发
onStop() -> onDestroy() -> onCreate()
流程 - 💡 可通过
configChanges="orientation"
避免重建
- 会触发
任务栈销毁
- 会调用
onDestroy()
但不执行onStop()
- ⚙️ 需手动管理保存状态
- 会调用
后台进程被杀
- 仅保留
onSaveInstanceState()
保存数据 - 📌 确保关键数据持久化
- 仅保留
三、学习建议
- 📚 深入理解:Android Activity 生命周期详解
- 📱 实践工具:使用 Android Studio 的 Profiler 观察生命周期状态
- 📌 关键点:
onPause()
是内存泄漏的高危环节
四、可视化对比
通过合理管理生命周期,可显著提升应用性能与用户体验。建议结合官方文档与实际项目调试深入学习 🚀