blob: 0592939d2b58392badcf9796fae7eef46da20133 [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
23The code names match the following version numbers, along with
24API levels and NDK releases provided for convenience:
25
26Code name | Version | API level
27---------------|---------|------------
28(no code name) | 1.0 | API level 1
29(no code name) | 1.1 | API level 2
30Cupcake | 1.5 | API level 3, NDK 1
31Donut | 1.6 | API level 4, NDK 2
32Eclair | 2.0 | API level 5
33Eclair | 2.0.1 | API level 6
34Eclair | 2.1 | API level 7, NDK 3
35Froyo | 2.2.x | API level 8, NDK 4
36Gingerbread | 2.3.x | API level 9, NDK 5
37
38Starting with Cupcake, individual builds are identified with a short
39build code, e.g. FRF85B. The first letter is the code name of the
40release family, e.g. F is Froyo. The second letter is a branch code
41that allows Google to identify the exact code branch that the build
42was made from, and R is by convention the primary release branch.
43The next letter and two digits are a date code. The letter counts
44quarters, with A being Q1 2009. Therefore, F is Q2 2010. The two
45digits count days within the quarter, so F85 is June 24 2010.
46Finally, the last letter identifies individual versions related to
47the same date code, sequentially starting with A; A is actually
48implicit and usually omitted for brevity. The date code is not
49guaranteed to be the exact date at which a build was made, and it is
50common that minor variations added to an existing build re-use the
51same date code as that existing build.
52
53Starting with Donut, the exact list of tags and builds is in the
54following table:
55
56Build | Tag | Notes
57-------|--------------------|-----------------------------------
58DRC83 | android-1.6_r1.1 earliest Donut version, ADP1, ADP2
59DRC92 | android-1.6_r1.2
60DRD08 | android-1.6_r1.3
61DRD20 | android-1.6_r1.4
62DMD64 | android-1.6_r1.5 | latest Donut version
63ESD20 | android-2.0_r1 | earliest Eclair version
64ESD56 | android-2.0.1_r1
65ERD79 | android-2.1_r1 | Nexus One
66ERE27 | android-2.1_r2 | Nexus One
67EPE54B | android-2.1_r2.1p | Nexus One
68ESE81 | android-2.1_r2.1s
69EPF21B | android-2.1_r2.1p2 | latest Eclair version
70FRF85B | android-2.2_r1 | earliest Froyo version, Nexus One
71FRF91 | android-2.2_r1.1 | Nexus One
72FRG01B | android-2.2_r1.2
73FRG22D | android-2.2_r1.3
74FRG83 | android-2.2.1_r1 | Nexus One
75FRG83D | android-2.2.1_r2 | Nexus One
76FRG83G | android-2.2.2_r1 | latest Froyo version, Nexus One
77GRH55 | android-2.3_r1 | earliest Gingerbread version, Nexus S
78GRH78 | android-2.3.1_r1 | Nexus S
79GRH78C | android-2.3.2_r1 | latest Gingerbread version, Nexus S
80
81The branches donut, eclair, froyo, gingerbread represent development
82branches that do not exactly match configurations that were tested
83by Google. They might contain a variety of changes in addition to
84the official tagged releases, and those haven't been as thoroughly
85tested.
86