儘管Android向下兼容不好,但是一個程序還是可以在多個平臺上跑的。向下兼容不好,接口改變,新的平臺上不能用舊的API,舊的平臺更不可能用新的API,不等於一個平臺需要一個APK。可以在高版本的SDK上開發,並在程序中作版本判斷,低版本運行環境使用舊的API。進行android版本判斷需使用到類:
android.os.Build
android.os.Build.VERSION
官方文檔解釋爲--The user-visible SDK version of the framework; its possible values are defined in Build.VERSION_CODES.該常量值表述了用戶可見的系統框架的SDK版本,它的可能取值被定義在Build.VERSION_CODES中。
android.os.Build.VERSION_CODES
// Build.VERSION.SDK_INT可與switch搭配用
switch (Build.VERSION.SDK_INT) {
case Build.VERSION_CODES.BASE: // 1.0
break;
case Build.VERSION_CODES.BASE_1_1: // 1.1
break;
case Build.VERSION_CODES.CUPCAKE: // 1.5
break;
case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version
break;
case Build.VERSION_CODES.DONUT: // 1.6
break;
case Build.VERSION_CODES.ECLAIR: // 2.0
break;
case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1
break;
case Build.VERSION_CODES.ECLAIR_MR1: // 2.1
break;
}