app瘦身总结

9人阅读 评论(1) 收藏 举报
分类:
上周接到了个需求-去给当前的app瘦身下。刚好不想做业务方面的需求,然后就抽了那么几天做了下调研,做个小总结。
目前的项目apk大小在70m到80m之间,不要问我为什么这么大,你来了就知道了!!!既然要给项目瘦身,怎么着也得了解下已经采用的的方法,顺便也增加下了解好了(无了解)
目前项目采取的压缩方法,直接上一个代码:
//开启proguard混淆
minifyEnabled true
//Zipalign优化
zipAlignEnabled true
proguardFiles '***.pro'
//去除无用的res资源
shrinkResources true
没有太多秘密,才有Proguard进行混淆,Proguard不仅仅是混淆,还可以压缩、优化等功能。Proguard文件的配置主要在***.pro文件中,编写***.pro文件不难这里不介绍。
弱弱问句,你们知道敏捷开发吗?
是的,我们部门就很类似那种风格。好了,回到正题,基于对目前项目的分析,采取的瘦身方法主要有如下三点以及后期排期的一点:
1)、删除目前无用的模块。(重要)
2)、删除无用so
3)、删除无用的res以及对drawable文件压缩(可以稍微减下那么几m)
后期排期:
4)、插件化(没实战过不做介绍)
第一点之所以说重要,基于当前部门的开发风格相关(敏捷开发:疯狂的做各种需求,有的没的不一定会到用户的那种)造成目前项目存在大量的无用模块,我采取的策略是删除无用的超大模块,排期就那么几天没办法做到精确的各个模块。(当然也可以释放大量的无用res资源)
so文件不说还是蛮客观的。
无用的res这里包括两点:第一点是删除当前项目中没有无用的资源以及被无用大模块占用的资源,第二点是对当前图片进行压缩。
具体的实现:
第一点和第二点和每个具体项目相关不展开
稍微详细讲下删除无用res凑合下字数表示自己也是在做笔记好了,这里不以androidStudio自带的lint为例。
比较推荐Lint Cleaner Plugin + android-resource-remover
使用Lint Cleaner Plugin可以在项目目录下生成两个文档lint-results.xml以及lint-results.html,如果时间充裕完全可以打开lint-results.hmlt,我相信你会被小小感动一下下,里面除了记录了目前项目哪些res是无用res,还可以罗列出目前哪些地方可以被优化的地方,比方哪些地方布局可以用merge、哪些地方hashmap可以被sparseArray替代、哪些地方可能存在内存泄漏等,(还是蛮推荐看下的)
android-resource-remover用于删除要删除的资源。注意,在看完使用步骤附录时android-resource-remover --xml build/outputs/lint-results.xml在项目的AndroidManifest.xml文件所在的路径下执行
具体使用步骤见附录链接
图片的压缩,目前项目图片格式主要存在三种格式webp、png、.9.png。目前webp在项目中使用存在少量,这边压缩主要针对png
采用TinyPng

附:
Lint Cleaner Plugin使用:
android-resource-remover使用:
TinyPng网址:


查看评论

App(Android)瘦身过程总结

主要优化分类: lint检查 图片压缩 去除第三方依赖包 资源压缩(微信) 去除多余语言包 深度混淆 一、lint检查 无用图片 无用配置及相关图片 去除无用代码 二、图片压缩处理 大图片压缩,特别是...
  • liubinwyzbt
  • liubinwyzbt
  • 2016-03-22 18:44:28
  • 275

Android App 瘦身总结

随着移动端产品功能的逐渐增加,APP 的体积也不可避免地呈现上升趋势,如果不加以重视,几个版本迭代下来,可能你的 APP 体积会达到用户不能忍受的程度。 如果你是 SDK 开发者,你的 SDK 包大...
  • renjianhhong
  • renjianhhong
  • 2016-11-04 15:24:24
  • 2376

Android中5种app瘦身方式

Android中5种app瘦身方式App瘦身的概念 App瘦身是指在不减少App功能的前提下,通过一些技巧将打包出来的apk体的体积尽可能减少。 这样做的好处有几个:加快用户下载速度,节省用户下载流...
  • luckyleaf666
  • luckyleaf666
  • 2017-03-06 11:11:46
  • 492

我的Android进阶之旅------>Android APP终极瘦身指南

首先声明,下面文字转载于:APK瘦身实践http://www.jayfeng.com/2015/12/29/APK%E7%98%A6%E8%BA%AB%E5%AE%9E%E8%B7%B5/Androi...
  • qq446282412
  • qq446282412
  • 2016-04-12 20:06:08
  • 5246

iOS app瘦身优化之路

缩减iOS安装包大小是很多中大型APP都要做的事,一般首先会对资源文件下手,压缩图片/音频,去除不必要的资源。这些资源优化做完后,我们还可以尝试对可执行文件进行瘦身,项目越大,可执行文件占用的体积越大...
  • zhuod
  • zhuod
  • 2016-10-26 16:18:34
  • 1575

iOS app 瘦身

本文译自:Guides and Sample Code 的App Thinning (iOS, tvOS, watchOS)App 瘦身App Store和操作系统通过将app定制到用户的特定设备中来...
  • huxinguang_ios
  • huxinguang_ios
  • 2017-05-27 11:41:01
  • 359

关于安卓APP瘦身方面的经验()

来自-app架构师公众号 大家有兴趣可以去关注他的文章 从APK的文件结构说起 APK在安装和更新之前都需要经过网络将其下载到手机,如果APK越大消耗的流量就会越多,特别是...
  • qq_30983519
  • qq_30983519
  • 2016-09-14 14:54:42
  • 634

关于安卓APP瘦身

1、as自带分析工具(3.0.1):菜单--》build展开--》analyze APK  选中我们打包的apk,稍等片刻就得到了我们的分析结果:很明显类库太大,点开之后一看,主要是百度地图和pdf占...
  • qq_27900241
  • qq_27900241
  • 2018-02-12 15:56:00
  • 91

iOS 9 App 瘦身功能

App 瘦身简介 当前市场上存在大量的 iOS 设备,因此有多种屏幕尺寸和分辨率,要想保证一个 App 在多种屏幕下的展示效果需要大量的资源(比如 png、jpeg 以及二进制的 PDF)。不幸的是...
  • ycs_man
  • ycs_man
  • 2016-04-19 16:58:31
  • 1662

iOS安装包瘦身方法?

一、删除无用资源 删除1x图片,无需适配iPhone4以下机型 现在应该没有APP需要支持iPhone4以下的机型了,所以1X的图片可以全部删掉。3X的图片是保留还是删掉看具体情况。 未使用的图片通...
  • M_nao
  • M_nao
  • 2017-02-25 22:28:14
  • 697
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 8万+
    积分: 998
    排名: 5万+
    博客专栏
    android UI设计