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

Android 打包aar并删除或移动指定文件 前言 最近在给一个客户做SDK开发,客户交付的aar要求比较多,比如去掉R.txt文件了,把class.jar改名为我们公司前缀名并移动到libs下,网上查了好多方法都不好用,终于还是找到一个可行的方法,在这里记录一下打包过程。 注:该打包方法用的是gradle中task的copy和zip。 首先我们定义一个task并依赖于’assemble’,将自动打包出来的aar解压到指定文件夹下,在文件夹中直接对文件进行删除和移动操作。 task renameExtractAar(dependsOn: 'assemb 阅读详情

今天我们接上篇Android性能优化-Apk瘦身(1),聊一聊res资源文件的优化。

1、res资源文件优化

随着我们项目功能越来越多,越来越负责,迭代也越来越多,项目中使用的资源文件也越来越多,也越来越复杂。

a、删除无用的资源文件

图片

我们在Android studio中点击Refactor->Remove Unused Resources,

此时出现

图片

这种方式我们是工具觉得这些资源无用的,我们需要有自己的辩证,那些资源能删除,那些资源不能删除,不能删除的需要把还原。

b、当然我们也可以先查看那些资源是无效的。

图片

我们选择Analyze->Run Inspection by Name

图片

在对话框中输入 ununed resoures

图片

此时会输出一个文档,我们可以通过文档去删除对应的文件的。

图片

2、压缩图片文件

a、设计给开发的图片,往往会很大的,我们可以对他进行,目前我们采用比较多的是在https://tinypng.com/
网站中压缩,当然也可以自动化压缩,github上有对用的项目。

b、目前我们切图一般上传到蓝湖上的,最新版的蓝湖提供了压缩功能,我们也可以使用他。

3、资源共享

对于相同资源,一定要复用,例如同样的是返回按钮,不要上传N个返回按钮文件,对于这种文件我们要定期清理,往往在项目开发过程中,这种按钮是五花八门,并且同样的icon上传了N个,严重的增加apk大小。

4、移除未使用的备用资源

我们的一些SDK,往往会把所有地区、所有语言的资源都打包进来的,这种方式的对于SDK来说的是对的,但是我们应用只在中国地区使用,并且只有懂得汉语的人使用,因此对于英文我们就不需要做适配了,此时我们可以合理利用resConfigs功能了,通过它来移除我们不必要的资源文件了。

图片

5、资源压缩

这个是微信开发的一个工具库[(https://github.com/shwenzhang/AndResGuard)

具体说明可以参考[安装包立减1M–微信Android资源混淆打包工具],里面有详细的介绍。

总结

apk大小与我们的获客成本是呈现正相关的关系的,重视Apk大小在我们日常开发过程是基本工作,不能每发一次版,我们的App大小就增加了1M或者更大,有效的控制应用大小要求我们在项目过程中不断去完善自己业务逻辑,改善我们的业务功能,例如通过代码绘制去替代一些简单的图片,同时要求设计人员在设计时要注重资源复用等。

用Qt5.15.2Android App写界面:一份给C++/Qt开发者的移动端入门配置手册 本文详细介绍了如何使用Qt5.15.2Android App开发界面,特别针对C++/Qt开发者提供移动端入门配置手册。从开发环境搭建、项目配置到调试部署,全面解析Qt-Android开发的关键步骤和常见问题解决方案,帮助开发者快速实现从桌面到移动端的技能迁移。 阅读详情

相关推荐

Android性能优化APK瘦身详解(瘦身73%)

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

aserbao的博客 3万+

APK瘦身之删除多余资源文件

1. 前言移动端项目迭代很频繁,一般半年左右,app包就变得很大,并且包含很多废弃的图片,layout文件,本篇文章主要讲如何快速定位出废弃资源,并快速删除。这次瘦身使用的工作是Android Studio Lint工具 , 用瘦身APK21.5M, 瘦身后为18.4M. 瘦身结果为APK大小减少了3.1M(14%)2.准备工作1.Android Studio Lint只能定位出废弃的资源

曹银飞的专栏 5110

[Android 之美] 那些你不知道的APK 瘦身,让你的APK更小

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

fuchenxuan blog 2万+

Android修改aar并重新打包

注:(下面工具,点击名称可进入下载链接,如果链接失效,请百度搜索下载)

s_nshine的博客 3248

如何用 AndResGuard 实现 Android 资源极致压缩?微信团队的 APK 瘦身神器全攻略

AndResGuard 是微信团队开发的一款专业 Android 资源混淆与压缩工具,能够通过重命名资源文件、优化资源引用和压缩 APK 体积,帮助开发者显著减小应用安装包大小。无论是对新手还是有经验的开发者,这都是提升应用性能和用户体验的必备工具。 ## 🚀 为什么选择 AndResGuard? 在 Android 开发中,APK 体积过大不仅会影响用户下载意愿,还会占用更多设备存储空间。

gitblog_00153的博客 627

Android-:想进大厂你必须会的APK瘦身(项目体积优化实战笔记)

APK包结构主要包含assets目录:用于存放需要打包到APK中的静态文件和res的不同点在于,assets目录支持任意深度的子目录,用户可以根据自己的需求任意部署文件夹架构,而且res目录下的文件会在.R文件中生成对应的资源ID,assets不会自动生成对应的ID(在不动业务逻辑,或者代码逻辑的情况下,针对此项很难优化)lib目录:存放应用程序依赖的native库文件, .so的形式存在res目录:resresource的缩写,这个目录存放资源文件。

2401_87029210的博客 606

2024年最全Android性能优化APK瘦身详解(瘦身73%)(2)Android阿里等大厂面试题汇总

看到这篇文章的人不知道有多少是和我一样的Android程序员。35岁,这是我们这个行业普遍的失业高发阶段,这种情况下如果还不提升自己的技能,进阶发展,我想,很可能就是本行业的职业生涯的终点了。我们要有危机意识,切莫等到一切都成定局时才开始追悔莫及。只要有规划的,有系统地学习,进阶提升自己并不难,给自己多充一点电,你才能走的更远。千里之行始于足下。这是上小学时,那种一元钱一个的日记本上每一页下面都印刷有的一句话,当时只觉得这句话很短,后来渐渐长大才慢慢明白这句话的真正的含义。

2401_84545046的博客 973

Android APK打包全流程解析与优化实践

APK打包是Android开发中的核心技术环节,涉及编译、资源处理和签名等关键步骤。Gradle构建系统作为现代Android开发的标准工具链,通过Android Gradle Plugin(AGP)实现自动化构建流程。理解aapt2资源编译、D8/R8代码优化、以及V2签名等底层原理,能有效解决构建失败、渠道包定制等实际问题。在工程实践中,结合productFlavors实现多渠道打包,配合ProGuard代码混淆和资源压缩,可显著提升APK安全性和发布效率。本文以Gradle构建系统为核心,详解从基础配

weixin_30417487的博客 385

Android高级面试_6_性能优化

Android 高级面试-6:性能优化1、内存优化1.1 OOM问题:OOM 的几种常见情形?数据太大:比如加载图片太大,原始的图Android 高级面试-7:网络相关的三方库和网络协议等1、网络框架问题:HttpUrlConnection, HttpClie

夜游神 1304

Ruff 如何配置 src 与 known-third-party 来判定导入是 first-party 还是 third-party

在 Ruff 里启用 isort 导入排序(`I001`)后,Ruff 必须先把每个导入归类为 standard-library、first-party 或 third-party,才能把它们排进正确的分组。归类错误的直接后果是:本地模块和依赖包的导入被排到错误的区块,`I001` 报出的排序结果不符合预期。这篇文章讲清楚 Ruff 是怎么做这个判定的,以及当判定结果不对时,如何用 `src` 和

gitblog_01035的博客 804

9成Android开发者必须收藏的80个开源库,安卓开发面试宝典

你需要知道的 Android 拍照适配方案 https://www.jianshu.com/p/f269bcda335f 你所不知道的Android Studio调试技巧 https://www.jianshu.com/p/011eb88f4e0d 一份系统、全面的安卓进阶学习指南 https://github.com/iwannabetop/Awesome-Android-Learning-Guide 性能优化 Trinea - 性能优化系列总篇 http://www.trinea.cn/a

m0_64314318的博客 2264

记录一下面试考题二(Ap性能优化,Activity、Window和View,TLS1.1,TLS1.2

1,APP性能优化 APK瘦身 将图片转换为 webp 格式 WebP是谷歌提供的一种支持有损压缩和无损压缩的图片文件格式,而且可以提供比JPEG或PNG更好的压缩。在Android 4.0(API level 14)中支持有损的WebP图像,在Android 4.3(API level 18)和更高版本中支持无损和透明的WebP图像。 除去多语言 android{ ... defaultConfig{ ... //只保留英语 resC

十一月Siy 573

98%Android开发者已收藏的“80,android开发强化实战pdf

Trinea - 性能优化系列总篇 http://www.trinea.cn/android/performance/ 高建武 - 性能优化篇 http://androidperformance.com/2015/04/11/AndroidMemory-Usage-Of-MAT.html Android 性能优化篇 https://www.jianshu.com/p/388c693c1b58 胡凯 - Android 性能优化典范 http://hukai.me/android-performance-pa

m0_64319000的博客 250

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
上一篇: Android性能优化-Apk瘦身(1)
下一篇: Android性能优化-Apk瘦身(3)
码农驿站
博客等级 码龄10年 5粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值