Gradle中SDK版本及versoin版本的含义

1、SDK版本含义

使用Android Studio时,每个应用有对应的build.gradle文件,类似于:

..............
android {
    //SDK编译版本
    compileSdkVersion 25
    buildToolsVersion "25.0.0"

    defaultConfig {
        applicationId "stark.a.is.zhang.quizgeo"
        //SDK最低版本
        minSdkVersion 15
        //SDK目标版本
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

    }
    ................
}

在编译器中,经常会指定一些SDK版本。
SDK最低版本表示:
以最低版本设置值为标准,操作系统会拒绝将应用安装在系统版本低于标准的设备上;

SDK目标版本:
目标版本的设定值主要用于表明,应用是设计给哪个API级别运行的。
大多数情况下,目标版本即最新发布的Android版本。

例如:假设设定应用的SDK目标版本为23,
那么即使应用运行在高于目标版本的设备上,
其运行行为还是和SDK为23时一致。

SDK编译版本:
应用的SDK最低版本和目标版本会通知给操作系统,当SDK编译版本是应用和编译器之间的私有信息。
Android的特色功能是通过SDK中的类和方法展现的。在编译代码时,SDK编译版本指定具体要使用的系统版本。
Android Studio等编译器,在寻找类包导入语句中的类和方法时,SDK编译版本确定具体的基准系统版本。

利用代码获取系统当前SDK版本的示例如下:

...........
Build.VERSION.SDK_INT
...........

2、version版本的含义

新建应用时,可以在其AndroidManifest.xml中定义versionCode和versionName,如下所示:


<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.xxx.xxx"
    android:versionCode="1"
    android:versionName="1.1">
    ......

其中:
versionCode是给设备程序识别版本(升级)用的,必须是一个integer值,代表app更新过多少次。
versionName是给用户看的,可以写1.1 , 1.2等等版本。

在AndroidStudio中,因为有对应的build.gradle文件,
因此version信息一般写入该文件中,类似于:

...........
    defaultConfig {
        applicationId "stark.a.is.zhang.transfer"
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
.........

你可能感兴趣的:(Android开发)