目录
1. Activity
2. Service
3. BroadcastReceiver
4. ContentProvider
四大组件各自承担着不同的职责,彼此之间协同工作,共同为用户提供一个流畅的APP体验。
1. Activity
负责展示用户界面,就像App的一个个“页面”,用户通过它与应用交互。
【Android】四大组件之Activity-CSDN博客文章浏览阅读1.2k次,点赞20次,收藏24次。Activity 是 Android 应用的核心交互组件。_android之activityhttps://blog.csdn.net/qq_15711195/article/details/147526174
2. Service
在后台默默干活的打工人,比如播放音乐或下载文件,没有界面但能长时间运行。
【Android】四大组件之Service-CSDN博客文章浏览阅读1k次,点赞15次,收藏11次。Service是Android应用的核心后台组件。_android之servicehttps://blog.csdn.net/qq_15711195/article/details/147531108
3. BroadcastReceiver
像“收音机”一样接收系统或应用发出的广播消息,比如电量低或网络变化,然后做出响应。
【Android】四大组件之BroadcastReceiver-CSDN博客文章浏览阅读690次,点赞13次,收藏18次。BroadcastReceiver用于监听系统或应用发出的广播事件,实现跨组件通信。https://blog.csdn.net/qq_15711195/article/details/147643486
4. ContentProvider
是“数据管家”,管理应用的数据并提供统一接口,让其他应用也能访问这些数据。
【Android】四大组件之ContentProvider-CSDN博客文章浏览阅读231次,点赞2次,收藏6次。ContentProvider就是用来共享和管理数据的组件。https://blog.csdn.net/qq_15711195/article/details/147652733
- Activity管界面
- Service管后台
- BroadcastReceiver管消息
- ContentProvider管数据
组件 | 核心功能 | 生命周期控制方 | 启动/触发方式 | 通信方式 | 典型应用场景 | 注意事项 |
---|---|---|---|---|---|---|
Activity | 用户界面交互载体 | 开发者主动管理 |
| Intent 传递数据,Bundle 保存状态 | 登录页、详情页等界面跳转 | 避免内存泄漏 |
Service | 后台任务执行或跨进程服务 | 系统根据绑定/启动状态管理 |
| Binder (绑定服务) / Broadcast | 音乐播放、文件下载、位置上报 | 主线程执行需防ANR,长时间任务用WorkManager |
Broadcast Receiver | 系统/应用事件监听与响应 | 系统触发 | 广播发送sendBroadcast() | Intent 携带广播数据 | 网络状态变化、开机启动、低电量 | 动态注册需及时解绑,onReceive() 限时10秒 |
Content Provider | 跨应用数据共享与结构化数据管理 | 开发者定义访问规则 | ContentResolver 操作URI | Cursor / ContentValues | 通讯录访问、应用间数据库共享 | 需声明读写权限,URI权限校验防止越权访问 |