Возможный дубликат:
Программно получить уровень API Android на устройстве?
Как мне получить уровень Api в телефоне, в котором работает мое приложение? Я уверен, что он прост, но я не могу найти его, поскольку все мои поиски поднимают тонны мусора.
Возможный дубликат:
Программно получить уровень API Android на устройстве?
Как мне получить уровень Api в телефоне, в котором работает мое приложение? Я уверен, что он прост, но я не могу найти его, поскольку все мои поиски поднимают тонны мусора.
Отметьте android.os.Build.VERSION
, который является статическим классом, который содержит различную информацию о ОС Android, на которой работает система.
Если вы заботитесь обо всех возможных версиях (вернуться к исходной версии Android), так как в minSdkVersion
установлено значение меньше 4, вам придется использовать android.os.Build.VERSION.SDK
, это String
, которое можно преобразовать в целое число выпуска.
Если вы используете хотя бы API версии 4 (Android 1.6 Donut), текущий рекомендуемый способ получения уровня API заключается в проверке значения android.os.Build.VERSION.SDK_INT
, которое является целым числом.
В любом случае целое число, которое вы получаете, соответствует значению enum из всех значений, определенных в android.os.Build.VERSION_CODES
:
SDK_INT value Build.VERSION_CODES Human Version Name
1 BASE Android 1.0 (no codename)
2 BASE_1_1 Android 1.1 Petit Four
3 CUPCAKE Android 1.5 Cupcake
4 DONUT Android 1.6 Donut
5 ECLAIR Android 2.0 Eclair
6 ECLAIR_0_1 Android 2.0.1 Eclair
7 ECLAIR_MR1 Android 2.1 Eclair
8 FROYO Android 2.2 Froyo
9 GINGERBREAD Android 2.3 Gingerbread
10 GINGERBREAD_MR1 Android 2.3.3 Gingerbread
11 HONEYCOMB Android 3.0 Honeycomb
12 HONEYCOMB_MR1 Android 3.1 Honeycomb
13 HONEYCOMB_MR2 Android 3.2 Honeycomb
14 ICE_CREAM_SANDWICH Android 4.0 Ice Cream Sandwich
15 ICE_CREAM_SANDWICH_MR1 Android 4.0.3 Ice Cream Sandwich
16 JELLY_BEAN Android 4.1 Jellybean
17 JELLY_BEAN_MR1 Android 4.2 Jellybean
18 JELLY_BEAN_MR2 Android 4.3 Jellybean
19 KITKAT Android 4.4 KitKat
20 KITKAT_WATCH Android 4.4 KitKat Watch
21 LOLLIPOP Android 5.0 Lollipop
22 LOLLIPOP_MR1 Android 5.1 Lollipop
23 M Android 6.0 Marshmallow
24 N Android 7.0 Nougat
25 N_MR1 Android 7.1.1 Nougat
26 O Android 8.0 Oreo
27 O_MR1 Android 8 Oreo MR1
28 P Android 9 Pie
29 Q Android 10
10000 CUR_DEVELOPMENT Current Development Version
Обратите внимание, что некоторое время между Android N и O, Android SDK начал создавать псевдонимы CUR_DEVELOPMENT
, и предварительный просмотр следующей основной версии Android для разработчика имел такое же значение SDK_INT
(10000
).
Integer.valueOf(android.os.Build.VERSION.SDK);
Значения:
Platform Version API Level
Android 9.0 28
Android 8.1 27
Android 8.0 26
Android 7.1 25
Android 7.0 24
Android 6.0 23
Android 5.1 22
Android 5.0 21
Android 4.4W 20
Android 4.4 19
Android 4.3 18
Android 4.2 17
Android 4.1 16
Android 4.0.3 15
Android 4.0 14
Android 3.2 13
Android 3.1 12
Android 3.0 11
Android 2.3.3 10
Android 2.3 9
Android 2.2 8
Android 2.1 7
Android 2.0.1 6
Android 2.0 5
Android 1.6 4
Android 1.5 3
Android 1.1 2
Android 1.0 1
ВНИМАНИЕ: не используйте android.os.Build.VERSION.SDK_INT
, если <uses-sdk android:minSdkVersion="3" />
.
Вы получите исключение на всех устройствах с Android 1.5 и ниже, потому что Build.VERSION.SDK_INT
начиная с SDK 4 (Donut 1.6).
android.os.Build.VERSION.SDK_INT
Здесь вы можете найти возможные значения: VERSION_CODES
.
попробуйте это: Float.valueOf(android.os.Build.VERSION.RELEASE) <= 2.1