一、andoid系统架构采用分层架构思想,包括应用程序层,应用框架层,系统库和android运行时,lInux内核android
二、组件介绍web
(1)view:andoid应用中全部用户界面元素都是使用View和ViewGroup对象构建而成,view对象用于屏幕上绘制可供用户交互的内容架构
(2)activity是一个应用程序组件,表示用户界面的单一屏幕,用户能够用来交互为了完成某项任务,activity至关于web应用程序中的页面,activity提供一个可视化区域,在当前区域中能够放置各类控件,一个app通常因为若干个activity组成,通常会有一个主activityapp
(3)Service是一个能够在后台执行长时间运行操做而不提供用户界面的应用组件,例如常见的音乐播放器框架
(4)BroadcastReceiver是一种用于响应系统范围广播通知的组件异步
广播分为两类:ide
a、普通广播:彻底异步,能够在同一时刻被全部接受者接收到对象
b、有序广播:接受者按照预先声明的优先顺序一次接受广播blog
(5)Intent负责组件的启动,想启动某个组件,必须向系统传递一则消息,Intent就是一个消息传递对象,通常有如下用途:事件
a、启动activity:activity表示应用中的一个屏幕,经过将intent传递给startActity(),就能够启用新的activity实例
b、启动服务:经过将 Intent 传递给 startService()或bindService(),能够启动服务执行一次性操做(例如,下载文件)
c、传递广播:系统将针对系统事件(例如:系统启动或设备开始充电时)传递各类广播。经过将 Intent 传递给 sendBroadcast()、sendOrderedBroadcast() 或 sendStickyBroadcast(),以将广播传递给其余应用。
(6)content provider:知足app之间的数据共享需求,针对这种APP之间的数据交互,Android提供了Content Provider,他是不一样应用程序之间进行数据交换的标准API,当一个APP经过Content Provider暴露本身的数据后,其余APP就能够经过ContentResolver来操做Content暴露的数据。