Android Studio Gradle 之基础配置与介绍
来源:互联网 发布:eml有软件打开 编辑:程序博客网 时间:2024/05/22 15:52
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具,Android Studio IDE使用的构建项目工具就是Gradle
Gradle是比较先进的构建工具,允许通过插件自定义构建逻辑,使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。
通过Android Studio创建一个项目,默认会有两个build.gradle文件和一个settings.gradle,一个位于app目录下,两个位于项目的根目录下
位于项目的根目录下,它描述了这个项目的整体构建基础
位于app目录下,它描述这个app的构建基础,也可以是一个Module
最基本的Android项目中,它的settings.gradle内容如下:
include ‘:app’
该文件中就仅仅只包含了一句话,在你的项目中如果有多个 Model 存在的时候,就可以选择包含哪些进行编译。
build.gradle内容如下:
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.5.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }}allprojects { repositories { jcenter() }}
repositories 配置的是依赖管理的服务器。默认是 jcenter()
dependencies 上面是指定依赖管理的服务器,这个就是具体依赖什么库。
app目录下的build.gradle内容如下:
apply plugin: 'com.android.application'android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.example.think.testapplication" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }}dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.2.1' compile 'com.android.support:design:23.2.1'}
apply plugin: ‘com.android.application’
表示的是添加插件,默认为 com.android.application 程序,也就是应用程序
dependencies:
这个也就是所谓的依赖了,不光可以进行远程依赖,也可以本地依赖
compile fileTree(dir: ‘libs’, include: [‘*.jar’])
这句话也就是说编译时依赖 libs 文件夹下的所有 jar 文件。
compile ‘com.android.support:appcompat-v7:23.2.1’
依赖一个远程的库
compileSdkVersion 23
buildToolsVersion “23.0.3”
这两个指定的是编译SDK以及编辑工具版本
buildTypes
在这里进行配置的是你的编译配置,可以看见这里有一个 release ,当然也有 debug 部分,两个部分配置其实都是一样的。
在这里主要进行的配置是是否进行代码混淆,所以有一个代码混淆的开关,以及代码混淆的具体文件,文件有两种,哪一种都可以。
可以这里通过定义相关值来达到release 版本与debug 版本的差异性
defaultConfig { applicationId "com.example.think.testapplication" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0"}
applicationId 应用ID,库类型的 Module 无此配置项
minSdkVersion 定义的是应用的最小的SDK版本
targetSdkVersion 定义的是应用的目标SDK版本
versionCode 定义的是应用的版本号
versionName 定义的是应用的版本名称
这些定义项经过编译最后生成一个叫做BuildConfig的最终类,可以在java代码中直接调用,路径在app\build\generated\source\buildConfig\debug\com\example\think\testapplication下
/** * Automatically generated file. DO NOT MODIFY */package com.example.think.testapplication;public final class BuildConfig { public static final boolean DEBUG = Boolean.parseBoolean("true"); public static final String APPLICATION_ID = "com.example.think.testapplication"; public static final String BUILD_TYPE = "debug"; public static final String FLAVOR = ""; public static final int VERSION_CODE = 1; public static final String VERSION_NAME = "1.0";}
- Android Studio Gradle 之基础配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio之Gradle的介绍与配置
- Android Studio之gradle的配置与介绍
- Android Studio之gradle的配置与介绍
- Android Studio --基础介绍之Gradle详解
- Android Studio gradle的配置与介绍
- android studio之gradle基础
- android studio 之 gradle配置
- 拥抱 Android Studio 之三:溯源,Groovy 与 Gradle 基础
- 拥抱 Android Studio 之三:溯源,Groovy 与 Gradle 基础
- Android Studio系列之Gradle基础
- android studio gradle介绍
- 变量的操作函数 unset()
- HTTP Status 500 - Tag file directory /tagfiledoes not start with "/WEB-INF/tags"
- .NET简谈互操作(三:基础知识之DllImport特性)
- 简单工厂模式
- 函数式编程
- Android Studio Gradle 之基础配置与介绍
- 运算符重载2
- 删除List<T>里的某个模型
- Android拖动小球跟随手指移动Demo
- 面向接口编程之一——思想基础
- Hadoop伪分布安装详解+MapReduce运行原理+基于MapReduce的KNN算法实现
- spring mvc 请求处理方式...
- iOS正则表达式 判断手机号 邮箱 电话 数字 身份证 银行卡
- js中打印使用