AOSP Foundations
3 min read

Android Versions Timeline

A technical overview of Android's version history, focusing on platform and architectural milestones relevant to AOSP developers.

Understanding the evolution of the Android platform is essential for AOSP developers. Platform changes across versions dictate API availability, security policies, and system architecture.

The Foundation Era (Android 1.5 - 4.3)

Early Android versions established the core application framework and hardware abstraction layers.

  • Android 1.5 Cupcake (API 3): Introduced the Input Method Framework (IMF) and AppWidget framework.
  • Android 2.2 Froyo (API 8): Introduced the Dalvik JIT (Just-In-Time) compiler, significantly improving runtime performance.
  • Android 4.0 Ice Cream Sandwich (API 14): Unified the phone and tablet UI frameworks (Holo) and introduced hardware-accelerated 2D drawing.
  • Android 4.1 Jelly Bean (API 16): Introduced Project Butter, implementing vsync timing, triple buffering, and touch responsiveness enhancements to achieve 60fps UI rendering.

The Modern Runtime & Security Era (Android 5.0 - 7.0)

This era marked a shift towards ahead-of-time compilation and stricter security boundaries.

  • Android 5.0 Lollipop (API 21):
    • Replaced the Dalvik virtual machine entirely with the Android Runtime (ART), featuring Ahead-of-Time (AOT) compilation.
    • Introduced full 64-bit ABI support.
    • Enforced SELinux in enforcing mode for all domains.
  • Android 6.0 Marshmallow (API 23): Introduced the runtime permission model, changing how the system grants capabilities to apps.
  • Android 7.0 Nougat (API 24): Introduced A/B (Seamless) system updates and the Vulkan graphics API. ART was updated to support Profile-Guided Just-In-Time (JIT) compilation alongside AOT.

The Architectural Era (Android 8.0 - 10.0)

Google fundamentally restructured the OS to separate vendor implementations from the core framework.

  • Android 8.0 Oreo (API 26): Introduced Project Treble, a major re-architecture of the OS framework. It separated the vendor implementation (device-specific, lower-level software written by silicon manufacturers) from the Android OS framework via a new Hardware Interface Definition Language (HIDL).
  • Android 9.0 Pie (API 28): Introduced Neural Networks API 1.1 and tightened background execution limits.
  • Android 10 (API 29): Introduced Project Mainline (APEX modules) to deliver core OS components via Google Play System Updates. Also introduced Scoped Storage and full gesture navigation.

The Privacy & Modularity Era (Android 11 - 15)

Recent versions focus on granular privacy controls, virtualization, and advanced hardware support.

  • Android 11 (API 30): Introduced one-time permissions, scoped storage enforcement, and Wireless ADB.
  • Android 12 (API 31): Major UI overhaul (Material You). Introduced the system_ext partition and enhanced privacy indicators.
  • Android 13 (API 33): Expanded Project Mainline, introduced the Photo Picker API, and per-app language preferences.
  • Android 14 (API 34): Stricter foreground service types, exact alarm scheduling restrictions, and credential manager.
  • Android 15 (API 35): Introduced Private Space, partial screen sharing, and expanded satellite connectivity APIs. Continued expansion of APEX modules.

Key Developer Milestones

As an AOSP developer, the most critical architectural milestones are:

  1. ART (Android 5.0): Changed the fundamental app execution environment from Dalvik.
  2. Treble (Android 8.0): Enforced strict separation of /system and /vendor partitions via defined HALs.
  3. Mainline (Android 10): Modularized system components into APEX packages, allowing out-of-band updates.