组件是可以调用的基本功能模块。Android的应用程序就是由组件组成的,Android系统中有四个重要的组件,分别是Activity(活动)、Service(服务)、BroadcaseReceiver(广播接收器)和ContentProvider(内容提供器)。

  1. Activity-活动:
    (1)、Activity是Android程序的呈现层,显示可视化的用户界面,并接收与用户交互所产生的界面事件,如单击、触摸事件。在界面上呈现形式为全屏窗体、非全屏悬浮窗体的对话框。
    (2)、Activities是可执行的代码块,由用户或者操作系统来进行初始实例化,并在他们被需求时致以运行。
    (3)、Activities可以与用户、请求数据或者其他Activity、Service的服务通过query或Intent进行交互。
    (4)、对于一个Android应用程序而言,可以有一个或多个Activity,一般在程序启动后会呈现一个Activity,用于提示用户已经正常启动此Activity。当Activity不积极运行时,可以被Android系统终止已节省内存。

  2. Service-服务:
    (1)、Service用于没有用户界面,但需要长时间在后台运行的应用。Service有点类似于桌面应用或者服务器操作系统上的服务和守护进程。
    (2)、Service是在后台运行的可执行的代码块,从它被初始化一直运行到此程序关闭。
    (3)、Service最经典的一个例子是音乐播放器,尽管用户已经使用了其它的应用程序,但仍然需要持续播放音乐,比如在你听歌的时候,有人打个电话进来,此时音乐播放器的服务仍然子啊后台运行着,等你电话接完,音乐又会重新播放,在你接电话的时候是无音乐播放器的界面的,而程序一直执行Service来实现后台任务。

  3. BroadcastReceiver-广播接收器
    (1)、Broadcast和Intent Receivers对从其他的应用程序的服务请求做出一个全系统广播的响应,这些广播响应可能来自于Android系统本身或者是任何在其系统上运行的程序。
    (2)、BroadcaseReceiver是用来接受并响应广播消息的组件。
    (3)、BroadcaseReceiver不包含任何用户界面,但可以通过启动Activity或者Notification消息通知栏通知用户接收到重要信息。
    (4)、Activity或Service通过执行一个IntentReceiver 为其他应用程序提供了访问其功能的功能。Intent Receiver是一段可执行代码块,对其他Activity的数据或服务请求做出响应。请求的Activity(客户端)生成一个Intent,把其添加至Android Framework中,来指出哪些应用程序(目标程序)接收并对其做出响应。
    (5)、Intent是Android的主要构成元素之一,它从现有的应用程序中创造新的应用程序。Intent实现了应用程序和其他的应用程序和服务交换所需信息的功能。

  4. ContentProvider-内容提供器:
    (1)、ContentProvider是Android系统提供的一种标准的共享数据的机制,应用程序可以通过ContentProvider来访问其他应用程序的私有数据(私有数据可以是存储在文件系统中的文件,也可以是SQLite中的数据库)。
    (2)、Android系统内部也提供一些内置的ContentProvider,能够为应用程序提供重要的数据信息。

  5. Android四大组件都具有自己的生命周期,是从组件建立到组件销毁的整个过程。在生命周期中,组件会在可见、不可见、活动、非活动等状态中不断变化。

以上内容仅供学习参考,谢谢!

Android学习之四大组件简单介绍相关推荐

  1. 【Android】安卓四大组件之内容提供者

    [Android]安卓四大组件之内容提供者 1.关于内容提供者 1.1 什么是内容提供者 内容提供者就是contentProvider,作用有如下: 给多个应用提供数据 类似一个接口 可以和多个应用分 ...

  2. 【Android】安卓四大组件之Activity(一)

    [Android]安卓四大组件之Activity(一) 前言 Activity是Android学习中的一个重要组件,想要对其进行系统的了解可以分为几块内容,这一大章节的内容是有关于activity之间 ...

  3. Android开发的四大组件

    Android 开发的四大组件分别是:活动(activity),用于表现功能:服务(service),后台运行服务,不提供界面呈现:广播接受者(Broadcast Receive),勇于接收广播:内容 ...

  4. Android架构及四大组件

    Android架构及四大组件 Android架构 Loader层: Linux内核层 硬件抽象层 (HAL) Android Runtime & 系统库 Framework层 App层 Sys ...

  5. Android中的四大组件详解

    Android中的四大组件详解 我们都知道Android系统应用层框架中,为开发者提供了四大组件来便于应用的开发,它们是Activity.Service.BroadcastReceiver.Conte ...

  6. Android AccountManager 账户同步管理简单介绍

    Android AccountManager 账户同步管理简单介绍 文章目录 Android AccountManager 账户同步管理简单介绍 前言 AccountManager 简介 如何让自己的 ...

  7. Android学习——UI高级组件三

    Android学习--UI高级组件三 PopupWindow(弹出式窗口) Android的对话框有两种:PopupWindow和AlertDialog.它们的不同点在于:AlertDialog位置固 ...

  8. wex5 数据绑定组件简单介绍

    wex5 数据绑定组件简单介绍 了解一下wex5组件 一个页面分为数据和展现两个部分,组件也对应分为数据组件和展现组件. 使用数据组件存储页面中的数据:使用展现组件将页面展现出来.数据组件和展 现组件 ...

  9. android学习日记 RecyclerView的简单使用

    android学习日记 RecyclerView的简单使用 文章目录 android学习日记 RecyclerView的简单使用 一.如何使用RecyclerView? 二.使用步骤 1.首先在bui ...

最新文章

  1. Windows 8 动手实验系列教程 实验8:Windows应用商店API
  2. (转)写的非常好的一个WPF学习之路
  3. 机器学习算法Python实现:word2vec 求词语相似度
  4. Configured broker.id 2 doesn‘t match stored broker.id 3 in meta.properties
  5. c语言中合法转义字符,判断c语言合法转义字符
  6. linux mysql提交_MySQL 事务提交过程
  7. 脚本启动显示查询频繁被服务器防御_又被CC攻击弄得心有余悸?莫怕!这里教你如何防御...
  8. 草莓甜品海报设计,甜出画面,受得住诱惑么?
  9. UVA494 Kindergarten Counting Game【输入输出+水题】
  10. Deep Learning快速学习方法
  11. JavaScript之定义函数的方法
  12. Robotics 机器人运动学 DH参数建模
  13. QT使用AES加密解密
  14. Java银联在线网关支付测试总结
  15. golang 开源项目
  16. iis8.0php套件包,iis 8.0 express-IIS8.0安装包下载 官方免费版--pc6下载站
  17. 图片太大怎么改小kb?简单的图片压缩方法分享
  18. vue报错Navigating to current location (/login) is not allowed
  19. 信用风险建模 in Python 系列 7 - ASRF 模型
  20. 基于网络视频监控的人员考勤系统设计

热门文章

  1. leetcode 802. 找到最终的安全状态(Find Eventual Safe States)
  2. swift之Mac中NSView视图里的截图【ScrollView中的内容截图】
  3. Java 中单引号和双引号的区别
  4. Ehcache分布式缓存及测试方法
  5. 上周热点回顾(4.14-4.20)
  6. poj 3083 Children of the Candy Corn(bfs+dfs 数组模拟方向)
  7. HTML5 音视频操作
  8. matlab练习程序(TV模型图像修复)
  9. Dart 13-Day
  10. Dart 5-Day