Android分为4层架构:
1lilux内核层。为安卓设备的硬件提供底层驱动,如显示驱动,音频驱动,照相机驱动,蓝牙驱动。
2系统运行库。通过c/c++库为安卓系统提供主要特性支持,如SQLite提供了数据库支持,WebKit库提供浏览器内核支持。同时在这一层还有安卓运行时库,主要提供一些核心库,允许开发者编写java编写安卓应用。安卓运行库包含Dalvik虚拟机,使得每一个安卓应用都能运行在独立的进程中,并拥有一个Dalvik虚拟机实例。相较于java虚拟机,Dalvik专门为移动设备定制,针对手机的cpu,内存做过优化处理。
3应用框架层。提供构建应用程序可能用到的各种api。开发者可以利用这些api进行开发。
4应用层。所有的手机的应用程序都是这一层。
安卓系统的四大组件分别是活动activity,服务service,广播接收器broadcast receiver和内容提供器contentprovider。
活动是安卓应用程序的门面,应用中看得到的内容都是放在活动中。服务在后台运行,及时退出应用,服务依然可以运行。广播接收器允许你的应用接受和发送广播消息。内容提供器则为应用程序之间的共享数据提供了可能,比如读取系统电话簿的号码。
安卓系统提供了丰富的系统控件,可以用之搭建漂亮的页面。也可以自己定制控件。
安卓系统自带轻量级嵌入式关系型数据库SQLite支持标准的sql,也可以通过安卓封装好的api访问存储操作。
开发安卓需要的工具:安卓sdk,android Studio(谷歌官方推出)或者eclipse,adt谷歌提供的eclipse插件,用于在eclipse中提供一个强大的高度集成的安卓开发环境,有了这个开发环境可以联机调试,分析性能。