如何获取当前运行我的应用程序的手机Api级别?我确定它很简单,但我找不到它,因为所有搜索都会带来大量垃圾。
可能是重复问题:
以编程方式获取设备的Android API级别?
如何获取当前运行我的应用程序的手机Api级别?我确定它很简单,但我找不到它,因为所有搜索都会带来大量垃圾。
可能是重复问题:
以编程方式获取设备的Android 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
)。
android.os.Build.VERSION.SDK_INT
。 - wklInteger.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
注意: 如果<uses-sdk android:minSdkVersion="3" />
,请勿使用android.os.Build.VERSION.SDK_INT
。
Build.VERSION.SDK_INT
是自SDK 4(Donut 1.6)开始引入的,因此在所有运行Android 1.5及更低版本的设备上使用会导致异常。
android.os.Build.VERSION.SDK_INT
是检查版本的最佳选项。 - rudeandroid.os.Build.VERSION.SDK_INT
在这里,您可以找到可能的值:VERSION_CODES
。