Androidstudio中adle⽂件格式解析_未完待续 与Eclipse不同,Android Studio是采⽤Gradle来构建项⽬的。Gradle 是⼀个⾮常先进强⼤的项⽬构建⼯具,它使⽤了⼀种基于Groovy 领域的特定语⾔(DSL)来声明项⽬设置,摒弃了基于 XML(如 Ant 和 Maven)的各种繁琐的配置,接下来我们⼀起探讨Android Studio 中强⼤的项⽬构建⼯具 Gradle。
⼀、简介
Android studio新建的⼯程中⼀般包含两个adle⽂件,⼀个在⼯程⽬录下,⼀个在app⽬录下,如下图所⽰。
⼆、⽂件格式详解
2.1 ⼯程⽬录下的adle⽂件
buildscript {
repositories {
//代码托管仓库,很多开源Android项⽬都将代码托管到jcenter()上,声明此配置后,即可引⽤ //jcenter()上的任何开源项⽬。同时也可以声明其他托管仓库。
jcenter()
//添加maven库地址
maven{
url "/xxx/xxx/xxx"
credentials {
username 'xxx'
password 'xxx'
}
}
}
dependencies {
//Gradle 插件及使⽤版本
classpath 'ls.build:gradle:2.3.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual adle files
}
}
allprojects {
repositories {
//代码托管仓库
jcenter()
}
}
// 运⾏gradle clean时,执⾏此处定义的task。
// 该任务继承⾃Delete,删除根⽬录中的build⽬录。
// 相当于执⾏Delete.delete(rootProject.buildDir)
task clean(type: Delete) {
delete rootProject.buildDir
}
2.2 app⽬录下的adle⽂件
//表明是应⽤程序的插件,若为库模块,则是'com.android.library'
apply plugin: 'com.android.application'
//Android 闭包
android {
//指定项⽬的编译版本
compileSdkVersion 25
//指定项⽬的构建⼯具版本
buildToolsVersion "25.0.3"
defaultConfig {
/
/指定项⽬的包名
applicationId "tprovider"
//指定项⽬最低兼容的 Android 版本
minSdkVersion 15
//指定项⽬的最⾼兼容 Android 版本
targetSdkVersion 25
//指定项⽬的版本号
versionCode 1
//指定项⽬的版本名
versionName "1.0"
testInstrumentationRunner "st.runner.AndroidJUnitRunner"
}
buildTypes {
release {
//指定是否对项⽬的代码进⾏混淆(true:混淆 false:不混淆)
minifyEnabled false
//proguardFiles⽤于指定混淆时使⽤的规则⽂件
proguardFiles getDefaultProguardFile(''), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.st.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.straint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
eclipse android}
编译版本、最⼩版本、⽬标版本
compiledSdkVersion:编译SDK版本是将要编译APP的平台版本。默认情况下它应该设置为SDK中最新的Android可⽤版本。我们依然可以编译APP来⽀持更早的版本,但是设置它为最新版本让我们可以使⽤新功能并优化APP使其在最新版本上拥有更好的⽤户体验。
minSdkVersion:是新建⼯程的时候指定的”MinimumSDK version”。它表⽰APP可以⽀持的Android SDK的最早版本,意为⼩于该版本的Android系统上不保证APP正常运⾏。
targetSdkVersion:表⽰开发者已经测试过的最⾼的Android版本。当新版本的Android可⽤的时候,我们应该在新版本上测试⾃⼰的APP并更新这个值以匹配最新版本的API,从⽽使⽤新版本的功能。
平台版本号API 级别VERSION_CODE(代号)发布时间
Android 9.028Pie(馅饼2018年08⽉
Android 8.127Oreo(奥利奥)2017年12⽉
Android 8.026Oreo(奥利奥)2017年08⽉
Android 7.1.125Nougat(⽜轧糖)2016年10⽉
Android 7.024Nougat(⽜轧糖)2016年08⽉Android 6.023Marshmallow(棉花糖)2015年10⽉Android 5.122Lollipop(棒棒糖)2015年03⽉Android 5.021Lollipop(棒棒糖)2014年11⽉Android 4.4W20KITKAT_WATCH2014年06⽉Android 4.419KitKat(奇巧)2013年10⽉Android 4.318Jelly Bean(果冻⾖)2013年07⽉Android 4.2、4.2.217Jelly Bean(果冻⾖)2012年11⽉Android 4.1、4.1.
116Jelly Bean(果冻⾖)2012年07⽉Android 4.0.3、4.0.415Ice Cream Sandwich(冰激凌三明治)2011年12⽉Android 4.0、4.0.1、4.0.214Ice Cream Sandwich(冰激凌三明治)2011年10⽉Android 3.213Honeycomb(蜂巢)2011年07⽉Android 3.1.x12Honeycomb(蜂巢)2011年05⽉Android 3.0.x11Honeycomb(蜂巢)2011年02⽉Android 2.3.4、2.3.310Gingerbread(姜饼)2011年02⽉ Android 2.3.2、2.3.1、2.39Gingerbread(姜饼)2010年12⽉Android 2.2.x8Froyo(冻酸奶)2010年05⽉Android 2.1.x7Eclair(泡芙)2010年01⽉Android 2.0.16Eclair(泡芙)2009年12⽉Android 2.05Eclair(泡芙)2009年10⽉Android 1.64Donut(甜甜圈)2009年09⽉Android 1.53Cupcake(纸杯蛋糕)2009年04⽉Android 1.12BASE_1_12009年02⽉Android 1.01BASE2008年09⽉
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论