Mobile Development 6 min read

Overview of Android System Architecture

This article provides a comprehensive overview of Android’s layered architecture—including the application layer, framework layer, system libraries and runtime, and the Linux kernel—explaining each layer’s components, functions, and relevance for developers and testers.

Architecture Digest
Architecture Digest
Architecture Digest
Overview of Android System Architecture

This article aims to give developers and testers a holistic understanding of the Android system framework, helping them grasp the overall structure for more effective work.

Android uses a four‑layer architecture: the Application layer, the Application Framework layer, the System Libraries and Android Runtime layer, and the Linux Kernel layer.

The Application layer contains core apps such as the home screen, contacts, phone, browser, and calendar.

The Application Framework layer supports app execution through components like Activity Manager, Window Manager, Content Providers, View System, Notification Manager, Package Manager, Telephony Manager, Resource Manager, Location Manager, and XMPP Services. XMPP (Extensible Messaging and Presence Protocol) is an XML‑based open real‑time communication protocol that operates via servers.

The System Libraries consist of nine subsystems: Surface Manager, Media Manager, SQLite (a small relational DB), OpenGL ES (graphics), FreeType (fonts), WebKit (browser engine), SGL 2D graphics engine, SSL (secure communication), and libc (C standard library).

The Android Runtime includes core libraries and the Dalvik Virtual Machine, which manages the Java‑style lifecycle, memory, threads, security, exceptions, and garbage collection.

The Linux Kernel provides drivers such as Display, Camera, Bluetooth, Flash Memory, Binder IPC, USB, Audio, Power Management, Wi‑Fi, and Keypad, forming the foundation for Android’s core services.

In summary, the application layer runs Java programs on the VM, the framework layer offers APIs for app development, the system libraries supply C/C++ support, and the kernel delivers essential system services. Understanding these layers helps developers focus on the appropriate entry point for Android app, system, or driver development.

Source: http://www.cnblogs.com/zhang-blue6128/p/8833593.html
Mobile DevelopmentSystem ArchitectureAndroidframeworklayers
Architecture Digest
Written by

Architecture Digest

Focusing on Java backend development, covering application architecture from top-tier internet companies (high availability, high performance, high stability), big data, machine learning, Java architecture, and other popular fields.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.