Android四大组件的简介

Android开发四大组件分别是:

一、活动(Activity): 用于表现功能。二、服务(Service): 后台运行服务,不提供界面呈现。

三、广播接收器(BroadcastReceiver):用于接收广播。四、内容提供者(Content Provider): 支持在多个应用中存储和读取数据,相当于数据库

一、Android 中,Activity是所有程序的根本,也是Android 当中最基本的模块之一。

在Android的程序当中,Activity 一般代表手机屏幕的一屏。如果把手机比作一个浏览器,那么Activity就相当于一个网页。在Activity 当中可以添加一些Button、Check box 等控件。可以看到Activity 概念和网页的概念相当类似。一般一个Android 应用是由多个Activity 组成的。这多个Activity 之间可以进行相互跳转,例如,按下一个Button按钮后,可能会跳转到其他的Activity。和网页跳转稍微有些不一样的是,Activity 之间的跳转有可能返回值,例如,从Activity A 跳转到Activity B,那么当Activity B 运行结束的时候,有可能会给Activity A 一个返回值。这样做在很多时候是相当方便的。

二、Service 是android 系统中的一种组件,它跟Activity 的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service 是没有界面的长生命周期的代码。Service是一种程序,它可以运行很长时间,但是它却没有用户界面。这么说有点枯燥,来看个例子。打开一个音乐播放器的程序,这个时候若想上网了,那么,打开Android浏览器,这个时候虽然已经进入了浏览器这个程序,但是,歌曲播放并没有停止,而是在后台继续一首接着一首的播放。其实这个播放就是由播放音乐的Service进行控制。当然这个播放音乐的Service也可以停止,例如,当播放列表里边的歌曲都结束,或者用户按下了停止音乐播放的快捷键等。它有两种启动方式:

startService():Service会经历onCreate -> onStart(如果Service还没有运行,则android先调用onCreate()然后调用onDestroy;一旦开启,服务于开启者无关,服务会一直在后台运行,就算开启组件已经销毁,服务依旧运行。

bindService():Service会经历onCreate- onbind()-onUnbind()-onDestroy();服务开启会与组件绑定,多个组件可以和一个服务绑定,一旦调用onUnbind(),服务被销毁;

三、在Android 中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制;广播有两种广播:

1、无序广播:

无序广播是完全异步的,发送广播时。所有的广播接收者都能收到,并且无序广播不可以被修改,不可以被拦截,效率较高。

2、有序广播:

有序广播是有是有一定顺序的,发送广播时,只有一个广播接收者可以受到,有序广播可以被拦截,可以被修改,效率较低。  

四、Content Provider 是Android提供的第三方应用数据的访问方案。

内容提供者是应用程序之间共享数据的接口,它有一套完整的机制,允许一个程序访问另一个程序的内容,并且保证被访问内容的安全,它是Android中不同程序共享数据的标准。

原文地址:https://www.cnblogs.com/zhanghongxian666/p/9971326.html