可能的重复: 以编程方式获取设备的Android API级别?
如何获得当前运行我的应用程序的手机的Api级别?我相信它很简单,但我找不到它,因为我所有的搜索都会带来大量的垃圾。
可能的重复: 以编程方式获取设备的Android API级别?
如何获得当前运行我的应用程序的手机的Api级别?我相信它很简单,但我找不到它,因为我所有的搜索都会带来大量的垃圾。
检查android.os.Build。VERSION,这是一个静态类,它保存了关于系统正在运行的Android操作系统的各种信息。
如果你关心所有可能的版本(回到最初的Android版本),就像minSdkVersion被设置为任何小于4的东西,那么你将不得不使用Android .os. build . version。SDK,它是一个字符串,可以转换为版本的整数。
如果你使用的是至少API版本4 (Android 1.6 Donut),目前建议的获取API级别的方法是检查Android .os. build . version的值。SDK_INT,它是一个整数。
在任何一种情况下,你得到的整数映射到一个枚举值,这些都是在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 if <uses-sdk android:minSdkVersion="3" />。
你会在所有Android 1.5及以下的设备上得到例外,因为Build.VERSION。SDK_INT是从SDK 4 (Donut 1.6)开始的。