对build.gradle文件的简单理解
buildscript {
repositories {
//引用的jar包所在的下载地址 定义仓库
maven{ url 'https://maven.aliyun.com/repository/google' }
maven{ url 'https://maven.aliyun.com/repository/jcenter' }
maven{url 'http://maven.aliyun.com/nexus/content/groups/public'}
}
dependencies {
classpath 'com.android.tools.build:gradle:4.0.1'
//声明gradle插件,插件版本号为4.0.1 自己是什么版本的android studio就必须使用什么版本的gradle
//gradle是一个强大的项目构建工具,不仅可以构建Android,还可以构建java,C++等
//此处引用android的插件
}
}
allprojects {
repositories {
//引用的jar包所在的下载地址 定义仓库
maven{ url 'https://maven.aliyun.com/repository/google' }
maven{ url 'https://maven.aliyun.com/repository/jcenter' }
maven{url 'http://maven.aliyun.com/nexus/content/groups/public'}
}
}
apply plugin: 'com.android.application'
android {
// 位于/Sdk/sources 一般包含多个版本
//编译sdk的版本,也就是API Level,例如API-19、API-20、API-21等等。
compileSdkVersion 28
// build tools的版本,其中包括了打包工具aapt、dx等等。
// 这个工具的目录位于你的sdk目录/build-tools/下
buildToolsVersion "28.0.3"
defaultConfig {
minSdkVersion 27 // 最小sdk版本,如果设备小于这个版本或者大于maxSdkVersion将无法安装这个应用
targetSdkVersion 28 // 目标sdk版本,充分测试过的版本(建议版本)
versionCode 1000000 // 版本号,第一版是1,之后每更新一次加1
versionName '1.0.0' // 版本名,显示给用户看到的版本号
ndk {
abiFilters 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a' // "x86" 显示指定支持的ABIs
}
}
// 默认的一些文件路径的配置
sourceSets {
main {
// 指定清单文件
manifest.srcFile 'AndroidManifest.xml'
// java资源目录
java.srcDirs = ['src', 'src_pd', 'src_pd_gcam',
'src_frameworks/camera2/portability/src',
'src_frameworks/camera2/public/src',
'src_frameworks/camera2/utils/src']
// jni代码目录
jni.srcDirs = ['jni']
// jni库目录
jniLibs.srcDirs = ['jniLibs']
// 指定res资源目录
res.srcDirs = ['res', 'res_p']
// asset资源目录
assets.srcDirs = ['assets']
}
androidTest.setRoot('tests')
// 指定debug模式的路径
debug.setRoot('build-types/debug')
// 指定release模式的路径
release.setRoot('build-types/release')
}
externalNativeBuild {
cmake {
path file('CMakeLists.txt')
}
}
}
// 指定当前项目的所有依赖关系:本地依赖、库依赖、远程依赖
// 本地依赖:可以对本地 Jar 包或目录添加依赖关系
// 库依赖:可以对项目中的库模块添加依赖关系
// 远程依赖:可以对 jcenter 库上的开源项目添加依赖
// 标准的远程依赖格式是 域名:组织名:版本号
dependencies {
// 本地依赖 implementation主项目源代码所依赖的组 testImplementation 项目测试代码所依赖的组
implementation fileTree(include: ['*.jar'], dir: 'libs'),
//非本地依赖 组com.github.bumptech.glide 包glide 版本 3.8.0
'com.github.bumptech.glide:glide:3.8.0',
'com.android.support:support-v4:28.0.0',
'com.android.support:support-v13:28.0.0',
'com.android.support:appcompat-v7:28.0.0',
'com.google.guava:guava:18.0',
'com.adobe.xmp:xmpcore:6.1.10'
}
参考uri:https://www.cnblogs.com/steffen/p/9212765.html