blob: 9fa29f25c29c555dea9ca60b538305762717097a [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,
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080057};
58
Adam Lesinskic744ae82017-05-17 19:28:38 -070059ApiVersion FindAttributeSdkLevel(const ResourceId& id);
Adam Lesinskic744ae82017-05-17 19:28:38 -070060std::pair<android::StringPiece, ApiVersion> GetDevelopmentSdkCodeNameAndVersion();
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080061
Adam Lesinskicacb28f2016-10-19 12:18:14 -070062} // namespace aapt
Adam Lesinski6f6ceb72014-11-14 14:48:12 -080063
Adam Lesinskicacb28f2016-10-19 12:18:14 -070064#endif // AAPT_SDK_CONSTANTS_H