Android学习笔记
注:本文素材大部分源自《Android 开发艺术探索》
文章目录
Android四大组件
1. Activity
基本概念
应用与用户交互的窗口类型之一;除此之外,还有Window, Dialog,Toast等。
生命周期
Activity生命周期包含7个方法:onCreate, onStart, onRestart, onResume, onPause, onStop, onDestroy。其中onCreate和onDestroy、onStart和onStop、onResume和onPause成对存在。
Activity生命周期包含5个状态:启动状态,运行状态,暂停状态,停止状态,销毁状态。
方法 | 调用时Activity状态 | 使用场景 | 可见性 |
---|---|---|---|
onCreate | Activity第一次创建时被调用 | 初始化,例如加载布局,初始化Activity所需的数据 | 不可见 |
onStart | Activity正在被启动 | – | 可见,但是还不能和用户交互 |
onRestart | Activity正在被重新启动,当前Activity由不可见变为可见状态时被调用 | 数据恢复 | 可见 |
onResume | Activity已经可见 | 展示UI,同用户交互 | 可见,且可和用户交互 |
onPause | Activity正在停止 | 可做一些存储数据,停止动画等动作,但不能太耗时,onPause执行完,新Activity才会执行Onresume | – |
onStop | Activity即将停止 | 可做一些稍微重量级的回收工作,但同样不能太耗时 | – |
onDestory | Activity即将被销毁 | 做一些回收工作和最终的资源释放 |
Activity常见场景的回调:
1、Activity第一次启动:
onCreate->onStart->onResume
2、打开新的Activity或者切换到桌面,原Activity回调:
onPause->onStop
*有种特殊场景,若调起的是透明主题的Activity,不会回调onStop。
疑问:调起非全屏的Activity呢?
3、再次回到原Activity时:
onRestart->onStart->onResume
4、按back键退出:
onPause->onStop->onDestroy
5、
任务栈
启动模式
参数传递
-
通过Intent传递数据(简单数据类型或可序列化对象)
-
通过静态变量传递数据(不建议)
-
通过全局对象传递数据(Application)
-
EventBus
-
借助外部存储
-
LocalBroadcast
异常恢复机制
启动过程
2. Service
基本概念
生命周期
七大生命周期
[外链图片转存失败,源站可能有防外链图片转存中…]!链机制,建mg-kkKP8f9Fd6-1675911203gc_centerad33(httg-blog.csdnimg.cn/208f9a9ecc4a4345aa01bd6f2806ad4e.gif#p3)]]
绑定过程
启动过程
3. BroadcastReceiver
基本概念
使用方法
工作过程
4. ContentProvider
基本概念
使用方法
工作过程
总结
官方哈佛给