Android Studio导入项目非常慢的解决方法
android studio原生支持使用gradle来构建项目,使用动态语言groovy定义项目构建的过程,避免了build.xml文件繁琐的定义。
然而使用的时候,却有着巨大的缺陷。由于android studio在升级的时候,可能会伴随着gradle版本的升级,gradle就会产生若干的版本。
为了保证程序不会因为gradle版本不同导致问题,又产生了gradle wrapper,它的作用就是让项目绑定一个gradle版本,当我们导入项目时,会自动下载相应的gradle版本。
问题来了
这就导致我们在打开其它项目的时候,如果当前电脑没有该项目配置的gradle版本就会下载相应的gradle版本。但是gradle的二进制包较大,又加上链接的是国外服务器,导致国内基本很难下载下来, 这时候后就会出现下面的情况。
你不知道到底是as死了,还是它确实在后台做些什么……要么就耐着性子等,要么就直接关掉as,而且必须是强制关闭。这一点做的非常不友善。实际上,之所以卡在这,就是因为后台在服务器下载gradle包。而这个gradle包往往有几十兆,在网络环境不太好的情况下,可能要下很久才能完成。显然,我们没有这么多时间在这耗着,需要找个办法来解决了。
解决方式一
当你装android studio和sdk时, 肯定至少会装一个gradle,这时可以通过新建项目的方式,查询到gradle版本。
本地gradle版本路径也要知道, 打开设置界面
还有几个参数要记录,这是和sdk匹配的,导入的项目中编译sdk版本本机也要有。
记住这几个参数,然后把要导入项目的参数改成和当前参数一致,就可以正常导入项目了。
来看看怎么修改:
- xxx-project/.idea/gradle.xml文件:
添加或修改<option name="gradlehome" value="前面的gradlehome参数" />
- xxx-project/gradle/wrapper/gradle-wrapper.properties文件:
distributionurl=https\://services.gradle.org/distributions/gradle-前面的gradleversion-all.zip
- xxx-project/build.gradle文件:
classpath ‘com.android.tools.build:gradle:前面android plugin version‘ (这个是整个project的配置)
- xxx-project/app/build.gradle文件:
修改compile sdk version和build tools version参数。(这个是单个module的配置,project中每个module都需要修改)
修改完了,就可以正常导入了。
如果电脑断网,可以直接导入项目,但是项目不能正常运行,还是需要修改这些参数才能正常编译。
解决方式二
上面最主要的问题就是gradle版本下载不下来, 我们可以单独下载指定的gradle版本。
先可以查看项目依赖的gradle版本,
然后去找相应的版本进行下载,下载地址:https://pan.baidu.com/s/1hsgdmxq
windows默认把下载的文件放到c:\users\xxx\.gradle\wrapper\dists目录下
mac默认在/users/apple/.gradle/wrapper/dists/
每个版本zip包都放到相应版本路径下,如:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读