---
title: "Android系统架构"
author: "Perrin Yong"
author_profile: https://www.pystone.net/profile/
published_by: "Perrin Yong"
canonical: https://www.pystone.net/notes/android-system-architecture/
type: note
content_role: unspecified
visibility: public
id_stability: rename-stable
source_path: "10-计算机、信息技术与工程/04-应用开发与云端工程/Android开发/Android系统架构.md"
content_hash: e8cab20476cddc7c45a8baa20124b86b078271ed72f0ea96e64a5b6066e2c7f0
knowledge_version: 224c990773de.5fa8af6e39fa
site_commit: 224c990773de166d23a886306577dd90379529ce
notes_commit: 5fa8af6e39fa3891d1b9b4832bfa6c4e0ecaaf0a
---
![assets/image-20250122110347360.png](/media/e578cd6ee9f59c982e55.png)


## Linux Kernal
the Android Runtime (ART) relies on the Linux kernel for underlying functionalities
	threading
	low-level memory management

## Hardware abstraction layer (HAL)
provides standard interfaces that expose device hardware capabilities
consists of multiple library modules

## Android runtime
For devices running Android version 5.0 (API level 21) or higher, **each app** runs in its own process and with **its own instance of the Android Runtime** (ART).

详见 [Android应用程序与运行环境](https://www.pystone.net/notes/android-app-runtime-environment/)
## Native C/C++ libraries
Many core Android system components and services, such as ART and HAL, are built from native code that requires native libraries written in C and C++. The Android platform provides Java framework APIs to expose the functionality of some of these native libraries to apps. For example, you can access OpenGL ES through the Android framework’s Java OpenGL API to add support for drawing and manipulating 2D and 3D graphics in your app.

## Java API framework
The entire feature-set of the Android OS is available to you through APIs written in the Java language.

## System apps


# Android系统架构
https://developer.android.com/guide/platform
