Android 生命周期详解

Android 生命周期详解

  • [一、Activity 完整生命周期](#一、Activity 完整生命周期)

一、Activity 完整生命周期

  1. onCreate() :页面第一次创建时调用,只执行一次。

    主要处理 setContentView、初始化控件、初始化数据、绑定 TabHost。

    参数 savedInstanceState:页面重建时恢复状态用。

  2. onStart() :页面变为可见但还不能交互。

    从后台切回前台、解锁屏幕都会执行。

  3. onResume():页面获取焦点,可以点击、交互

  4. onPause():页面失去焦点,退到后台。

  5. onStop():页面完全不可见。

  6. onDestroy() :页面即将销毁时调用,只执行一次。

    用于释放资源、注销广播、停止服务。

  7. onRestart() :页面从后台回到前台,但没被销毁。

    流程:onStop → onRestart → onStart → onResume

完整执行流程

① 正常打开 → 关闭

复制代码
onCreate() → onStart() → onResume() →(运行中)
→ 按返回键退出
→ onPause() → onStop() → onDestroy()

② 打开 → 回到桌面 → 再切回 APP

复制代码
onCreate → onStart → onResume
→ 回到桌面
→ onPause → onStop
→ 切回APP
→ onRestart → onStart → onResume

③ 屏幕旋转(Activity 重建)

复制代码
onPause → onStop → onSaveInstanceState → onDestroy
→ 重建
→ onCreate → onStart → onResume

额外两个状态保存方法

  • onSaveInstanceState(Bundle outState)

    页面可能被系统销毁时调用,存储当前 tab、输入框文字、列表位置。

  • onRestoreInstanceState(Bundle savedInstanceState)

    页面重建后调用,比 onCreate 晚,比 onStart 早。

相关推荐
Swift社区2 小时前
鸿蒙 vs iOS / Android:谁更适合 AI?
android·ios·harmonyos
冬奇Lab2 小时前
硬件加速与 OMX/Codec2:解密编解码器的底层世界
android·音视频开发·视频编码
亘元有量-流量变现3 小时前
ASO优化全流程实操指南:从基础到迭代,精准提升App曝光与转化
android·ios·harmonyos·aso优化·方糖试玩
私人珍藏库3 小时前
【Android】GameNative 0.9.0 [特殊字符] 手机畅玩Steam游戏
android·游戏·智能手机·app·工具·软件·多功能
诸神黄昏EX3 小时前
Android Safety 系列专题【篇七:Android AVF机制】
android
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.4 小时前
MySQL 主从架构中的使用技巧及优化
android·mysql·架构
羊小蜜.4 小时前
Mysql 11: 存储过程全解——从创建到使用
android·数据库·mysql·存储过程
zh_xuan4 小时前
Android compose和传统view混用
android
大黄说说4 小时前
MySQL索引失效的常见场景有哪些?如何通过EXPLAIN分析查询性能?
android·adb