blob: 0f27ac50b3bfa3ea24835893804ec9f3f19c509d [file] [log] [blame]
Adam Lesinski6f6ceb72014-11-14 14:48:12 -08001/*
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
Adam Lesinskifb6312f2016-06-28 14:40:32 -070020#include <utility>
21
Adam Lesinskid5083f62017-01-16 15:07:21 -080022#include "androidfw/StringPiece.h"
23
Adam Lesinskice5e56e2016-10-21 17:56:45 -070024#include "Resource.h"
25
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080026namespace aapt {
27
Adam Lesinskic744ae82017-05-17 19:28:38 -070028using ApiVersion = int;
29
30enum : ApiVersion {
Adam Lesinskicacb28f2016-10-19 12:18:14 -070031 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,
Zak Cohen1a6acdb2016-12-12 15:21:21 -080052 SDK_NOUGAT = 24,
53 SDK_NOUGAT_MR1 = 25,
Adam Lesinskic744ae82017-05-17 19:28:38 -070054 SDK_O = 26,
Michael Wrighteec01ac2017-08-23 13:49:14 -070055 SDK_O_MR1 = 27,
Wale Ogunwale3da5f3b2018-04-11 15:12:31 -070056 SDK_P = 28,
Ian Pedowitz1912a572019-05-12 19:44:42 +000057 SDK_Q = 29,
Svet Ganoved460aa2020-04-15 15:10:14 -070058 SDK_R = 30,
Jeff Sharkey7c5f4332021-05-27 09:26:59 -060059 SDK_S = 31,
Michael Wright6aa3b2c2021-10-28 17:05:25 +010060 SDK_S_V2 = 32,
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080061};
62
Adam Lesinskic744ae82017-05-17 19:28:38 -070063ApiVersion FindAttributeSdkLevel(const ResourceId& id);
Ryan Mitchell48002f62019-04-11 14:29:25 -070064Maybe<ApiVersion> GetDevelopmentSdkCodeNameVersion(const android::StringPiece& code_name);
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080065
Adam Lesinskicacb28f2016-10-19 12:18:14 -070066} // namespace aapt
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080067
Adam Lesinskicacb28f2016-10-19 12:18:14 -070068#endif // AAPT_SDK_CONSTANTS_H