APK大小的瘦身的总结:
首先是看了博客:http://blog.csdn.net/sw950729/article/details/64919051
时。认为大神我就是马云飞写的非常有道理。全部自己就自己写了一遍。长话短说:
在实际开发中,特别是多人接手迭代开发的项目中,随着时间的推移,项目会越来越大。所以让项目大小变小是能够例如以下操作:
1,在gradle使用minifyEnabled进行Proguard混淆的配置,可大大减小APP大小,例如以下面代码:
buildTypes {
release {
//开启混淆(as自带默认配置)
minifyEnabled ture
//去出没用的资源文件
shrinkResources true
//移除没用的Resources的资源文件
zipAlignEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
2,删除无用资源,主要是xml文件,操作–点击Analyze——>Run Inspection by Name–然后输入unused Resources就可以显示出未使用的资源文件,其操作步骤为:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2lsbGJh/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">
3,图片瘦身值熊猫大法–使用tinypng压缩图片,官方站点:https://tinypng.com
PNG是实用的,由于它是唯一广泛支持的格式,能够存储部分透明的图像。
格式使用压缩。可是文件仍然可能非常大。
使用TinyPNG缩小您的应用程序和站点的图像。它将使用更少的带宽和更快的载入。图片就不截取出来了。大家能够直接去官网查看了解。
4,通过重构Refactor来删除没用的资源(通过id找到),详细操作例如以下
通过Remove Unused Resources来删除没用的资源
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2lsbGJh/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">
其中Refactor表示直接重构,Preview表示预览的意思,建议大家先使用预览的方式,由于代码中引用方式不同,所以存在代码中使用了某个资源,可是依旧被当成没有引用的情况,比如通过使用getIdentifier、Uri等方式。
5。针对不同cpu的so库进行打包,眼下仍就在试验其中
armeabi、armeabi-v7a(32的cpu)。armeabi-v8a(64位的cpu)和x86。
在其安装设备中,是默认以armeabi为选项,同一时候须要指出:打包出的x86的so,总会比armeabi平台的体积更小。可是却有性能的损耗。
假设项目仅仅包括了 armeabi,那么在全部Android设备都能够执行。
假设项目仅仅包括了 armeabi-v7a。除armeabi架构的设备外都能够执行;
假设项目仅仅包括了 x86,那么armeabi架构和armeabi-v7a的Android设备是无法执行的。
假设同一时候包括了 armeabi, armeabi-v7a和x86,全部设备都能够执行,程序在执行的时候去载入不同平台相应的so。这是较为完美的一种解决方式。同一时候也会导致包变大。
所以其操作为:
5.1为了减小apk体积,仅仅保留armeabi和armeabi-v7a两个目录。并保证这两个目录中so数量一致。
2,对仅仅提供aremabi版本号的第三方so。原样复制一份到armeabi-v7a目录
以上!
APK大小的瘦身的总结:的更多相关文章
- Android APK安装包瘦身[转]
很显然,APK安装包越小越好.下面从代码,资源文件,使用策略几个方面简要介绍下: 代码 保持良好的编程习惯,不要重复或者不用的代码,谨慎添加libs,移除使用不到的libs. 使用proguard混淆 ...
- Android APK瘦身之Android Studio Lint (代码审查)
******** ******** 第一部分: 瘦身内容介绍 ******** ******** 项目新版本的迭代接近尾声, 因为历史累积问题, 导致有很多无效的资源让已经臃肿的APK变得更肿, 因此 ...
- 39、apk瘦身(转载)
本文转自::Android开发中文站 » 关于APK瘦身值得分享的一些经验 从APK的文件结构说起 APK在安装和更新之前都需要经过网络将其下载到手机,如果APK越大消耗的流量就会越多,特别是对于使用 ...
- Drawable实战解析:Android XML shape 标签使用详解(apk瘦身,减少内存好帮手)
Android XML shape 标签使用详解 一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景. ...
- APK瘦身记,如何实现高达53%的压缩效果
作者:非戈@阿里移动安全 1.我是怎么思考这件事情的 APK是Android系统安装包的文件格式,关于这个话题其实是一个老生常谈的题目,不论是公司内部,还是外部网络,前人前辈已经总结出很多方法和规律. ...
- APK瘦身实践
首发地址:http://www.jayfeng.com/2015/12/29/APK%E7%98%A6%E8%BA%AB%E5%AE%9E%E8%B7%B5/ 因为推广的需要,公司需要把APK的大小再 ...
- 如何给你的Android 安装文件(APK)瘦身
如何给你的Android 安装文件(APK)瘦身 本文翻译自:Putting Your APKs on Diet 原作者:Cyril Mottier Android的apk文件越来 ...
- APK瘦身
APK瘦身 主要从一下三方面来瘦身: 1. Java 源代码 1) ,这方面主要是通过最简洁的代码实现最直接的功能,还有就是提出上线前不必要的java代码,可以使用UCDector进行分析,从而对代码 ...
- Android APK 瘦身 - JOOX Music项目实战
导语 JOOX Music是腾讯海外布局的一个音乐产品,2014年发布以来已经成为5个国家和地区排名第一的音乐App.东南亚是JOOX Music的主要发行地区,由于JOOX Music所面对的市场存 ...
随机推荐
- Mybatis三剑客
1.Mybatis-generator 自动化生成数据库交互代码->dao+pojo+xml 2.Mybatis-plugin dao文件和xml自动跳转,验证正确性,在xml中只能提示等功能 ...
- jQuery九宫格图片拉伸变大代码
之前看到网上有jQuery九宫格图片拉伸变大代码只可以动六张图片,我改了改做了九张图片都可以做的 图片的布局 成品就是每一个图片都可以动看到大图 css样式 <style> /*九宫格*/ ...
- letsencrypt的证书转换上传到360网站防护方法
命令:openssl 首先letsencrypt生成的证书在 letsencrypt/live/xxx.com/ 下,需要使用cert.pem和privkey.pem文件. 生成crt文件: open ...
- python数据类型-----字符串
今天来总结下python3.4版本字符串的一些操作方法,对这些方法先作一个简单的分类,按照分类来进行总结. Sequence Typessequence类型有六种:strings, byte sequ ...
- 在Debian 9上安装和配置Observium网络监控
https://blog.csdn.net/csgd2000/article/details/80780697
- 在阿里云“专有网络”网络类型中配置vsftpd
原文地址:传送门 环境:云服务器ECS,网络类型为“专有网络”,创建ECS绑定公网IP:系统镜像为Debian 8 现象:FTP客户端可以连接FTP服务端,但“读取目录列表失败”. 原因 ...
- unused import statement android studio 解决方法
解决方法:“file”-->“invalidate caches/restart” 解决 感谢大神的解答
- poj1860(Bellman—fold)
题目连接:http://poj.org/problem?id=1860 Description Several currency exchange points are working in our ...
- NOI2013部分题解
Day 1 T1:向量内积 直接暴力有60.发现将n个向量合成$n\times d$的矩阵$A$,然后求$A\times A^T$,得到的矩阵包含了所有的答案. 先考虑$k=2$,将答案矩阵和全1矩阵 ...
- 【计算几何】【凸包】bzoj2829 信用卡凸包
http://hzwer.com/6330.html #include<cstdio> #include<cmath> #include<algorithm> us ...