blob: 8518e81a5ae216b4b69613b6afe90411bbc346b3 [file] [log] [blame] [view]
Skyler Kaufman44436912011-04-07 15:11:52 -07001<!--
2 Copyright 2010 The Android Open Source Project
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15-->
16
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070017# Codenames, Tags, and Build Numbers #
18
19At a high level, Android development happens around families of
20releases, which use code names ordered alphabetically after tasty
21treats.
22
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070023## Platform code names, versions, API levels, and NDK releases ##
24
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070025The code names match the following version numbers, along with
26API levels and NDK releases provided for convenience:
27
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070028Code name | Version | API level
29---------------|--------------|------------
30(no code name) | 1.0 | API level 1
31(no code name) | 1.1 | API level 2
32Cupcake | 1.5 | API level 3, NDK 1
33Donut | 1.6 | API level 4, NDK 2
34Eclair | 2.0 | API level 5
35Eclair | 2.0.1 | API level 6
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -070036Eclair | 2.1 (incl. 2.1-update 1) | API level 7, NDK 3
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070037Froyo | 2.2.x | API level 8, NDK 4
38Gingerbread | 2.3 - 2.3.2 | API level 9, NDK 5
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -070039Gingerbread | 2.3.3 - 2.3.4 | API level 10
40Honeycomb | 3.0 | API level 11
41Honeycomb | 3.1 | API level 12
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070042
43Starting with Cupcake, individual builds are identified with a short
Jean-Baptiste Querue3dc1ac2011-06-23 13:29:03 -070044build code, e.g. FRF85B.
45
46The first letter is the code name of the release family, e.g. F is
47Froyo.
48
49The second letter is a branch code that allows Google to identify
50the exact code branch that the build was made from, and R is by
51convention the primary release branch.
52
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070053The next letter and two digits are a date code. The letter counts
54quarters, with A being Q1 2009. Therefore, F is Q2 2010. The two
55digits count days within the quarter, so F85 is June 24 2010.
Jean-Baptiste Querue3dc1ac2011-06-23 13:29:03 -070056
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070057Finally, the last letter identifies individual versions related to
58the same date code, sequentially starting with A; A is actually
Jean-Baptiste Querue3dc1ac2011-06-23 13:29:03 -070059implicit and usually omitted for brevity.
60
61The date code is not guaranteed to be the exact date at which a build
62was made, and it is common that minor variations added to an existing
63build re-use the same date code as that existing build.
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070064
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070065## Source code tags and builds ##
66
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070067Starting with Donut, the exact list of tags and builds is in the
68following table:
69
70Build | Tag | Notes
71-------|--------------------|-----------------------------------
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070072DRC83 | android-1.6_r1.1 | earliest Donut version, ADP1, ADP2
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070073DRC92 | android-1.6_r1.2
74DRD08 | android-1.6_r1.3
75DRD20 | android-1.6_r1.4
76DMD64 | android-1.6_r1.5 | latest Donut version
77ESD20 | android-2.0_r1 | earliest Eclair version
78ESD56 | android-2.0.1_r1
79ERD79 | android-2.1_r1 | Nexus One
80ERE27 | android-2.1_r2 | Nexus One
81EPE54B | android-2.1_r2.1p | Nexus One
82ESE81 | android-2.1_r2.1s
83EPF21B | android-2.1_r2.1p2 | latest Eclair version
84FRF85B | android-2.2_r1 | earliest Froyo version, Nexus One
85FRF91 | android-2.2_r1.1 | Nexus One
86FRG01B | android-2.2_r1.2
87FRG22D | android-2.2_r1.3
88FRG83 | android-2.2.1_r1 | Nexus One
89FRG83D | android-2.2.1_r2 | Nexus One
90FRG83G | android-2.2.2_r1 | latest Froyo version, Nexus One
91GRH55 | android-2.3_r1 | earliest Gingerbread version, Nexus S
92GRH78 | android-2.3.1_r1 | Nexus S
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070093GRH78C | android-2.3.2_r1 | Nexus S
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -070094GRI40 | android-2.3.3_r1 | Nexus One, Nexus S
Jean-Baptiste Queru1a6c0f02011-05-11 08:51:17 -070095GRI54 | android-2.3.3_r1.1 | Nexus S
96GRJ06D | android-2.3.4_r0.9 | Nexus S 4G
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -070097GRJ22 | android-2.3.4_r1 | latest Gingerbread version, Nexus One, Nexus S, Nexus S 4G
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070098
99The branches donut, eclair, froyo, gingerbread represent development
100branches that do not exactly match configurations that were tested
101by Google. They might contain a variety of changes in addition to
102the official tagged releases, and those haven't been as thoroughly
103tested.
104
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -0700105## Honeycomb GPL modules ##
106
107For Honeycomb, the entire platform source code isn't available.
108However, the parts of Honeycomb licensed under the GPL and LGPL
109are available under the following tags:
110
111Build | Tag | Notes
112-------|--------------------|-----------------------------------
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -0700113HRI39 | android-3.0_r1 | earliest Honeycomb version
114HRI66 | android-3.0_r1.1
115HWI69 | android-3.0_r1.2
116HRI93 | android-3.0_r1.3
117HMJ37 | android-3.1_r1 | latest Honeycomb version