但使书种多,会有岁稔时。这篇文章主要讲述基于androidstudio3.0的build文件配置问题相关的知识,希望能为你提供帮助。
最近,在研究APP自动化相关的东西,在搭建环境的时候,遇到的坑以及最后解决的方法,不过目前很多东西了解得还不是很细,暂时先简单的记录一下
一、build配置文件
主要分为两种:
1、工程下的build配置文件;
2、模块目录的build配置文件;如下图:
文章图片
1)工程下的build文件配置,主要包括以下内容:
1、repositories闭包
该闭包中声明了jcenter()的配置,其中jcenter是一个代码托管仓库,上面托管了很多android开源项目,在这里配置了jcenter后我们可以在项目中方便引用jcenter上的开源项目。
2、dependencies闭包
该闭包使用classpath声明了一个Gradle插件,由于Gradle并不只是用来构建Android项目,因此此处引入相关插件来构建Android项目,其中\'3.0.1\'为该插件的版本号,可以根据最新的版本号来调整。 具体配置内容如下:
// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript {repositories { //使用maven仓库。android有两个标准的library文件服务器,一个jcenter一个maven。两者毫无关系。 //jcenter有的maven可能没有,反之亦然。 //如果要使用jcenter的话就把mavenCentral()替换成jcenter() google() jcenter() // mavenCentral() } dependencies { classpath \'com.android.tools.build:gradle:3.0.1\'// NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } }// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript { repositories { jcenter() //mavenCentral() } dependencies { classpath \'com.android.tools.build:gradle:3.0.1\'// NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } }allprojects { repositories { google() jcenter() //mavenCentral() //maven { url "http://18.8.10.110:8081/nexus/content/repositories/releases/" } } }task clean(type: Delete) { delete rootProject.buildDir }
2)模块目录下的build文件配置,主要包括以下内容: 1、 defaultConfig闭包
对项目的更多细节进行配置,其中applicationId指定了项目的包名,我们可以通过修改这个值来修改项目的包名。 2、 buildTypes闭包
这个闭包主要指定生成安装文件的主要配置,一般包含两个子闭包,一个是debug闭包,用于指定生成测试版安装文件的配置,可以忽略不写;另一个是release闭包,用于指定生成正式版安装文件的配置。 3、dependencies闭包
该闭包定义了项目的依赖关系,一般项目都有三种依赖方式:本地依赖、库依赖和远程依赖。本地依赖可以对本地的jar包或目录添加依赖关系,库依赖可以对项目中的库模块添加依赖关系,远程依赖可以对jcener库上的开源项目添加依赖关系。 具体配置内容如下:
//声明是Android程序 apply plugin: \'com.android.application\'android { //编译sdk的版本,也就是API Level,例如API-23、API-24、API-25等等 compileSdkVersion 26 //build tools的版本,其中包括了打包工具aapt、dx等等。 //这个工具的目录位于你的sdk目录/build-tools/下 buildToolsVersion \'26.0.2\' defaultConfig { //应用包名 applicationId "com.cxq.myapplication" //最小sdk版本,如果设备小于这个版本或者大于maxSdkVersion(一般不用)将无法安装这个应用 minSdkVersion 26 //目标sdk版本,如果设备等于这个版本那么android平台就不进行兼容性检查,运行效率会高一点 targetSdkVersion 26 //版本更新了几次,第一版应用是1,以后每更新一次加1 versionCode 1 //版本信息,这个会显示给用户,就是用户看到的版本号 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release {//release版本的配置 minifyEnabled false//是否进行混淆 //release的Proguard默认为Module下的proguard-rules.pro文件. proguardFiles getDefaultProguardFile(\'proguard-android.txt\'), \'proguard-rules.pro\' matchingFallbacks = [\'release\', \'debug\'] } }}//一些依赖的框架 dependencies { implementation fileTree(include: [\'*.jar\'], dir: \'libs\') implementation \'com.android.support:appcompat-v7:26.1.0\' testImplementation \'junit:junit:4.12\' androidTestImplementation \'com.android.support.test:runner:1.0.1\' androidTestImplementation \'com.android.support.test.espresso:espresso-core:3.0.1\' androidTestImplementation \'com.android.support.test:rules:1.0.1\' implementation \'com.android.support.test.uiautomator:uiautomator-v18:2.1.3\' //implementation files(\'libs/uiautomator.jar\') //implementation \'com.gionee.autotests.common:common-lib:1.0.7\' //implementation \'com.gionee.android.autotests.common:android-common:+\' }
【基于androidstudio3.0的build文件配置问题】还有一些其他的设置问题,后续再做更新;
推荐阅读
- C#(进程线程应用程序域(AppDomain)与上下文分析)
- cocos3.x实现android沉浸式模式(全屏,隐藏导航栏即虚拟键)
- Android资源文件手记
- mac本地如何搭建IPv6环境测试你的APP
- 自建APP,选择哪家公司比较靠谱?
- APP产品的分析定位
- android studio中如何替换gradle以防下载卡住
- Android 卡顿优化 3 布局优化
- Android 卡顿优化 2 渲染优化