四大组件的工作过程

栏目: Android · 发布时间: 5年前

内容简介:Android 四大组件分别是 Activity、Service、BroadcastReceiver 和 ContentProvider。Service 有两种工作状态:一种是启动状态(

Android 四大组件分别是 Activity、Service、BroadcastReceiver 和 ContentProvider。

四大组件的运行状态

  1. 除了 BroadcastReceiver 以外,其他三种组件都必须在 AndroidManifest 中注册,而 BroadcastReceiver 既可以在 AndroidManifest 中注册也可以通过代码动态注册。
  2. Activity、Service 和 BroadcastReceiver 的调用都需要借助 Intent,而 ContentProvider 却不需要。
  3. Activity 是一种展示型组件,用于向用户展示界面,可由显式或者隐式 Intent 来触发启动。
  4. Service 是一种计算型组件,用于在后台执行一系列计算任务。尽管 Service 是用于执行后台计算的,但是它本身是运行在主线程中的,因此耗时的后台计算仍然需要在单独的线程中去完成。Service 组件有两种状态:启动状态和绑定状态。当 Service 处于绑定状态时,外界可以很方便地和 Service 进行通信。
  5. BroadcastReceiver 是一种消息型组件,用于在不同的组件乃至不同的应用之间传递消息,它工作在系统内部。广播有两种注册方式:静态注册和动态注册。静态注册是在 AndroidManifest 中注册,在应用安装的时候会被系统解析,这种广播不需要应用启动就可以收到相应的广播。动态注册需要通过 Context.registerReceiver() 来注册,通过 Context.unRegisterReceiver() 来解除, 这种广播需要应用启动才能注册并接收广播。BroadcastReceiver 组件一般来说不需要停止,它也没有停止的概念。
  6. ContentProvider 是一种数据共享型组件,用于向其他组件乃至其他应用共享数据。ContentProvider 中的 insertdeleteupdatequery 方法需要处理好线程同步,因为这几个方法是在 Binder 线程池中被调用的,另外 ContentProvider 组件也不需要手动停止。

Activity 的工作过程

四大组件的工作过程

Service 的工作过程

Service 有两种工作状态:一种是启动状态( startService ),主要用于执行后台计算;一种是绑定状态( bindService ),主要用于其他组件和 Service 的交互。需要注意的是,这两种状态是可以共存的。

启动状态

四大组件的工作过程

绑定状态

四大组件的工作过程

BroadcastReceiver 的工作过程

简单回顾下我们使用广播接收器的过程:

onReceive
registerReceiver

广播的注册过程

广播注册分为静态注册和动态注册,其中静态注册是由 PackageManagerService 来完成整个注册过程,当然其他三大组件也是这样完成注册的。

动态注册过程

四大组件的工作过程

发送和接收过程

四大组件的工作过程

  1. 广播的发送有几种类型:普通广播(Normal Broadcast)、系统广播(System Broadcast)、有序广播(Ordered Broadcast)、粘性广播(Sticky Broadcast)和 App应用内广播(Local Broadcast)。
  2. 从 Android 3.1 开始,处于停止状态的应用无法接受到开机广播。停止状态分为两种情况:一是应用安装后未运行;二是应用被手动或者其他应用强停了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

ACM图灵奖演讲集

ACM图灵奖演讲集

阿申豪斯特 / 苏运霖 / 电子工业出版社 / 2005-4 / 55.0

本书完整地收录了这些演讲,并配之以部分获奖者撰写的后记,旨在反映过去数年来这一领域中发生的变化。对任何一位计算机科学的历史与发展有兴趣的人来说,本书都极具收藏价值。  本文收录了自图灵奖开始颁发的1966年起到1985年这20年间图灵奖获得者在授奖大会上所做演讲的全文。由于在此期间有三次是把奖项同时授予两个人的,而其中有两次两位获奖者分别做了演讲,因此一共收录了22篇演讲稿。本书把这些演讲分为两大......一起来看看 《ACM图灵奖演讲集》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具