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文件比较大,公 阅读详情

相关推荐

【理论&实战篇】大模型RAG技术详解(一)-基础篇

RAG的初衷是为了增强大模型的事实性、时效性,减少幻觉,引入专业知识优化生成回复,是一种结合了信息检索技术与语言生成模型的人工智能技术。通过,并将其作为提示(Prompt)输入给大模型(LLM),来。

qq_41375680的博客 374

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

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

qczg_wxg的博客 2383

(一)利用Python实现数据集读取,Python基本文件操作介绍

机器学习是计算机对大量数据的分析过程,在机器学习的实际项目中,通常都需要准备数据集,数据集通常包含的数据数量是庞大的。例如,在处理计算机视觉领域的项目时,每一张图片都是一个单独的文件,为了提高模型训练的效果,图片数量通常会比较多,因此需要合理且高效的操作将所有的图片数据读取。本篇旨在介绍如何用Python对海量文件进行遍历,也是机器学习实践的第一步。.........

ZZR2631574030的博客 6357

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 -------- --

大山 2691

2024最新超详细无痛安装PyTorch,包括下载地址、环境配置与各种避坑指南

PyTorch更新很快,2024最新下载安装经验贴,包括anaconda+CUDA+cuDNN+PyTorch四部分的下载和安装。文章详细介绍了下载地址、环境配置、虚拟环境建立的问题,还温馨提示了各种闭坑指南。有需要的友友快过来康康!

qq_43596278的博客 11万+

UWB学习——day4

总的来说,BPM-BPSK调制方案是一种利用脉冲位置和相位来编码信息的高效数字调制技术,特别适用于UWB通信系统,以实现高速数据传输和频谱效率。这种方式将时间和相位综合使用,从而提高了数据传输的容量。总之,超外差结构是一种接收器设计,通过将不同频率的信号转换到一个共同的中间频率来提高信号选择性和抗干扰性。超外差结构是一种用于接收器的电子电路设计,它的目标是从无线信号中提取有用的信息,比如音频、数据或图像。该芯片的接收机是超外差结构,所谓超外差结构一种基于频率转换的接收器架构,旨在提高信号选择性和抗干扰性。

许帅的博客 2557

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的博客 2205

手把手教你配置SAP PP供应区域(Supply Area):实现线边仓精准发料与物料流优化

本文详细解析了SAP PP供应区域(Supply Area)的配置方法,帮助企业实现线边仓精准发料与物料流优化。通过三级优先级逻辑和四步配置法,系统可自动识别最优组件来源位置,显著提升生产订单处理效率和库存准确率。文章还提供了典型问题解决方案和性能优化技巧,适用于离散制造和重复制造场景。

weixin_29275257的博客 434

深入探索Android应用瘦身优化

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

江湖人陆仁甲 1000

ARFoundation系列讲解 - 24 锚点

一、添加平面检测和平面可视化 请参考 ARFounnation快速入门-08平面检测 案例 二、添加射线检测 1.在AR Session Origin 组件上添加ARRaycastManager 脚本

a451319296的博客 4881

uniapp [全端兼容] - 最新详细实现拍摄视频录像并可播放预览视频,调起本机摄像头开启录像录制完毕后保存到本机临时存放,可对拍摄的视频进行压缩处理减少文件大小不损失画质,详解录制视频并读取播放!

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,录视频,拍视频,拍摄录制视频后上传服务器,调起摄像头录视频并可预览,录视频上传,录像,uniapp录制视频并上传,录制视频并保存到本地设备,如何本地保存并播放预览,提供给用户观看MP4视频录像并上传到后端服务器完整功能源码,视频压缩,mp4文件,删除视频,录像后怎么预览,临时视频文件怎么减少压缩大小,视频压缩及上传,自己录视频并生成可播放的文件,录视频并能打开查看,视频压缩后上传,本机相册,录完怎么预

🏆 前端领域优质创作者 1万+

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

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

云卷云舒i的博客 1690

《UDS协议从入门到精通》系列——到底什么是DTC?

到底什么是DTC?看这里,深度图解DTC格式,详述DTC状态位、快照信息和扩展信息!!

车载系统攻城狮 1万+

Android 进阶

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

a136447572的专栏 254

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

android性能优化

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

xiyangyang8110的博客 1178

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Android性能优化系列之apk瘦身

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

一个码农的博客 2万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

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

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

fumeidonga的博客 1940

Android性能优化之APK瘦身详解

APK瘦身

qq_33209777的博客 2214

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

我们都知道apk是由:. asserts. lib. res. dex. META-INF这几个部分构成的。通常来说我们可以AndroidStudio自带的工具进行APK的资源分析进行我们的瘦身工作,关于工具的使用请参考视频 我们的瘦身也是通过分析APK的组成部分后进行操作,注意,重点来了,下面说说我对瘦身方案的理解,拿出你的小本本记录起来吧~

2401_84009929的博客 958

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

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

m0_60721860的博客 1364

安卓性能优化之APK瘦身

android { buildTypes { release { minifyEnabled true } } }

weixin_44903941的博客 257

六个小技巧帮你瘦身Android APK

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

Eqiqi的博客 2129

android有趣 文章合集- 收藏集 - 掘金

Android性能优化(六)之卡顿那些事 - 掘金1、 Introduction 对普通用户而言,类如内存占用高、耗流量、耗电量等性能问题可能不会轻易发现,但是卡顿问题用户一定会立马直观的感受到。本文就带你一览卡顿的发生、检测、及优化。 2、 The Final Reason Why It Block ? 在... Material De...

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

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值