The version history of the Androidmobile operating system began with the public release of its first beta on November 5, 2007. The first commercial version, Android 1.0, was released on September 23, 2008. The operating system is developed by Google on a yearly cycle since at least 2011. New major releases are announced at Google I/O along with its first public beta to supported Google Pixel devices. The stable version is then released later in the year.
The development of Android started in 2003 by Android, Inc., which was purchased by Google in 2005. There were at least two internal releases of the software inside Google and the Open Handset Alliance (OHA) before the beta version was released. The beta was released on November 5, 2007, while the software development kit (SDK) was released on November 12, 2007. Several public beta versions of the SDK were released. These releases were done through software emulation as physical devices did not exist to test the operating system. Both the operating system itself and the SDK were released along with their source code, as free software under the Apache License.
The first public release of Android 1.0 occurred with the release of the T-Mobile G1 (aka HTC Dream) in October 2008. Android 1.0 and 1.1 were not released under specific code names. The code names "Astro Boy" and "Bender" were tagged internally on some of the early pre-1.0 milestone builds and were never used as the actual code names of the 1.0 and 1.1 releases of the OS.
The project manager, Ryan Gibson, conceived using a confectionery-themed naming scheme for public releases, starting with Android 1.5 Cupcake. Google announced in August 2019 they were ending the confectionery theming scheme to use numerical ordering for future versions. The first release under the numerical order format was Android 10, which was released September 2019.
In 2017, Google announced that Google Play would begin to require apps to target a recent Android version. Since then, a new major Android version has been released in the second half of each year, and apps must target it by August 1 of the following year for new apps, or November 1 for app updates.
^12L launched as part of the March 2022 security update to supported Pixel devices. The factory images for March 2022 and subsequent updates display the version as 12.1. The device's about page will still show the Android version as 12.
^The latest non-stable release of Android 14, Public Beta 5.2, was released on August 25, 2023.
The following tables show the release dates and key features of all Android operating system updates to date, listed chronologically by their official application programming interface (API) levels.
Android 1.0 (API 1)
Android 1.0, the first commercial version of the software, was released on September 23, 2008. The first commercially available Android device was the HTC Dream. Android 1.0 incorporated the following features:
September 23, 2008
Android Market, allowing application downloads and updates through the Market application.
On February 9, 2009, the Android 1.1 update was released, initially for the HTC Dream only. Android 1.1 was known as "Petit Four" internally, though this name was not used officially. The update resolved bugs, changed the Android API and added a number of features:
February 9, 2009
Details and reviews available when a user searches for businesses on Maps.
Longer in-call screen timeout by default when using the speakerphone, plus the ability to show/hide the dialpad.
On April 27, 2009, the Android 1.5 update was released, based on Linux kernel 2.6.27. This was the first release to officially use a codename based on a dessert item ("Cupcake"), a theme used for all releases until Android Pie, with Android 10 and later using a number-only system. The update included several new features and UI amendments:
Open Accessory Library support. Open Accessory was introduced in 3.1 (Honeycomb) but the Open Accessory Library grants 2.3.4 added support when connecting to a USB peripheral with compatible software and a compatible application on the device.
Switched the default encryption for SSL from AES256-SHA to RC4-MD5.
On February 22, 2011, the Android 3.0 (Honeycomb) SDK – the first tablet-only Android update – was released, based on Linux kernel 2.6.36. The first device featuring this version, the Motorola Xoom tablet, was released on February 24, 2011. The update's features included:
Disallows applications from having to write access to secondary storage (memory cards on devices with internal primary storage) outside of designated, application-specific directories. Full access to primary internal storage is still allowed through a separate application-level permission.
The SDK for Android 4.0.1 (Ice Cream Sandwich), based on Linux kernel 3.0.1, was publicly released on October 19, 2011. Google's Gabe Cohen stated that Android 4.0 was "theoretically compatible" with any Android 2.3.x device in production at that time. The source code for Android 4.0 became available on November 14, 2011. Ice Cream Sandwich was the last version to officially support Adobe Systems' Flash player. The update introduced numerous new features:
Google announced Android 4.1 (Jelly Bean) at the Google I/O conference on June 27, 2012. Based on Linux kernel 3.0.31, Jelly Bean was an incremental update with the primary aim of improving the functionality and performance of the user interface. The performance improvement involved "Project Butter", which uses touch anticipation, triple buffering, extended vsync timing and a fixed frame rate of 60 fps to create a fluid and "buttery-smooth" UI. Android 4.1 Jelly Bean was released to the Android Open Source Project on July 9, 2012, and the Nexus 7 tablet, the first device to run Jelly Bean, was released on July 13, 2012.
July 9, 2012
Smoother user interface:
Vsync timing across all drawing and animation done by the Android framework, including application rendering, touch events, screen composition and display refresh.
Google was expected to announce Jelly Bean 4.2 at an event in New York City on October 29, 2012, but the event was cancelled due to Hurricane Sandy. Instead of rescheduling the live event, Google announced the new version with a press release, under the slogan "A new flavor of Jelly Bean". Jelly Bean 4.2 was based on Linux kernel 3.4.0, and debuted on Google's Nexus 4 and Nexus 10, which were released on November 13, 2012.
Accessibility improvements: triple-tap to magnify the entire screen, pan and zoom with two fingers. Speech output and Gesture Mode navigation for blind users.
New clock application with a built-in world clock, stop watch and timer.
All devices now use the same interface layout, previously adapted from phones on 4.1 for smaller tablets (with centered software buttons, the system bar at the top of the screen, and a home screen with a dock and centered application menu), regardless of screen size.
Increased number of extended notifications and Actionable Notifications for more applications, allowing users to respond to certain notifications within the notification bar and without launching the application directly.
Google released Jelly Bean 4.3 under the slogan "An even sweeter Jelly Bean" on July 24, 2013, during an event in San Francisco called "Breakfast with Sundar Pichai". Most Nexus devices received the update within a week, although the second-generation Nexus 7 tablet was the first device to officially ship with it. A minor bug fix update was released on August 22, 2013.
Google announced Android 4.4 KitKat on September 3, 2013. Although initially under the "Key Lime Pie" ("KLP") codename, the name was changed because "very few people actually know the taste of a key lime pie." Some technology bloggers also expected the "Key Lime Pie" release to be Android 5. KitKat debuted on Google's Nexus 5 on October 31, 2013, and was optimized to run on a greater range of devices than earlier Android versions, having 512 MB of RAM as a recommended minimum; those improvements were known as "Project Svelte" internally at Google. The required minimum amount of RAM available to Android is 340 MB, and all devices with less than 512 MB of RAM must report themselves as "low RAM" devices.
Storage Access Framework, an API allowing apps to retrieve files in a consistent manner. As part of the framework, a new system file picker allows users to access files from various sources (including those exposed by apps, such as online storage services).
New framework for UI transitions.
Sensor batching, step detector and counter APIs.
Settings application now makes it possible to select default text messaging and the home (launcher) application.
Audio tunneling, audio monitoring and loudness enhancer.
Built-in screen recording feature (primarily for developers, as usage of ADB is required).
Updated the Chromium-based WebView to version 33 (screencasting to DevTools, HTML5 Canvas hardware acceleration performance improvements, vibration API, HTML5 form validation, and an HTML5 datalist).
Android 5.0 "Lollipop" was unveiled under the codename "Android L" on June 25, 2014, during Google I/O. It became available as an official over-the-air (OTA) update on November 12, 2014, for select devices that run distributions of Android serviced by Google, including Nexus and Google Play edition devices. Its source code was made available on November 3, 2014.
Lollipop features a redesigned user interface built around a responsive design language referred to as "material design". Other changes include improvements to the notifications, which can be accessed from the lockscreen and displayed within applications as top-of-the-screen banners. Furthermore, Google made internal changes to the platform, with the Android Runtime (ART) officially replacing Dalvik for improved application performance, and with changes intended to improve and optimize battery usage, known internally as Project Volta.
Searches can be performed within the system settings for quicker access to particular settings.
Lock screen provides shortcuts to application and notification settings.
Guest logins and multiple user accounts are available on more devices, such as phones.
Audio input and output through USB devices.
Third-party applications regain the ability to read and modify data located anywhere on external storage, such as on SD cards. However, those must be adapted to the storage access framework of Android API level 21 or higher.
Pinning of an application's screen for restricted user activity.
Recently used applications are remembered even after restarting the device.
WebViews receive updates independently through Google Play for security reasons, instead of relying on system-wide vendor updates.
Addition of 15 new languages: Basque, Bengali, Burmese, Chinese (Hong Kong), Galician, Icelandic, Kannada, Kyrgyz, Macedonian, Malayalam, Marathi, Nepali, Sinhala, Tamil and Telugu.
Tap and Go allows users to quickly migrate to a new Android device, using NFC and Bluetooth to transfer Google Account details, configuration settings, user data and installed applications.
A flashlight-style application is included, working on supported devices with a camera flash.
User-customizable priorities for application notifications.
Fixes a bug with TRIM support (introduced in Version 4.3), which prevented devices from running on-charger cleanups of file system allocations if the device was turned off at midnight, or if it was charged only when in use.
Changes how alarms wake the CPU, and how alarms compete for system resources.
Android 6.0 "Marshmallow" was unveiled under the codename "Android M" during Google I/O on May 28, 2015, for the Nexus 5 and Nexus 6 phones, Nexus 9 tablet, and Nexus Player set-top box, under the build number MPZ44Q. The third developer preview (MPA44G) was released on August 17, 2015, for the Nexus 5, Nexus 6, Nexus 9 and Nexus Player devices, and was updated to MPA44I that brought fixes related to Android for Work profiles.
Android "Nougat" (codenamed N in-development) is the seventh major release of the Android operating system. It was first released as a developer preview on March 9, 2016, with factory images for supported Nexus devices, as well as with the new "Android Beta Program" which allows supported devices to be upgraded directly to the Android Nougat beta via an over-the-air update. The final release was on August 22, 2016. The final preview build was released on July 18, 2016, with the build number NPD90G.
On October 19, 2016, Google released Android 7.1.1 as a developer preview for the Nexus 5X, Nexus 6P and the Pixel C. A second preview became available on November 22, 2016, before the final version was released to the public on December 5, 2016.
Android Oreo is the eighth major release of the Android operating system. It was first released as a developer preview, codenamed Android O, on March 21, 2017, with factory images for supported Nexus and Pixel devices. The final developer preview was released on July 24, 2017, with the stable version released in August 2017.
Android 8.1 Oreo is the sixteenth minor release of the Android operating system. It was first released as a developer preview on October 25, 2017, with factory images for current Nexus and Pixel devices. A second developer preview was made available on November 27, 2017, for Nexus and Pixel devices, before the stable version was released on December 5, 2017.
Android Pie is the ninth major version of the Android operating system. It was first announced by Google on March 7, 2018, and the first developer preview was released on the same day. The second preview, considered beta quality, was released on May 8, 2018. The final beta of Android Pie (fifth preview, also considered as a "Release Candidate") was released on July 25, 2018. The first official release was released on August 6, 2018.
August 6, 2018
New user interface for the quick settings menu.
The clock has moved to the left of the notification bar.
The "dock" now has a semi-transparent background.
Battery Saver no longer shows an orange overlay on the notification and status bars.
A "screenshot" button has been added to the power options.
A new "Lockdown" mode which disables biometric authentication once activated.
Rounded corners across the UI.
New transitions for switching between apps, or activities within apps.
Richer messaging notifications, where a full conversation can be seen within a notification, full-scale images, and smart replies akin to Google's new app, Reply.
Support for display cutouts.
Redesigned volume slider.
Battery percentage now shown in Always-On Display.
Lock screen security changes include the possible return of an improved NFC Unlock.
Experimental features (which are currently hidden within a menu called Feature Flags) such as a redesigned About Phone page in settings, and automatic Bluetooth enabling while driving.
Android 12L[c] is an interim release for Android 12 that includes design tweaks for larger displays and minor stability changes to the operating system. It was announced on October 2021 alongside Beta releases with a stable version launching on March 7, 2022.
March 7, 2022
Improvements specific for foldable phones, tablets, desktop-sized screens and Chromebooks, and modifications to the user interface to tailor it to larger screens.
ART update with a new garbage collector (GC) utilizing the Linux userfaultfd system call. It reduces memory pressure, compiled code size, jank and prevents the risk of killing apps because of low memory during GC. Other changes also improve app startup, reduce jank and improve performance. Because of the Mainline project, Android 12 ART will also be updated.
Support of Themed icons by third-party apps and manufacturers.
Android 13 home screen
Google announced Android 14 on February 8, 2023, with the first Developer Preview releasing on the same day. Starting with this Android version, the installation of apps designed to target Android versions and SDKs older than Marshmallow (6.0) are blocked to prevent malware.
The main hardware platform for Android is the 64-bitARM architecture (i.e. ARMv8-A; previously the 32-bitARMv7 architecture was supported and first ARMv5), with x86[d] and MIPS[e] architectures also officially supported in later versions of Android, but MIPS support has since been deprecated and support was removed in NDK r17.
Android1.0 through 1.5 required a 2 megapixel camera with autofocus camera. This was relaxed to a fixed-focus camera with Android1.6.
In 2012, Android devices with Intel processors began to appear, including phones and tablets. While gaining support for 64-bit platforms, Android was first made to run on 64-bit x86 and then on ARM64. Since Android5.0 Lollipop, 64-bit variants of all platforms are supported in addition to the 32-bit variants.
Requirements for the minimum amount of RAM for devices running Android 7.1 depend on screen size and density and type of CPU, ranging from 816MB–1.8GB for 64-bit and 512MB–1.3GB for 32-bit meaning in practice 1GB for the most common type of display (while minimum for Android watch is 416MB).[f] The recommendation for Android4.4 is to have at least 512MB of RAM, while for "low RAM" devices 340MB is the required minimum amount that does not include memory dedicated to various hardware components such as the baseband processor. Android 4.4 requires a 32-bitARMv7, MIPS or x86 architecture processor, together with an OpenGL ES 2.0 compatible graphics processing unit (GPU). Android supports OpenGL ES 1.1, 2.0, 3.0, 3.2 and since Android 7.0 Vulkan (and version 1.1 available for some devices). Some applications may explicitly require a certain version of the OpenGL ES, and suitable GPU hardware is required to run such applications. In 2021, Android was ported to RISC-V. In 2021, Qualcomm said it will support more updates.
^The 2.3.6 update had the side-effect of impairing the Wi-Fi hotspot functionality of many Canadian Nexus S phones. Google acknowledged this problem and fixed it in late September.
^For Canadian consumers, 4.0.2 reportedly created a bug on the Galaxy Nexus that crashed the application market when users attempted to view details of any Android application. It also inadvertently reduced the NFC capabilities of the Nexus phone.
^Supported is revision 1 of MIPS32 and revision 6 for 64-bit MIPS64
^Disk-based memory (hard drives), solid state disk devices such as USB drives, DVD-based storage, bit rates, bus speeds, and network speeds, are specified using decimal meanings for k (10001), M (10002), G (10003), etc.
^Mithun Chandrasekhar (February 2, 2011). "Google's Android Event Analysis". AnandTech. Retrieved February 5, 2011. I confirmed this with Google; Honeycomb, at least in the current form, will not be coming to non-tablet devices.
^Tate, Christopher (November 21, 2014). "Commit 4f868ed to platform/frameworks/base". Android Git Repositories. Retrieved December 27, 2017. The current heuristics depend on devices being alive at midnight+ in order to run periodic background fstrim operations...If the device goes a defined time without a background fstrim, we [now] force the fstrim at the next reboot. Once the device hits the midnight+ idle fstrim request time, then we already aggressively attempt to fstrim at the first available moment thereafter...'Available' here means charging + device idle.
^"Android Lollipop". Android Developers. Archived from the original on November 25, 2014. Retrieved November 24, 2014. It's supported on ARM, x86, and MIPS architectures and is fully 64-bit compatible.