• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2015 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 
17 #ifndef AAPT_SDK_CONSTANTS_H
18 #define AAPT_SDK_CONSTANTS_H
19 
20 #include <utility>
21 
22 #include "androidfw/StringPiece.h"
23 
24 #include "Resource.h"
25 
26 namespace aapt {
27 
28 using ApiVersion = int;
29 
30 enum : ApiVersion {
31   SDK_CUPCAKE = 3,
32   SDK_DONUT = 4,
33   SDK_ECLAIR = 5,
34   SDK_ECLAIR_0_1 = 6,
35   SDK_ECLAIR_MR1 = 7,
36   SDK_FROYO = 8,
37   SDK_GINGERBREAD = 9,
38   SDK_GINGERBREAD_MR1 = 10,
39   SDK_HONEYCOMB = 11,
40   SDK_HONEYCOMB_MR1 = 12,
41   SDK_HONEYCOMB_MR2 = 13,
42   SDK_ICE_CREAM_SANDWICH = 14,
43   SDK_ICE_CREAM_SANDWICH_MR1 = 15,
44   SDK_JELLY_BEAN = 16,
45   SDK_JELLY_BEAN_MR1 = 17,
46   SDK_JELLY_BEAN_MR2 = 18,
47   SDK_KITKAT = 19,
48   SDK_KITKAT_WATCH = 20,
49   SDK_LOLLIPOP = 21,
50   SDK_LOLLIPOP_MR1 = 22,
51   SDK_MARSHMALLOW = 23,
52   SDK_NOUGAT = 24,
53   SDK_NOUGAT_MR1 = 25,
54   SDK_O = 26,
55   SDK_O_MR1 = 27,
56 };
57 
58 ApiVersion FindAttributeSdkLevel(const ResourceId& id);
59 ApiVersion FindAttributeSdkLevel(const ResourceName& name);
60 std::pair<android::StringPiece, ApiVersion> GetDevelopmentSdkCodeNameAndVersion();
61 
62 }  // namespace aapt
63 
64 #endif  // AAPT_SDK_CONSTANTS_H
65