Android系统架构

/ / Android系统架构

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

Android Architecture

Linux内核

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

Libraries库

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

Android Libraries

此类别包含特定于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 Runtime

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

Dalvik VM利用Java内在的Linux核心函数,如内存管理和多线程,Dalvik VM使每个Android应用程序可以使用自己Dalvik虚拟机在其自己的进程中运行

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

Application Framework

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

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

  • Activity Manager           -  控制应用程序生命周期和Activity堆栈的各个方面。

  • Content Providers         - 允许应用程序发布数据并与其他应用程序共享数据。

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

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

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

祝学习愉快! (发现内容有误?请选中要编辑的内容 -> 右键 -> 修改 -> 提交!帮助我们改进教程质量)

精选教程推荐

👇 以下精选教程可能对您有帮助,拓展您的技术视野

Claude Code 工程化实战 -〔黄佳〕

AI 时代程序员职业发展必修课 -〔Brook〕

跟月影学前端智能体开发 -〔月影〕

攻克视频技术 -〔李江〕

OAuth 2.0实战课 -〔王新栋〕

Kafka核心源码解读 -〔胡夕〕

即时消息技术剖析与实战 -〔袁武林〕

Swift核心技术与实战 -〔张杰〕

大规模数据处理实战 -〔蔡元楠〕

📝 好记忆不如烂笔头,留下您的学习笔记吧!

暂无学习笔记,成为第一个分享的人吧!

您的笔记将帮助成千上万的学习者