Android Studio apk体积突然变大(升级gradle后)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Studio apk体积突然变大(升级gradle后)相关的知识,希望对你有一定的参考价值。
参考技术A在主工程的androidManifest.xml配置中,在<application>标签,添加android:extractNativeLibs=true属性
体积变大原因
extractNativeLibs 瘦身属性 true时会将工程so库进行压缩
gradle 升级后 其默认值发生了改变
以前实用的gradle 版本低于3.6.0 extractNativeLibs 默认为true
后来升级gradle升级 extractNativeLibs属性默认为false
所以在<application>标签中添加该属性即可
Android Studio如何减小APK体积
最近在用AndroidStudio开发一个小计算器,代码加起来还不到200行。但是遇到一个问题,导出的APK文件大小竟然达到了1034K。这不科学,于是就自己动手精简APK。下面我们大家一起学习怎么缩小一个APK的大小,以hello world为例。
新建工程,最低版本支持2.3.3,其他默认。工程目录是这样的:
我们直接签名导出APK,看看大小如何,1M啊!( ⊙ o ⊙ ) 什么鬼:
怎么可能呢是吧?都还没有写代码呢,就已经1M了。检查一下代码,我们会发现,工程里自动添加了V7的向下兼容包,为了使低版本(4.0以下)的Android能够使用高版本(4.0及以上)的特性。
一、 如果我们用不上这个兼容包就可以将其删除,File-->ProjectStructure-->app-->Dependencies(快捷键:Ctrl+Shift+Alt+S),即类似这样命名的包com.android.support:appcompat-v7:22.2.0
二、 删除之后,项目就开始报错了。这时要删除menu资源文件里面的showAsAction属性和更改Styles.xml资源文件:
将被标上红线的代码删掉:
更改Style.xml资源文件:
- <style name="AppTheme" parent="android:Theme.Light">
- </style>
三、 更改类文件继承的对象为Activity
- public class MainActivity extends Activity
导入Activity包和移除不必要的包
四、 这时只要clean一遍项目,你会发现已经没有错了。
五、 我们直接导出APK看看现在的大小如何,简直是差了天那么大:
六、 可以选择开启ProGuard:http://developer.android.com/tools/help/proguard.html
参考:
http://blog.csdn.net/tim_yip/article/details/47022875
http://www.2cto.com/kf/201608/540670.html
http://www.cnblogs.com/soaringEveryday/p/5254520.html
以上是关于Android Studio apk体积突然变大(升级gradle后)的主要内容,如果未能解决你的问题,请参考以下文章
apk优化 :android:extractNativeLibs 升级gradle之后发现 打包出来的apk体积突然大了将近一倍。
Android Studio Gradle 3.6.0之后apk变大了很多,约等于2倍的原因