Android在开发过程中如何选择compileSdkVersion,minSdkVersion和targetSdkVersion

android {
    compileSdkVersion 30
    buildToolsVersion "30.0.0"
    defaultConfig {
        applicationId "com.billshen.offerlearn"
        minSdkVersion 15
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile(proguard-android-optimize.txt), proguard-rules.pro
        }
    }
}

compileSdkVersion

compileSdkVersion表示Gradle使用哪个版本的API来编译,避免使用过期API。

minSdkVersion

minSdkVersion表示APP可以运行的最低Level,低于这个版本代码就不做兼容了。谷歌应用市场会根据这个最低版本号和用户的Android的版本号对比来告知用户是否可用安装这个APP。

targetSdkVersion

targetSdkVersion表示告诉Android系统APP做的最高系统特性兼容。

总结

三者之间关系minSdkVersion <= targetSdkVersion <= compileSdkVersion。为了尽可能使用新的API,compileSdkVersion应该尽可能高。为了使APP更加契合新版本Android的外观特性,targetSdkVersion应该尽可能高。在实践中一般minSdkVersion <= targetSdkVersion == compileSdkVersion

 

Android在开发过程中如何选择compileSdkVersion,minSdkVersion和targetSdkVersion

上一篇:2020,最新Model的设计-APP重构之路


下一篇:使用.Net Core构建WPF App(三、VisualState视觉状态)