android o 编译及运行,【转】实践最有效的提高Android Studio运行、编译速度方案
原文:https://blog.csdn.net/xwh_1230/article/details/60961723
实践最有效的提高Android Studio运行、编译速度方案
最有效提升Android studio编译速度的方式:提升电脑配置!—- 鲁迅
鲁迅所说确实是实情,提升配置是最有效的方式,但对于我等屌丝来说,有时候很难办到,因此我们接着看下面的优化。
一、安装时的问题
1、安装完成后启动卡死
刚刚打开studio就卡在gradle building的界面再也不动了(去连接墙外的网下载),那么这个时候我们就需要把这个联网下载操作屏蔽掉,找到studio安装目录,找到idea.properties文件,打开,加上下面一行配置,作用是在初次打开的时候不让它连接谷歌进行更新。
disable.android.first.run=true
1
2
2、更改studio的VM大小
AS限制了Java虚拟机启动的内存大小,限制了最大堆内存,当AS运行越久,内存越不足的时候,就会频繁的触发GC,AS就自然会卡起来了,严重的直接黑屏,所以,我们把对应的所需内存都配置大一些,32位的系统打开studio.exe.vmoptions文件,如果是64位的话打开studio64.exe.vmoptions,改动以下配置,根据各自配置适当调节。
-Xms512m
-Xmx4096m
-XX:MaxPermSize=2048m
-XX:ReservedCodeCacheSize=1024m
1
2
3
4
5
二、取消一些联网操作或者使用离线模式
1、打开File->Settings->appearance &behavior->system setting->Updates,把两个选择框都取消选中。
如图:
2、使用offline work和Local gradle
第一次启动的时候需要下载Gradle,地址:https://gradle.org/releases,下载对应版本放到C:\User{username}.gradle\wrapper\dists\gradle-3.3-all(版本根据下载的版本修改即可)
setting->Build,Execution,Deployment->gradle,把offline work选中,并选择Use local Gradle distribution,里面的路径是AS安装路径/gradle/gradle-x.xx.x
三、优化编译方案
1、开启gradle的守护进程(亲测比较管用的配置,能提升50%,之前把gradle.properties写成了gradle.properties.txt,也是被百度的一些文章给误导~!)
当 Android Studio 遇到错误的时候,往往会导致 Android Studio 挂掉,为了防止推出程序,则另外开启一个线程来守护 Android Studio 的进程,具体操作。 在 C:\Users.gradle 这个目录下,创建 gradle.properties配置文件,复制以下配置进行优化。
# 编译时使用守护进程
org.gradle.daemon=true
#JVM最大允许分配的堆内存,按需分配
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#使用并行编译
org.gradle.parallel=true
org.gradle.configureondemand=true
1
2
3
4
5
6
7
8
2、尽量使用第三方库的jar、aar文件导入自己的项目,或者将第三方库下载到本地,然后当做一个本地模块导入自己的项目,不要再使用gradle中的maven依赖了(使用offline模式就会报错)
以compile ‘com.squareup.okhttp:okhttp:2.0.0’为例:
百度搜索:maven 仓库
输入关键字:okhttp
找到对应的lib
打开并找到对应的2.0.0版本
点击上面红框中的版本号打开
有一些arr在central中,这个是jar在第一个红框中,点击下载
在build.gradle添加:compile files(‘libs/okhttp-2.0.0.jar’)
附录:
android o 编译及运行,【转】实践最有效的提高Android Studio运行、编译速度方案相关推荐
- Android App包瘦身优化实践
随着业务的快速迭代增长,美团App里不断引入新的业务逻辑代码.图片资源和第三方SDK,直接导致APK体积不断增长.包体积增长带来的问题越来越多,如CDN流量费用增加.用户安装成功率降低,甚至可能会影响 ...
- ubuntu平台下编译vlc-android视频播放器实践
音视频实践学习 android全平台编译ffmpeg以及x264与fdk-aac实践 ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务器 android全平台编译ffm ...
- NDK实践(一)在linux环境下编译ffmpe
系列文章目录: NDK实践(一)在linux环境下编译ffmpe NDK实践(二)将编译的ffmpeg静态库集成到Android工程 最近开始接触学习ndk开发,本着边学习边实践的原则,计划完成视频编 ...
- Android图片处理之Fresco初实践
转载请注明转自http://write.blog.csdn.net/postedit/50459154[小曾的博客] 关于 Fresco Fresco 是一个强大的图片加载组件. Fresco 中设计 ...
- (Google I/O '17) Speeding Up Your Android Gradle Builds 在本地的实践
引子 一直以来,由于项目中加入的module太多,全量编译一次公司的安卓项目需要2个小时.后来作死换了一台iMac全量编译一个安卓的项目需要四个多小时.幸亏有高人的指点,参考了2017年Google ...
- 不反编译、无逆向基础也能轻松编写Android App Hook插件? Xposed的远房表弟,Hookworm来也!
前言 Xposed的大名相信很多同学都不陌生,它提供了一种能力,可以在不修改原apk的情况下,以插件的方式改变目标App的某些行为. 但随着Android系统版本的迭代,原来的Xposed已经不适合在 ...
- android 置灰不可点击,Android Studio 运行按钮灰色的完美解决方法
Android Studio 运行按钮灰色的完美解决方法 今天新建项目的时候突然发现编译后运行按钮为灰色. 解决方案:第一步:点击图中的Add Configuration,出来如下界面 第二步:点+号 ...
- Android(三)——将程序打包成APK文件,进行APK签名以及反编译APK
文章目录 1. 签名的作用 2. Android Studio 如何打包签名 3. 反编译 APK 3.1 获取图片资源 3.2 获取 .XML 资源 3.3 获取代码资源 1. 签名的作用 Andr ...
- [编转]Android localsocket 的基础和使用实践: 02
在上一节里,谈到了基础和具体是实践实现: 这一节涉及调试和具体的实践测试: 例子源码在: http://download.csdn.net/detail/goleftgoright/4183596 下 ...
最新文章
- 开源点云实时压缩方案测试
- RYU控制器的学习笔记(二)
- 【H.264/AVC视频编解码技术具体解释】十三、熵编码算法(4):H.264使用CAVLC解析宏块的残差数据...
- 为排序使用索引OrderBy优化
- c语言一个循环重新输入密码,想程序高手求助--用C语言来编辑一个输入密码的程序...
- 【转】Spark源码分析之-scheduler模块
- 2020-3-20前端题目
- if ,else if ,else 执行过程
- Java Web学习总结(9)——servlet和Jsp生命周期解读
- CSS→代码语法、优先级、选择器、权值、字体文本、颜色、长度值、块状内联元素、盒模型、布局模型→层模型绝对相对定位、div排列、水平居中
- 怎样用计算机进行文字采集,怎么将照片上的文字自动录入电脑
- (十八)其他数据库对象,视图,序列
- 数据结构严蔚敏(c语言版)课后算法题答案-栈和队列
- c语言词法分析程序设计,c语言词法分析器的简单实现 词法分析器的设计与实现...
- 【数据获取】1:25万全国基础地理公开数据库(水系、道路、村庄)下载整理
- 大学计算机构成课程论文,大学计算机课程论文
- 快手二面:a==1 a==2 a==3 是 true 还是 false?
- 2019最新14个国外知名开发者社区
- Mac搭建Flink集群
- 微信小程序全栈开发实践 第二章 微信小程序组件介绍及使用 -- 2.3 rich-text 组件,以及如何单击预览它的节点图片并保存
热门文章
- HDFS基本原理及数据存取实战
- linux chromium安装falsh插件
- 使用RIP协议处理不连续的子网和VLSM(一)
- linux运维架构篇
- 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总
- angularjs学习第四天笔记(第一篇:简单的表单验证)
- Codeblocks 中文乱码解决方法
- 根据两个日期字符串,格式为(YYYY-MM-DD),获取年龄,保留两位小数但不四舍五入...
- 五、扩展Orchard(一) First Steps into Orchard
- [Project Euler] 来做欧拉项目练习题吧: 题目012