问题

Android Studio目前已经更新到2.0 Preview 6了,作为Google大力推崇的开发工具,相对于Eclipse ADT有着不可比拟的优势。然而在实际使用时,依然有不少不爽的地方。Android Studio原生支持使用Gradle来构建项目本是个不错的想法,使用动态语言Groovy定义项目构建过程,避免了build.xml文件的繁琐定义。但是Gradle的二进制包体积较大,而且用户可能按照了不同的Gradle版本,构建时可能会出现各种问题。因此又提出了Gradle Wrapper这么个东西,用于解决前面出现的问题。Gradle Wrapper会绑定到一个指定的Gradle版本。当用户导入项目工程时,会自动到远程服务器上下载Gradle包。这样解决了客户端版本不一致的问题,但是也带来了一个新的问题:国内连接到远程服务器下载Gradle包的速度非常慢!所以,每当从Github下载下来一个新项目导入到Android Studio时,都会卡在这个界面:

你不知道到底是AS死了,还是它确实在后台做些什么……要么就耐着性子等,要么就直接关掉AS,而且必须是强制关闭。这一点做的非常不友善。实际上,之所以卡在这,就是因为后台在服务器下载Gradle包。而这个Gradle包往往有几十兆,在网络环境不太好的情况下,可能要下很久才能完成。显然,我们没有这么多时间在这耗着,需要找个办法来解决了。

解决方法

在网络上搜罗了一番,通常的做法是修改Gradle Wrapper配置文件中的Gradle版本,但是都不太完整。最后在这里看到了完整点的解决方法。精简下主要如下几个步骤:

  1. 先获取本机相关参数,包含如下几个(括号中是我本人机器的参数):

    • Android Plugin Version:(1.5.0)

    • Gradle Version:(2.8)

    • Compile SDK Version:(23)

    • Build Tools Version:(23.0.2)

    • GradleHome:(/Applications/Android Studio.app/Contents/gradle/gradle-2.8)

获取方法很简单,在Android Studio里面新建一个工程,单击工程名右键选择“Open Module Settings”弹出对话框中可以看到:

2. 参数准备好了,即可开始修改目标项目的参数。需要修改的参数位于哪些文件呢?

  • 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/build.gradle文件:修改Compile SDK Version和Build Tools Version参数。(这个是单个module的配置,project中每个module都需要修改)

3. 参数修改完成,开始正式导入项目。一般情况下,这时候可以很顺利的就导入到Android Studio中来了。如果仍然卡在导入界面,那么只能乖乖的等了……

参考

  • http://ju.outofmemory.cn/entry/229755
  • https://docs.gradle.org/current/userguide/gradle_wrapper.html

转载于:https://www.cnblogs.com/csuftzzk/p/android_studio_import_too_slow.html

Android Studio导入项目非常慢的解决办法相关推荐

  1. Android Studio 导入项目时出现Failed to apply plugin

    Android Studio导入项目时出现问题 Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Faile ...

  2. Android Studio导入项目app module一直不显示

    Android Studio导入项目app module一直不显示 问题描述及尝试解决 Android Studio版本:3.5.2 导入或打开已有Android项目时Gradle插件版本和Gradl ...

  3. android studio日志不打印,Mac 下 Android Studio 不打印日志的解决办法

    Mac 下 Android Studio 不打印日志的解决办法 Mac 下 Android Studio 不打印日志的解决办法 前言: 在 Mac 下使用 Android Studio 时常会遇到 A ...

  4. Android Studio 导入项目运行按钮灰色的完美解决方法

    今天导入项目的时候突然发现编译后运行按钮为灰色. 解决方案: 第一步:点击图中的Add Configuration,出来如下界面 在这里插入图片描述 第二步:点+号,并选择Android App选项 ...

  5. Android studio导入项目提示The same input jar [*.jar] is specified twice

    1  问题 把项目导入Android studio提示用gradle编译提示下面错误 The same input jar [*.jar] is specified twice 2  原因 gradl ...

  6. Android Studio导入项目提示“Unrecognized Android Studio”

    问题: Android Studio在导入或者打开一个项目时,提示以下错误: Unrecognized Android Studio (or Android Support plugin for In ...

  7. Android Studio导入项目app 不显示

    导入别人的项目,报错Unrecognized Android Studio (or Android Support plugin for IntelliJ IDEA) version '201.874 ...

  8. Android Studio新建项目出错如何解决

    博主今天准备新建Android项目,发现每次新建项目同步都失败,只有个project文件,没有生成app,而且build failed,报错内容为:Gradle sync failed: Could ...

  9. Android studio 模拟器启动黑屏解决办法

    Android studio 模拟器启动黑屏 这学期选修了Android应用开发,学习过程中使用Android studio也遇到了一些小问题,写一些遇到的问题记录一下. 前两天上机实验时模拟器打开全 ...

最新文章

  1. sql server 2005 T-SQL BEGIN CONVERSATION TIMER (Transact-SQL)
  2. python怎么实现音乐快进,python将音频进行变速的操作方法
  3. 以太网 数据包速率计算方法
  4. android骰子游戏代码_真神器!不用手写一行代码就能做网站~
  5. c语言里有js的预编译环节吗,C语言第十一讲,预处理命令.
  6. Linux使用yum安装JDK
  7. 模拟tcp_TCP 半连接队列和全连接队列满了会发生什么?又该如何应对?
  8. excel服务器模板修改,勤哲Excel服务器设计查询模板
  9. 74.android 简单的跳转到小米安全中心首页和小米安全中心的权限管理
  10. 灵活好用,GIF 屏幕录制工具
  11. 毕业论文用到的在线网站
  12. dw怎么在框架中加入网页_DW中制作框架网页.ppt
  13. TIM_SetCompare1(TIM14,625); 但是这个办法对TIM4行不通。TIM4使用TIM_OCInitStructure.TIM_Pulse = dutyCycle;
  14. python爬虫模式_python爬虫的入门试炼
  15. 可视化大屏设计尺寸_UI设计中大屏可视化设计尺寸指南
  16. LVGL_V8.2 时钟动画 (持续更新中)
  17. 无法启动此程序,因为计算机中丢失vcruntime140.dll”的解决方法
  18. Illustrator “图像裁切”功能如何使用?
  19. QA:GMS认证、CTS测试、GTS测试、谷歌认证、安卓认证,Android
  20. java 回调函数解读

热门文章

  1. 上师大计算机学院分数线,分数低还想上师范大学?这4所师范院校,二本的分数就够了...
  2. 【OpenGL从入门到精通(二)】绘制一个点
  3. 理解好内存管理,C语言就不难学了
  4. C语言变量的定义包括变量存储类型和变量的什么?
  5. C语言结构体字节对齐
  6. 计算机兴趣小组意义,信息技术兴趣小组开展之我见
  7. php 字符串 字典序序排序,C++ 怎么实现字典序排序法,自然排序
  8. http协议下需要服务器推送吗,HTTP/2.0 服务器推送实现
  9. vue php企业站案例,vue 开发企业微信整合案例分析
  10. 鸿蒙系统的挑战,简单的讲解下何为鸿蒙系统,可能会挑战你的认知颠覆你的想象...