前言:
项目新填一个视频播放功能,所以就在网上找了一个第三方播放器,直接引用一打包 OMG - apk 17M ,检查发现lib 占用了8M左右 图片未做处理 占了3M左右,各种瘦身大法走起,赶紧整理一波。
对lib目录下的文件进行瘦身处理
so文件的优化:
通常我们在使用NDK开发的时候,我们经常会有如下这么一段代码:
ndk { abiFilters "armeabi-v7a", "x86", "arm64-v8a", "x86_64", "armeabi" }
如果一个文件夹下的so文件为2.5M 那么这么引用apk 的大小就增加了2.5*5M 对于一个简单的apk 来说 很多用户估计就不会下载了吧
优化方案:
ndk { abiFilters 'arm64-v8a', 'armeabi-v7a' }
重新编译so (能力有限基本很少)
资源优化
图片压缩:
- 图片从蓝湖下载开启压缩模式 一张图可以缩小75% 左右
- 没有使用蓝湖的 可以使用在线压缩tinypng 个人前500张免费 效果还是可以的80%左右
- 使用gradle开启shrinkResources
minifyEnabled true
useProguard true
shrinkResources true
zipAlignEnabled true
- 手动lint检查,手动删除无用资源
总结:
一般项目 使用以上压缩基本就可以了,针对更加小的 还可以操作很多
- 减少chasses.dex大小 暂未研究大家自行研究
- 大部分图片使用Webp格式代替。
- 重新编译so