1、andoid系统架构采用分层架构思想,包括应用程序层,应用框架层,系统库和android运行时,lInux内核
2、组件介绍
(1)view:andoid应用中所有用户界面元素都是使用View和ViewGroup对象构建而成,view对象用于屏幕上绘制可供用户交互的内容
(2)activity是一个应用程序组件,表示用户界面的单一屏幕,用户可以用来交互为了完成某项任务,activity相当于web应用程序中的页面,activity提供一个可视化区域,在当前区域中可以放置各种控件,一个app一般由于若干个activity组成,一般会有一个主activity
(3)Service是一个可以在后台执行长时间运行操作而不提供用户界面的应用组件,例如常见的音乐播放器
(4)BroadcastReceiver是一种用于响应系统范围广播通知的组件
广播分为两类:
a、普通广播:完全异步,可以在同一时刻被所有接受者接收到
b、有序广播:接受者按照预先声明的优先顺序一次接受广播
(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暴露的数据。