第九章、 四大组件的工作过程

第九章、 四大组件的工作过程

1. 四大组件的运行状态
  1. Android的四大组件中除了BroadcastReceiver以外,其它三种组件都必须在AndroidManifest中注册,对于BroadRecevier来说,它既可以在AndroidManifest注册也可以通过代码注册。在调用方式上,Activity、Service和BroadcastRecevier需要借助Intent,而ContentProvider无需借助Intent。

  2. Activity

    1. Activity是一种展示型组件,用于向用户直接展示一个界面,并且可以接收用户的输入信息从而进行交互。
    2. Activity的启动由Intent触发,Intent分为显式和隐式。显示可以明确指定一个Activity组件。隐式可以指向一个或者多个,甚至没有指向。
  3. Service

    1. Service是一种计算型组件,用于在后台执行一系列计算任务。Activity组件只有一种运行模式,即Activity处于 启动状态;Service组件有两种状态:启动状态,绑定状态。
  4. BroadCastReceiver

    1. 是一种消息型组件,用于在不同的组件乃至不同的应用之间传递消息。
    2. BroadCastReceiver的注册有两种方式:静态注册和动态注册。静态注册是指在AndroidManifest中注册广播,这种广播在应用安装时就会被系统解析。此种形式的广播不需要启动应用就可以接收到相应的广播。动态注册广播需要通过Context.registerReceiver()来是实现,并且在不需要的时候通过Context.unregisterReceiver()来解除广播,此种方式必须启动应用注册广播才能接收到消息。
    3. BroadCast组件可以用来实现低耦合的观察者设计模式。BroadCastReceiver不适合用来执行耗时操作。
  5. ContentProvider
    1. ContentProvider是一种数据共享性组件,用于向其它组件乃至其它应用共享数据。
    2. 对于一个ContentProvider组件来说,它的内部需要实现增删改查四种操作,内部维持着一份数据集合,这个数据集合既可以通过数据库来实现,也可以通过其它任何形式来实现。
2.Activity的工作过程
  1. Activity的工作流程 (以下uml图片为转载,侵删)
    Activity工作流程
3. Service的工作流程
  1. Service的工作流程:
    Service有两种状态:启动状态和绑定状态,两种状态是可以共存的。
    1. 启动状态:
      Service启动过程
    2. 绑定过程:
      Service绑定过程
4.BroadcastReceiver的工作过程:
BroadcastReceiver的工作过程主要包含两个方面:
1.广播的注册过程;
2.广播的发送和接收过过程。
5. 广播的注册过程:
广播的注册过程分为静态注册和动态注册。 
静态注册的时候是由PackageManagerService来完成整个注册过程。
  1. 广播的动态注册过程:
    广播的动态注册

  2. 广播的发送和接收过程:
    广播的发送和接收

6.ContentProvider的工作过程:

ContentProvider的工作流程)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值