- 参考: Android Developers
- (https://developer.android.google.cn/)
Android 是基于 Linux 的开源软件栈,下图为官网给出的 Android 平台主要组件。
Android 平台从上(直接与用户交互)到下(直接与硬件交互)包含:
- 系统应用层 (System Apps)
- Java API 框架 (Java API Framework)
- 原生 C/C++ 库 (Native C/C++ Libraries)
- Android 运行时 (ART, Android Runtime)
- 硬件抽象层 (HAL, Hardware Abstraction Layer)
- Linux 内核层 (Linux Kernel)
系统内置的应用程序以及非系统级的应用程序(即用户安装的程序)都属于应用层,负责与用户进行交互。常见的系统应用包括日历、短信、邮件、默认浏览器、联系人、默认键盘等,这些系统应用与
为开发人员提供开发应用所需要的 API,开发人员可以通过以 Java 语言编写的 API 使用 Android OS 的整个功能集,可以简化应用开发流程。包括以下组件及服务:
- 活动管理器 :管理各个 的生命周期,以及页面导航跳转功能等 相关操作。
- 位置管理器 :向应用程序提供地理位置及定位功能服务。
- 包管理器 :管理所有安装在 中的应用程序。
- 通知管理器 :向应用程序提供状态栏信息提示的功能。
- 资源管理器 :管理应用程序使用的非代码资源,如本地文本、图片、布局文件、颜色文件等。
- 电话管理器 :管理所有的移动设备功能。
- 窗口管理器 :管理所有已开启的窗口程序。
- 内容提供器 :向应用程序提供不同 之间的数据共享服务。
- 视图系统 :构建应用程序的基本组件。
许多核心的 系统组件及服务构建自原生代码,需要 C 与 C++ 编写的原生库依赖。如果需要 C 或 C++ 依赖,可以使用 直接从原生代码访问某些原生平台库。 一些常用的库如下所示:
- :3D 绘图函数库。
- :底层的 2D 图形渲染引擎。
- :开放媒体加速库,提供统一的接口,用于加速嵌入式和移动设备上多媒体应用程序中音频、视频和图像的捕获、呈现等操作任务。
- :从 继承的标准C系统函数库,专门为基于 的设备制定。
- :多媒体库,支持多种常用音视频格式的常用操作。
- :轻量级关系型数据库引擎。
- :安全套阶层,为网络通信提供安全及数据完整性的安全协议。
- : 浏览器引擎,为 与 提供支持。
对于运行 及更高版本的设备中,每个应用都在其自己的进程中运行,并拥有自己的 实例。ART 通过执行 文件在有限的内存中运行多个虚拟机, 文件是一种专门为 设计的字节码格式。在开发时,通过工具链将 源代码编译为 字节码,使其可以在 上运行。
对于 之前的版本中, 是 。
ART 的部分主要功能有:
- 预编译(, )与即时编译(, )
- 垃圾回收(GC)
- 调试支持
- …
还包含一套核心运行时库,可提供 框架所使用的 编程语言中的大部分功能。
平台的基础是 内核,在此基础上添加了部分 专用的驱动,例如 依靠 内核来执行底层功能,包括线程和低层内存管理。 内核向 提供了安全组件、内存管理、进程管理、网络协议、驱动模型等功能,并允许设备制造商为已发布的内核提供硬件驱动程序。
到此这篇手机软件后缀名是什么格式(各种手机平台的软件后缀名介绍)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/haskellbc/42693.html