Android的东家Google在中国大陆受到大规模封锁,Gradle的官方服务器,受限于我国匮乏的国际出口带宽,下载速度也不理想。这给作为开发者的我们带来了诸多不便,这一不便又被Android Studio与Gradle包管理的复杂放大了,不能像linux包管理器或者pip那样一行命令搞定。想要在Android Studio开发全过程中尽可能多用上国内镜像站并不容易。本文大致记录一下。
因为我这里腾讯云与阿里云的镜像最快,所以我配置成了这两家,可酌情修改。
Android Studio SDK Update
这部分内容应该首先配置,因为第一次启动Android Studio时会有向导指引你安装SDK,此时如果不加以配置,会从默认的dl.google.com下载,虽然没有被封锁,但是速度终归有点慢。
配置的方式是按cancel按键退出向导,点击左下角齿轮打开设置,然后导航到这个位置:

(我已经添加过了)
点击加号,名称随意,添加以下两个条目:
与
1
| https://mirrors.cloud.tencent.com/AndroidSDK/
|
这会对速度有一定提升。
全局Gradle配置
在linux与Mac上位于~/.gradle/gradle.properties
添加以下内容:
1
| maven.repo.remote=https\://maven.aliyun.com/repository/google,https\://maven.aliyun.com/repository/jcenter,https\://maven.aliyun.com/repository/public
|
Gradle程序下载
在Android Studio自动生成的项目结构下,配置文件应该位于 gradle/wrapper/gradle-wrapper.properties
在我这里,生成的版本如下:(版本号不同很正常)
1 2 3 4 5
| distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists
|
网上的教程大多告诉你把链接换成腾讯镜像的,可是实际操作中会发现还是要连接services.gradle.org导致sync过程卡死,因为这里只提供了bin二进制包,我们还同时需要src源码(虽然我还不清楚为什么)
正确的修改应该如下:(版本号需要依据实际情况修改)
1 2 3 4 5
| distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-8.13-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists
|
all包是我们需要的,它相当于bin加上src
Gradle项目配置
位于项目根目录下的settings.gradle.kts
一般而言,只需要修改以下内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| pluginManagement { repositories { maven { setUrl("https://maven.aliyun.com/repository/central") } maven { setUrl("https://maven.aliyun.com/repository/jcenter") } maven { setUrl("https://maven.aliyun.com/repository/google") } maven { setUrl("https://maven.aliyun.com/repository/gradle-plugin") } maven { setUrl("https://maven.aliyun.com/repository/public") } maven { setUrl("https://jitpack.io") } maven { setUrl("https://maven.aliyun.com/nexus/content/groups/public/") } maven { setUrl("https://maven.aliyun.com/nexus/content/repositories/jcenter") } gradlePluginPortal() google() mavenCentral() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { maven { setUrl("https://maven.aliyun.com/repository/central") } maven { setUrl("https://maven.aliyun.com/repository/jcenter") } maven { setUrl("https://maven.aliyun.com/repository/google") } maven { setUrl("https://maven.aliyun.com/repository/gradle-plugin") } maven { setUrl("https://maven.aliyun.com/repository/public") } maven { setUrl("https://jitpack.io") } google() mavenCentral() } }
|
总结
国内复杂的网络环境确实给开发者带来了很多不必要的麻烦…