为什么 Android Studio 工程文件夹占用空间这么大?我们来给它减减肥
偶然中发现Android Studio的工程文件夹比ADT Bundle的大很多。
用Android Studio新建一个空工程,工程文件夹大小为30M,运行一次后大小为40M。
同样用ADT Bundle新建一个空工程,工程文件夹大小为1.5M,运行一次后大小为3.8M。
天哪!Android Studio的工程比ADT Bundle的工程至少大了10倍啊!
这是为什么呢?
带着疑惑打开Android Studio工程文件夹,在<工程根目录>\build\generated文件夹中发现有个叫mockable-android-23.jar的文件,这货竟然有22M大!而且每个工程下都有!
网上对这个文件的介绍比较少,不过还是找到了两处有用的介绍:
http://stackoverflow.com/questions/34853185/how-to-use-mockableandroidjar
http://blog.csdn.net/u010331406/article/details/51736211
总的来说就是这个文件是用来做单元测试用的,但该功能目前还处于实验阶段,不想用可以关了。
该功能默认是开启的,而且如果不关的话,在每个工程中都会生成一个这么大的jar文件。
如果能在电脑上全局共享一个这样的jar文件就好了,但目前不行。
说了这么多,不管你关不关,反正我是要关了。哈哈~
关掉也简单,在设置中找到Experimental,把第3个选项的勾去掉。截图借用了上面那位CSDN博友的,在此表示感谢!
去掉勾后,clean一下工程,工程大小减少了20M。以后新建的工程就没这个文件了,之前的工程clean一下也会删除该文件。每个工程减少20M,总量也相当可观哦。
不过去掉这个大文件后,Android Studio工程还是比ADT Bundle的大很多。也许做不到ADT Bundle工程那么小,毕竟是两种不同的开发环境,但仍希望能再缩小些。博友们有没有其它给工程减肥的办法呢?
-------------------------------------2016.8.28更新------------------------------------------
上次去掉mockable-android-23.jar后,一个空工程可以减小到10M。经过测试发现,去掉v7包后,空项目可以减小到1M。
去掉v7包的方法也很简单,在build.gradle文件中找到“compile 'com.android.support:appcompat-v7:23.3.0'”,注释掉或删除掉后再clean一下就可以了。
当然这样做的前提是当前项目不需要v7包,比如我做的的快乐贪吃蛇游戏就没有用到,于是就删了。
为什么 Android Studio 工程文件夹占用空间这么大?我们来给它减减肥的更多相关文章
- 为什么 Android Studio 工程文件夹占用空间这么大?
为什么 Android Studio 工程文件夹占用空间这么大? 学习了: https://www.cnblogs.com/chengyujia/p/5791002.html
- Android Studio:layout-sw600dp文件夹中创建activity_main.xml
1.右键res文件夹,新建Android resource directory文件夹 2.在resource type中选择layout 3.将Directory name命名为layout-sw6 ...
- 使用TortoiseGit对android studio工程进行代码版本控制
阅读下列文章时请保证你是否有以下工具: 1.Android Studio 2.TortoiseGit 和 msysGit 安卓工程版本控制哪些文件可以忽略 可以省略的文件如下: 目录 .gradle ...
- Android Studio工程目录介绍
来自知乎: Android Studio工程目录结构 .gradle 是gradle运行以后生成的缓存文件夹. .idea 是android studio/Intellij IDEA工程打开以后生成的 ...
- OS X环境下如何搭建编译Cocos2D-X v3.x的Android Studio工程
Cocos2D-X官网已经简单介绍了如何在OS X环境下搭建Cocos2D-X v2.x和v3.x的指南.具体链接为:http://www.cocos.com/doc/article/index?ty ...
- Android开发之深入理解Android Studio构建文件build.gradle配置
摘要: 每周一次,深入学习Android教程,TeachCourse今天带来的一篇关于Android Studio构建文件build.gradle的相关配置,重点学习几个方面的内容:1.applica ...
- Eclipse转Android Studio工程实践
Eclipse转Android Studio工程有两种方式, 一种是兼容Eclipse,两者都可以使用,一种是全新的Android Gradle Project. 这里使用的Android Studi ...
- Android Studio 工程的 .gitignore
新建一个 Android Studio 工程时会默认建立两个 .gitignore 文件 .gitignore *.iml .gradle /local.properties /.idea/works ...
- Android 项目中文件夹的说明与作用(转)
(转自:http://blog.csdn.net/goodshot/article/details/11529731) Android 项目中文件夹的作用 1. src:存放所有的*.java源程序. ...
随机推荐
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- 测试一下StringBuffer和StringBuilder及字面常量拼接三种字符串的效率
之前一篇里写过字符串常用类的三种方式<java中的字符串相关知识整理>,只不过这个只是分析并不知道他们之间会有多大的区别,或者所谓的StringBuffer能提升多少拼接效率呢?为此写个简 ...
- 采用MiniProfiler监控EF与.NET MVC项目(Entity Framework 延伸系列1)
前言 Entity Framework 延伸系列目录 今天来说说EF与MVC项目的性能检测和监控 首先,先介绍一下今天我们使用的工具吧. MiniProfiler~ 这个东西的介绍如下: MVC Mi ...
- iOS逆向工程之Hopper+LLDB调试第三方App
LLDB是Low Level Debugger的简称,在iOS开发的调试中LLDB是经常使用的,LLDB是Xcode内置的动态调试工具.使用LLDB可以动态的调试你的应用程序,如果你不做其他的额外处理 ...
- RabbitMq应用一的补充(RabbitMQ的应用场景)
直接进入正题. 一.异步处理 场景:发送手机验证码,邮件 传统古老处理方式如下图 这个流程,全部在主线程完成,注册->入库->发送邮件->发送短信,由于都在主线程,所以要等待每一步完 ...
- node模块加载层级优化
模块加载痛点 大家也或多或少的了解node模块的加载机制,最为粗浅的表述就是依次从当前目录向上级查询node_modules目录,若发现依赖则加载.但是随着应用规模的加大,目录层级越来越深,若是在某个 ...
- 【转】java通用URL接口地址调用方式GET和POST方式
java通用URL接口地址调用方式GET和POST方式,包括建立请求和设置请求头部信息等等......... import java.io.ByteArrayOutputStream; import ...
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...
- 一些关于Linux入侵应急响应的碎碎念
近半年做了很多应急响应项目,针对黑客入侵.但疲于没有时间来总结一些常用的东西,寄希望用这篇博文分享一些安全工程师在处理应急响应时常见的套路,因为方面众多可能有些杂碎. 个人认为入侵响应的核心无外乎四个 ...
- android计算每个目录剩余空间丶总空间以及SD卡剩余空间
ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvail ...