如何獲得Android系統版本
項目移植中,遇到需要區分不同系統版本的問題。於是查找相關方法如下:
android.os.Build類提供了當前系統信息。
可用if (Build.VERSION.SDK_INT < Build.VERSION_CODES.GINGERBREAD)這樣來判斷。
有人用這樣一個函數來獲取版本號:
public static int getAndroidSDKVersion() {
int version;
try {
version = Integer.valueOf(android.os.Build.VERSION.SDK);
} catch (NumberFormatException e) {
Log.e(e.toString());
}
return version;
}
android.os.Build.VERSION_CODES 值有如下,其中第二列的值就是API LEVEL編號:
int 1 (0x00000001) BASE October 2008: The original, first, version of Android.
int 2 (0x00000001) BASE_1_1 February 2009: First Android update, officially called 1.1.
int 3 (0x00000001) CUPCAKE May 2009: Android 1.5.
int 10000 (0x00002710) CUR_DEVELOPMENT Magic version number for a current development build, which has not yet turned into an official release.
int 5 (0x00000001) DONUT September 2009: Android 1.6.
int ECLAIR November 2009: Android 2.0
Applications targeting this or a later release will get these new changes in behavior:
5 (0x00000008) The Service.onStartCommand function will return the new START_STICKY behavior instead of the old compatibility START_STICKY_COMPATIBILITY.
int 6 (0x00000008) ECLAIR_0_1 December 2009: Android 2.0.1
int 7 (0x00000008) ECLAIR_MR1 January 2010: Android 2.1
int 8 (0x00000008) FROYO June 2010: Android 2.2
int GINGERBREAD November 2010: Android 2.3
Applications targeting this or a later release will get these new changes in behavior:
9 (0x00000009) The application's notification icons will be shown on the new dark status bar background, so must be visible in this situation.
int 10 (0x0000000a) GINGERBREAD_MR1 February 2011: Android 2.3.3.
int 11 (0x0000000b) HONEYCOMB February 2011: Android 3.0.
int 12 (0x0000000c) HONEYCOMB_MR1 May 2011: Android 3.1.
int 13 (0x0000000d) HONEYCOMB_MR2 June 2011: Android 3.2.
int 14 (0x0000000e) ICE_CREAM_SANDWICH October 2011: Android 4.0.
int 15 (0x0000000f) ICE_CREAM_SANDWICH_MR1 December 2011: Android 4.0.3.
int 16 (0x00000010) JELLY_BEAN Android 4.1.