Android性能优化-Apk瘦身(3)

Android性能优化APK瘦身详解(瘦身73%) 公司项目在不断的改版迭代中,代码在不断的累加,终于apk包不负重负了,已经到了八十多M了。可能要换种方式表达,到目前为止没有正真的往外推过,一直在内部执行7天讨论需求,5天代码实现的阶段。你在写上个版本的内容,好了,下个版本的更新内容已经定稿了。基于这种快速开发的现状,我们app优化前已经有87.1M了,包大了,运营说这样转化不高,只能好好搞一下咯。优化过后包大小为23.1M(优化了73... 阅读详情

Android性能优化-Apk瘦身(1)Android性能优化-Apk瘦身(2),今天我们说些总结。

上述两文,我们述说了Apk瘦身从哪些方面入手,哪些地方值得我们去发现问题以及解决问题,这篇文章我们总结下常规性操作,包括grade打包配置。

1、资源文件优化

a、项目中可选择对主流的dpi支持,例如我们项目目前选择xxhdpi作为对标,对于大图片,可以通过网络加载方式执行。

defaultConfig {
resConfigs "zh" //表示只使用中文
resConfigs "xxhdpi" // 表示只是用xxhdpi目录下的资源文件}

b、项目中的图片以及动图采用webp格式。

图片

c、对于图片绘制功底比较的同学,可多采用svg、shape、代码绘制、NinePatch格式(.9格式)等方式来替代图片资源。

d、资源中尽量使用android系统本身存在的资源,例如字体(实在要用,可到网上寻找简化版资源)

e、对于大资源采用网络加载方式,例如视频、音频、大图、gif、json文件等,当然这种情况要充分考虑网络加载失败的情况,免得业务受阻。

f、在我们业务中,涉及到了so库,并且这些so库占比很很大,我们可以对部分so库执行动态加载方案。

2、开启minifyEnable

它的作用不仅仅是混淆代码,还有压缩优化的功能,他会遍历所有代码并找出没有引用到的代码,这些代码不会生成在apk中,混淆的效果是使用简短的字母替代原来的类名属性名等,一定程度上也可以减小代码体积。此时要注意对于不该混淆的要做keep处理,另外对于那些反射的类要做keep处理。

3、开启shrinkResources功能

shrinkResources标识是否去除无用的resource文件,它需要配合minifyEnable使用,同样存在反射机制引用的问题,这种情况会被误删。

android {
buildTypes {
release {minifyEnable trueshrinkResources true  } 
}
}

4、libs目录瘦身

so文件最终会被打包到libs目录中,我们针对libs目录的瘦身主要是去除不必要的平台ABI的so文件,对于不重要的so库可参考上面1方案中的f条。

defaultConfig {

ndk {

      abiFilters "armeabi-v7a", "arm64-v8a"

   }

}

5、慎重选择第三方库

一些第三方库他的功能很判断,考虑问题很全面,有些开源框架他会根据功能不同提供了精简版,有些会根据不同的平台提供了精简版,还有根据不同的cpu架构提供了不同的精简版,我们要根据的需求选择不同的版本。

[Android 之美] 那些你不知道的APK 瘦身,让你的APK更小 [Android 之美] APK 瘦身,减少APK的大小 让你的apk文件尽可能小,应该使移除未使用的代码和资源文件。那么本章节介绍了如何做到让APK更小,性能更好,下载转化率会更高,以及如何指定在构建APK过程中保留或移除的代码和资源,在我们还没有分析APK大小之前,项目中存在一些资源放置处理不当,没有统一的规范,依赖管理不合理,资源重叠,dex方法数过多等问题,导致APK文件比较大,公 阅读详情

相关推荐

王学岗性能优化(12)——7z压缩

1, (1)7Z是什么: 一种文件压缩格式,具有高压缩比率,进行数据压缩有多种压缩算法可以选择。与其它压缩格式相比,得到的压缩文档较小,即压缩率最高 (2)7-Zip: 完全免费而且开源的压缩软件,相比其他软件有更高的压缩比但同时耗费的资源也相对更多。支持压缩/ 解压缩:7z, XZ, BZIP2, GZIP, TAR, ZIP,WIM (3)7z的好处: 节省磁盘的空间,节省上传下载的流量 (4...

qczg_wxg的博客 2376

Android 11 签名压缩 so 库

Android 11 要求,预装的apk,target sdk 为 30 以上,必须在 apk 中使用未压缩的 so 库。 检查方式,运行命令 unzip -v your_app.apk ‘lib//.so’ 如果 so 库文件显示 Defi,表示经过压缩 $ unzip -v demo.apk 'lib/*/*.so' Archive: demo.apk Length Method Size Cmpr Date Time CRC-32 Name -------- --

大山 2684

Android 升级gradle后 apk中so库文件未压缩

升级AS 3.6.1, 并且升级project build.gradle 到3.6.1, 一个项目发现打包后文件骤然增大,查看apk包,发现apk 包中so库文件未被压缩.降到原来版本gradle又好了!后来百度发现: android:extractNativeLibs = true时,gradle打包时会对工程中的so库进行压缩,最终生成apk包的体积会减小。 但用户在手机端进行apk安装时,系统会对压缩后的so库进行解压,从而造成用户安装apk的时间变长。 关于android:extractNat

qq_40956352的博客 2195

深入探索Android应用瘦身优化

各位兄嘚早上好啊,愿各位都能元气满满开启新的一天!今天继续沿着咱们的Android性能优化系列之路往下走,一路来到了Android应用瘦身优化的部分!

江湖人陆仁甲 994

Android apk打包 大小优化,so库屏蔽

参考: android apk包大小优化详解_瞄大大的博客-CSDN博客_apk大小优化 Android 无用res删除_mary20110116的博客-CSDN博客 屏蔽第三方框架中的依赖包和.so文件_weixin_33852020的博客-CSDN博客 1.指定本项目使用的.so类型 在app.build内指定就行,打包的apk将不包含其他类型的so 使用 ndk{abiFilters:}过滤 //过滤x86的so库 ndk { abiFilters 'armeabi', 'a

云卷云舒i的博客 1682

Android 进阶

1 Java 泛型 2 自定义View和事件分发_分析理解 Okhttp3 - 笔记

a136447572的专栏 251

android性能优化

性能包含:app启动速度,内存管理,app卡顿情况,I/O吞吐情况,存储情况(mmkv优势,sp劣势,sqlite的使用,room的使用),网络优化(优秀三方框架的使用okhttp,个人觉得xutils3也很好用),app耗电情况,UI绘制(一个Activity+多个Fragment的情况),apk瘦身问题。 ...

xiyangyang8110的博客 1176

Android性能优化系列之apk瘦身

Android性能优化系列之布局优化Android性能优化系列之内存优化为什么APK瘦身APK越大,在下载安装过程中,他们耗费的流量会越多,安装等待时间也会越长;对于产品本身,意味着下载转化率会越(因为竞品中,用户有更多机会选择那个体验最好,功能最多,性能最好,包最小的),所以apk瘦身优化也很重要,本篇博客将讲述apk瘦身的相关内容。包体分析在Android Studio工具栏里,打开bu

一个码农的博客 2万+

Android性能优化之应用瘦身APK瘦身

APK瘦身优化的优先级相对来说是比较的,因为优化后也并不能明显的看到有什么好处,这一块主要影响转换率,应用越小, 可能用户下载的意愿就越高,另外在进行预装时,也有大小的要求。

fumeidonga的博客 1931

Android性能优化——APK瘦身大全

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果效漫长且无助。因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!

2401_84912172的博客 2047

Android性能优化APK瘦身详解

APK瘦身

qq_33209777的博客 2208

安卓性能优化APK瘦身

android { buildTypes { release { minifyEnabled true } } }

weixin_44903941的博客 252

Android性能优化APK瘦身详解(瘦身73%),美团架构师深入讲解Android开发

文章主要内容从理论出发,再做实际操作。分为下面几个方面:1.结构分析2.具体实操3.总结。

m0_60721860的博客 1357

六个小技巧帮你瘦身Android APK

Android应用的大小对用户体验和应用性能至关重要。大型APK文件会增加应用的安装时间,启动时间和页面加载时间,降了用户体验。因此,APK瘦身Android开发中的重要任务。在本文中,我们将分享6个小技巧,帮助你优化和瘦身Android应用,提高性能和用户体验。在开始深入研究APK瘦身之前,让我们先了解为什么它如此重要。Android应用通常包含大量资源文件,如图像、音频和布局文件。优化这些资源文件是APK瘦身的第一步。应用的代码也是APK体积的一个关键因素。

Eqiqi的博客 2118
上一篇: Android性能优化-Apk瘦身(2)
下一篇: 做业务的程序猿如何提升技能?
码农驿站
博客等级 码龄10年 5粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值