Android Studio导入项目非常慢的解决办法
问题
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版本,但是都不太完整。最后在这里看到了完整点的解决方法。精简下主要如下几个步骤:
- 先获取本机相关参数,包含如下几个(括号中是我本人机器的参数):
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导入项目非常慢的解决办法相关推荐
- Android Studio 导入项目时出现Failed to apply plugin
Android Studio导入项目时出现问题 Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Faile ...
- Android Studio导入项目app module一直不显示
Android Studio导入项目app module一直不显示 问题描述及尝试解决 Android Studio版本:3.5.2 导入或打开已有Android项目时Gradle插件版本和Gradl ...
- android studio日志不打印,Mac 下 Android Studio 不打印日志的解决办法
Mac 下 Android Studio 不打印日志的解决办法 Mac 下 Android Studio 不打印日志的解决办法 前言: 在 Mac 下使用 Android Studio 时常会遇到 A ...
- Android Studio 导入项目运行按钮灰色的完美解决方法
今天导入项目的时候突然发现编译后运行按钮为灰色. 解决方案: 第一步:点击图中的Add Configuration,出来如下界面 在这里插入图片描述 第二步:点+号,并选择Android App选项 ...
- Android studio导入项目提示The same input jar [*.jar] is specified twice
1 问题 把项目导入Android studio提示用gradle编译提示下面错误 The same input jar [*.jar] is specified twice 2 原因 gradl ...
- Android Studio导入项目提示“Unrecognized Android Studio”
问题: Android Studio在导入或者打开一个项目时,提示以下错误: Unrecognized Android Studio (or Android Support plugin for In ...
- Android Studio导入项目app 不显示
导入别人的项目,报错Unrecognized Android Studio (or Android Support plugin for IntelliJ IDEA) version '201.874 ...
- Android Studio新建项目出错如何解决
博主今天准备新建Android项目,发现每次新建项目同步都失败,只有个project文件,没有生成app,而且build failed,报错内容为:Gradle sync failed: Could ...
- Android studio 模拟器启动黑屏解决办法
Android studio 模拟器启动黑屏 这学期选修了Android应用开发,学习过程中使用Android studio也遇到了一些小问题,写一些遇到的问题记录一下. 前两天上机实验时模拟器打开全 ...
最新文章
- sql server 2005 T-SQL BEGIN CONVERSATION TIMER (Transact-SQL)
- python怎么实现音乐快进,python将音频进行变速的操作方法
- 以太网 数据包速率计算方法
- android骰子游戏代码_真神器!不用手写一行代码就能做网站~
- c语言里有js的预编译环节吗,C语言第十一讲,预处理命令.
- Linux使用yum安装JDK
- 模拟tcp_TCP 半连接队列和全连接队列满了会发生什么?又该如何应对?
- excel服务器模板修改,勤哲Excel服务器设计查询模板
- 74.android 简单的跳转到小米安全中心首页和小米安全中心的权限管理
- 灵活好用,GIF 屏幕录制工具
- 毕业论文用到的在线网站
- dw怎么在框架中加入网页_DW中制作框架网页.ppt
- TIM_SetCompare1(TIM14,625); 但是这个办法对TIM4行不通。TIM4使用TIM_OCInitStructure.TIM_Pulse = dutyCycle;
- python爬虫模式_python爬虫的入门试炼
- 可视化大屏设计尺寸_UI设计中大屏可视化设计尺寸指南
- LVGL_V8.2 时钟动画 (持续更新中)
- 无法启动此程序,因为计算机中丢失vcruntime140.dll”的解决方法
- Illustrator “图像裁切”功能如何使用?
- QA:GMS认证、CTS测试、GTS测试、谷歌认证、安卓认证,Android
- java 回调函数解读
热门文章
- 上师大计算机学院分数线,分数低还想上师范大学?这4所师范院校,二本的分数就够了...
- 【OpenGL从入门到精通(二)】绘制一个点
- 理解好内存管理,C语言就不难学了
- C语言变量的定义包括变量存储类型和变量的什么?
- C语言结构体字节对齐
- 计算机兴趣小组意义,信息技术兴趣小组开展之我见
- php 字符串 字典序序排序,C++ 怎么实现字典序排序法,自然排序
- http协议下需要服务器推送吗,HTTP/2.0 服务器推送实现
- vue php企业站案例,vue 开发企业微信整合案例分析
- 鸿蒙系统的挑战,简单的讲解下何为鸿蒙系统,可能会挑战你的认知颠覆你的想象...