AndroidStudio之Gradle构建项目

1. gradle版本

AndroidStudio之Gradle构建项目_第1张图片

2. gradle插件版本(可以把gradle插件版本理解为当前as的版本)

AndroidStudio之Gradle构建项目_第2张图片

3. android gradle插件依赖于gradle,二者的版本要一一对应。若AS升级到了3.01,那么gradle插件版本就是3.01,而此版本gradle插件对应的gradle版本是4.4。

AndroidStudio之Gradle构建项目_第3张图片

4. gradle的配置问题:

1)当我们在setting下gradle下设置gradle选择“use defalut gradle wrapper(recommended)”时,as就会根据{project.dir}\gradle\wrapper\gradle-wrapper.properties文件中的配置去gradle。

AndroidStudio之Gradle构建项目_第4张图片

我们用as构建android项目时,配置gradle时我们必须在{project.dir}\gradle\wrapper\gradle-wrapper.properties文件中配置gradle包,  配置的gradle必须在缓存目录( “用户主目录/.gradle/wrapper/dists/gradle-*.*.*”)或者在as安装目录下的gradle目录下存在对应的版本。

这个配置的gradle如果在目录“用户主目录/.gradle/wrapper/dists/..”存在的话,as就不会去https\://services.gradle.org/distributions/gradle-2.2.1-all.zip去下载了,as就会利用该目录下的缓存,如果该目录下不存在gradle的话as就会去站点根据gradle的版本去下载到“用户主目录/.gradle/wrapper/dists/gradle-2.2.1-all”目录下.

2)当我们选择的是“use local gradle distribution”的话表示用的是本地的gradle,本地的gradle是在as的主目录下的gradle目录下,比如D:\xxx\android-studio\gradle\gradle-2.10,而不会去缓存目录 “用户主目录/.gradle/wrapper/dists/gradle-*.*.*”中去找。

tips:

1)当前项目根目录下的.gradle文件夹下有个以当前gradle的版本号命名的文件夹,该值要和根目录下的gradle/wrapper/gradle-wrapper.properties内的值一致,也要和File->Project Structure->Project:Gradle Version的版本一致

2)gradle project sync failed 错误:表示AS自动同步gradle失败。这时我们可以手动下载并添加gradle文件。

打开AS,切换到project目录结构依次进入目录app->gradle->gradle-wrapper.prperties,在此我们可以看见最后一行是一个链接:distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip,链接的最后是我们需要的gradle的版本。

进入http://services.gradle.org/distributions/找到并下载我们需要的gradle版本。下载好之后无需解压,在C:\Users\用户名\.gradle\wrapper\dists中进入当前gradle版本文件夹,这里面会有一个名称很长的文件夹,将压缩文件复制到这个文件夹中,重启AS。

3) “All packages are not available for download!  The following packages are not available:- Package id build-tools;25.2.5 ”

若遇到上述错误,可在本地sdk的目录下找到build-tools文件夹,里边有buildToolsVersion的值,把buildTollVersion ""改为你现在用的版本(所有的项目,包括模版里面的build.gradle文件)

AndroidStudio之Gradle构建项目_第5张图片

4)可借鉴的文章:

AndroidStudio 性能优化指南(Windows 篇):涉及到了AS卡顿的解决方法,JCenter下载优化等

5.推荐使用阿里云镜像

//项目的build.gradle文件
allprojects {
    repositories {
        jcenter()
        mavenCentral()
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}//使用阿里云镜像
        google()
    }
}

6.参考:

Android Gradle 插件版本说明

你可能感兴趣的:(AndroidStudio)