
Android 大致可以分为四层架构:Linux 内核层、系统运行库层、应用框架层和应用层。

Linux 内核层(Linux Kernel):
Android 系统是基于 Linux 内核的,这一层为 Android 设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi 驱动、电源管理等。
系统运行库层(Libraries):
这一层通过一些 C/C++ 库来为 Android 系统提供了主要的特性支持。如 SQLite 库提供了的支持,OpenGL|ES 库提供了 3D 绘图的支持,Webkit 库提供了浏览器内核的支持等。
同样在这一层还有 Android 运行时库,它主要提供了一些核心库,能够允许开发者使用 Java 语言来编写 Android 应用。另外,Android 运行时库中还包含了 Dalvik 虚拟机(5.0系统之后改为ART运行环境),它使得每一个 Android 应用都能运行在独立的进程当中,并且拥有一个自己的 Dalvik 虚拟机实例。相较于 Java 虚拟机,Dalvik 是专门为移动设备定制的,它针对手机内存、CPU 性能有限等情况做了优化处理。
应用框架层(Application Framework):
这一层主要提供了构建应用程序时可能用到的各种 API,Android 自带的一些核心应用就是使用这些 API 完成的,开发者也可以通过使用这些 API 来构建自己的应用程序。
应用层(Applications):
所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等程序,或者是从 Google Play 上下载的小游戏,当然还包括我们自己开发的程序。
1、 四大组件
Android 系统四大组件分别是活动(Activity)、服务(Service)、广播(Broadcast Receiver)和内容提供器(Content Provider)。
* 活动是所有Android 应用程序的门面,凡是在应用中看到的东西,都是放在活动中的。
* 服务看不到,它会在后台默默运行,即使用户退出了应用,服务仍然是可以继续运行的。
* 广播允许应用接收来自各处的广播消息,比如电话、短信等,当然应用同样也可以向外发出广播消息。
* 内容提供器为应用程序之间共享数据提供了可能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。
2、系统控件
Android 系统为开发者提供了丰富的系统控件,使得开发者可以很轻松地编写出漂亮的界面。当然如果不满意于系统自带的控件效果,也完全定制属于自己的控件。
3、SQLite
Android 系统还自带了一种轻量级、运算速度极快的嵌入式关系型。它不仅支持标准的 SQL 语法,还可以通过 Android 封装好的 API 进行操作,让存储和读取数据变得很方便。
4、多媒体
Android 系统还提供了丰富的多媒体服务,如音乐、视频、录音、拍照、闹铃,等等,这一切都可以在程序中通过代码进行控制,让应用变得更加丰富多彩。
5、地理位置定位
移动设备和 PC 相比,地理位置定位功能算是很大的一个亮点。现在的 Android 手机都内置有GPS,走到哪儿都可以定位到自己的位置,发挥你的想象就可以做出创意十足的应用,如果再结合功能强大的地图功能,就可以提供 LBS(Location Based Service)服务啦O(∩_∩)O~。
JDK:JDK是 Java 语言的软件开发工具包,它包含了 Java 的运行环境、工具集合、基础类库等内容。注意,以后我们的示例 Android 程序必须要使用 JDK 8 或以上版本才能正常运行。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-76464-1.html
不用转了