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资源文件:

 

[html] view plain copy
 
 print?
  1. <style name="AppTheme" parent="android:Theme.Light">  
  2. </style>  

三、       更改类文件继承的对象为Activity

 

[java] view plain copy
 
 print?
  1. 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倍的原因

Android Studio Gradle 3.6.0之后apk变大了很多,约等于2倍的原因

Android apk 包体积优化

android studio底部弹出框怎么变大

货拉拉 Android 动态资源管理系统原理与实践(上)