📜  Android-建筑

📅  最后修改于: 2021-01-05 04:48:23             🧑  作者: Mango


Android操作系统是一堆软件组件,大致分为五个部分和四个主要层,如体系结构图中所示。

Android架构

Linux内核

底层是Linux-Linux 3.6,带有大约115个补丁。这提供了设备硬件之间的抽象级别,它包含所有必需的硬件驱动程序,例如摄像头,键盘,显示器等。此外,内核还处理Linux真正擅长的所有事情,例如网络和大量设备驱动程序,这消除了与外围硬件接口的麻烦。

图书馆

在Linux内核之上,有一组库,包括开放源Web浏览器引擎WebKit,著名的库libc,SQLite数据库(用于存储和共享应用程序数据的有用存储库),用于播放和记录音频和视频的库,SSL。负责互联网安全等的图书馆

Android库

该类别包含特定于Android开发的那些基于Java的库。除了方便用户界面构建,图形绘制和数据库访问的那些库之外,此类库的示例还包括应用程序框架库。 Android开发人员可以使用的一些关键核心Android库的摘要如下-

  • android.app-提供对应用程序模型的访问,并且是所有Android应用程序的基石。

  • android.content-促进应用程序和应用程序组件之间的内容访问,发布和消息传递。

  • android.database-用于访问内容提供商发布的数据,并包括SQLite数据库管理类。

  • android.opengl -OpenGL ES 3D图形渲染API的Java接口。

  • android.os-为应用程序提供对标准操作系统服务的访问权,包括消息,系统服务和进程间通信。

  • android.text-用于渲染和操作设备显示屏上的文本。

  • android.view-应用程序用户界面的基本构建块。

  • android.widget-丰富的预构建用户界面组件,例如按钮,标签,列表视图,布局管理器,单选按钮等。

  • android.webkit-一组旨在允许将Web浏览功能内置到应用程序中的类。

在介绍了Android运行时中基于Java的核心库之后,现在是时候将我们的注意力转向包含在Android软件堆栈这一层中的基于C / C++的库。

Android执行阶段

这是体系结构的第三部分,位于底层的第二层。本部分提供了一个称为Dalvik虚拟机的关键组件,它是专门为Android设计和优化的Java虚拟机。

Dalvik VM利用Linux核心功能,例如内存管理和多线程,这是Java语言所固有的。 Dalvik VM使每个Android应用程序可以使用其自己的Dalvik虚拟机实例在自己的进程中运行。

Android运行时还提供了一组核心库,使Android应用程序开发人员可以使用标准Java编程语言编写Android应用程序。

应用框架

应用程序框架层以Java类的形式为应用程序提供了许多更高级别的服务。允许应用程序开发人员在其应用程序中使用这些服务。

Android框架包括以下关键服务-

  • 活动管理器-控制应用程序生命周期和活动堆栈的所有方面。

  • 内容提供商-允许应用程序发布数据并与其他应用程序共享数据。

  • 资源管理器-提供对非代码嵌入式资源的访问,例如字符串,颜色设置和用户界面布局。

  • Notifications Manager-允许应用程序向用户显示警报和通知。

  • 视图系统-用于创建应用程序用户界面的一组可扩展视图。

应用领域

您将在顶层找到所有Android应用程序。您将只编写要安装在此层上的应用程序。此类应用程序的示例包括通讯录,浏览器,游戏等。