Android Studio每次打开项目都会去校验当前项目使用的gradle版本和gradle的依赖项,如果有不一致,就会进行网络下载,这本是一件极好的事情,但大家都懂的,由于墙的问题,遇到不一致时,我们的Android Studio就成功的卡死了。
之前试过好多办法,删除项目中不必要的文件夹,文件,让项目自己生成gradle项目文件,或者去修改部分配置,由于是遇到一个问题就查询一个问题,导致经常是改完这个,另一个还是没解决,很是烦闷,今天终于搞清楚了AS在打开新项目时到底会去下载什么东西。目前验证的结果发现,AS至少会去校验并下载两类东西。
1、gradle的版本
windows下位于C:\Users\XXXX\.gradle\wrapper\dists,当遇到问题时我们搜索网络都会让我们去下载项目需要的gradle版本然后放置在这个目录下。其实下载gradle很大,我们可以采取另一个方法,就是去修改项目中的apps\MXNaviCneedsMusic2\gradle\wrapper\gradle-wrapper.properties文件中的
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip修改为自己的版本,注意光修改完这个后打开还是会遇到卡死,卡在处理gradle resolve dependencies classpath,那么我们还需要修改另一个东西
2、dependencies
dependencies会有很多,请确保自己依赖的项目都容易下载到,我这里没有依赖网络项目,但是也是遇到了问题,而问题的起因是因为:
dependencies { classpath 'com.android.tools.build:gradle:2.2.1' }由于AS Gradle插件也是jcenter仓库下载的,如果版本不一致,也会去下载,因此这里也需要修改为自己的版本,查看
C:\Program Files\Android\Android Studio\gradle\m2repository\com\android\tools\build\gradle目录下有什么版本,修改即可
当然更简洁的办法是用自己的AS随意创建一个android项目,对照项目配置修改gradle和gradle插件的版本。
本人就是修改以上两个地方之后,就可以秒开别人的项目了