博客
关于我
【Android学习】Android系统架构
阅读量:250 次
发布时间:2019-03-01

本文共 918 字,大约阅读时间需要 3 分钟。

Android系统架构采用分层架构,从低层到高层分为五个层次:Linux内核、硬件抽象层、系统运行库、开发框架以及核心应用程序。这种分层设计使得系统结构清晰,功能模块化,便于维护和扩展。

1. Linux内核

Linux内核作为Android系统的基础,负责底层功能的实现。它处理设备的硬件交互、内存管理、文件系统操作等基础任务。Android运行时(如ART)和应用程序的执行都依赖于Linux内核的支持。

2. 硬件抽象层(HAL)

HAL是硬件抽象层,作为设备内核驱动的抽象接口。它为更高层的Java API框架提供访问底层设备的接口。HAL包含多个库模块,每个模块对应特定硬件组件的接口。当应用程序需要访问硬件时,系统会自动加载相应的库模块。

3. 系统运行库

系统运行库包括两部分:

  • 核心运行时库:提供Java API框架的基础功能,支持Java 8特性,如注解和并发处理。部分核心功能通过原生C/C++库实现,如图形绘制和硬件访问。
  • Android运行时(ART):通过预先编译(AOT)和优化垃圾回收,提升性能和效率。ART采用DEX字节码格式,减少内存占用,适合多线程运行。

4. 开发框架

开发框架提供构建Android应用所需的Java API。其主要组成部分包括:

  • 视图系统:构建用户界面,支持列表、文本框等控件。
  • 资源管理器:管理非代码资源,如图像和字符串文件。
  • 通知管理器:在状态栏显示自定义提醒。
  • 活动管理器:管理应用生命周期,提供导航返回栈功能。
  • 内容提供器:允许应用访问其他应用数据或共享数据。

5. 核心应用程序

Android系统附带核心应用,如电子邮件、日历和联系人。这些应用作为系统应用运行,也可作为开发者测试的基础功能模块。

6. 支持包

支持包用于扩展Android功能,适用于不同版本开发:

  • v4库:最初实现于2011年,支持Fragment、通知兼容等功能。
  • v7库:支持Android2.1及以上,依赖v4库,提供Action Bar功能。
  • v13库:针对Android3.2及以上版本,适合平板开发。

通过这种分层架构,Android系统实现了模块化设计,提升了系统的扩展性和维护性。

转载地址:http://jkqt.baihongyu.com/

你可能感兴趣的文章
Plotly:如何在桑基图中设置节点位置?
查看>>
Plotly:如何处理重叠的颜色条和图例?
查看>>
Plotly:如何手动设置 plotly express 散点图中点的颜色?
查看>>
Plotly:如何结合 make_subplots() 和 ff.create_distplot()?
查看>>
Plotly:如何绘制累积的“步骤“;直方图?
查看>>
Quartz进一步学习与使用
查看>>
Plotly条形图-根据正/负值更改颜色-python
查看>>
PLSQL developer12安装图解
查看>>
PLSQL Developer调试 存储过程和触发器
查看>>
PLSQL window操作
查看>>
plsql 存储过程 测试
查看>>
plsql 安装后database下拉没有东西
查看>>
PLSQL_Oracle PLSQL内置函数大全(概念)
查看>>
PLSQL_案例优化系列_体验逻辑结构如何影响SQL优化(案例3)
查看>>
PLSQL中INDEX BY TABLE的 DELETE操作
查看>>
plsql学习笔记---plsql相关概念,以及基础结构
查看>>
plsql数据库异常---plsql 登录后,提示数据库字符集(AL32UTF8)和客户端字符集(ZHS16GBK)不一致
查看>>
plsql查询乱码问题解决
查看>>
PLSQL的DBMS_GETLINE
查看>>
quartz简单demo,教你最快使用quartz
查看>>