0
点赞
收藏
分享

微信扫一扫

安卓开发八股文2

1.3 Activity 生命周期完整流程(详细版)

Android 的 Activity 生命周期 由系统管理,不同的用户操作会触发不同的生命周期方法。下面是几个常见的 生命周期流程及触发场景

1.3.1 Activity 启动流程

触发场景:应用程序启动或用户打开 Activity。

生命周期调用顺序

onCreate() → onStart() → onResume()

详细过程

  1. onCreate()
  • Activity 被创建,初始化 UI 和数据。
  • 适合进行 View 绑定、数据库初始化、读取 Intent 参数等操作。
  1. onStart()
  • Activity 对用户可见,但还无法交互。
  • 适合注册广播、绑定 Service、加载动画等。
  1. onResume()
  • Activity 进入前台,可以与用户交互。
  • 适合恢复动画、监听用户输入、播放音视频等。

1.3.2 按 Home 键(进入后台)

触发场景:用户按下 Home 键,或者切换到其他应用。

生命周期调用顺序

onPause() → onStop()

详细过程

  1. onPause()
  • Activity 失去焦点,但仍然可见。
  • 适合暂停动画、保存用户输入、暂停音视频播放。
  1. onStop()
  • Activity 完全不可见
  • 适合释放大量资源,如解绑 Service、关闭数据库等。

1.3.3 回到应用(从后台恢复)

触发场景:用户重新打开应用。

生命周期调用顺序

onRestart() → onStart() → onResume()

详细过程

  1. onRestart()
  • 仅当 Activity 先 onStop() 但未被销毁时触发。
  • 适合 刷新数据,检查 App 是否被后台杀死。
  1. onStart()
  • Activity 再次可见,类似 Activity 启动时的 onStart()
  1. onResume()
  • Activity 获取焦点,用户可以正常交互。

1.3.4 退出应用(用户点击返回键)

触发场景:用户点击返回键 Back,或者 finish() 关闭 Activity。

生命周期调用顺序

onPause() → onStop() → onDestroy()

详细过程

  1. onPause()
  • 先暂停动画、保存数据等。
  1. onStop()
  • 释放数据库、解绑 Service。
  1. onDestroy()
  • Activity 彻底销毁,回收所有资源,避免内存泄漏。
举报

相关推荐

0 条评论