Android 安装包体积优化

如果项目中有未被使用资源,则 Lint 会在窗口 Inspection Result 中显示,类似结果如下:

低效布局权重:提供优化方案。

上面就是未使用的资源:会使应用程序变大,并降低构建速度。

还有很多就不多介绍了,感兴趣的可以去玩玩。

启用压缩、混淆和优化功能

当你使用 Android Studio 3.4 或 Android Gradle 插件 3.4.0 及更高版本时,R8 是默认编译器,用于将项目的 Java 字节码转换为在 Android 平台上运行的 DEX 格式。不过,当您使用 Android Studio 创建新项目时,缩减、混淆处理和代码优化功能默认处于停用状态

debug{

// 启用代码收缩、模糊处理和优化

minifyEnabled true

// 资源缩减

shrinkResources true

//包括与打包在一起的默认ProGuard规则文件

//R8配置文件。

proguardFiles getDefaultProguardFile(

‘proguard-android-optimize.txt’),

‘proguard-rules.pro’

}

未启用

启用后

文件优化

====

图片优化


降低图片bit

不需要太精致的图片可以将图中32 bit降至16 bit或者8 bit。

使用 VectorDrawable 图片

UI小姐姐能提供最好不能提供,咱们自己自己造。

Android Studio 中点击 File > New > Vector Asset

Clip Art 项为固有的矢量图,我们直接用即可,而Local file(SVG,PSD)选项,则是我们需要转换的了,剩下的提示进行就可以啦。

使用 webp 格式图片

使用webp格式的图片可以在保持清晰度的情况下减小图片的磁盘大小,是一种比较优秀的,Google推荐的图片格式。

选中图片>右键>选择

图片由.png转为.webp

三方库优化


在 App 中会引入各种三方的库,但是在引入之前最好权衡一下是否需要将其代码全部引入,造成不必要的代码或者资源也被打包到 APK 中。

例如Facebook全家桶,你不可能全部用到仅导入部分即可,如登入和分享

dependencies {

// Facebook Core only (Analytics)

implementation ‘com.facebook.android:facebook-core:11.1.0’

// Facebook Login only

implementation ‘com.facebook.android:facebook-login:11.1.0’

// Facebook Share only

implementation ‘com.facebook.android:facebook-share:11.1.0’

// Facebook Messenger only

implementation ‘com.facebook.android:facebook-messenger:11.1.0’

// Facebook App Links only

implementation ‘com.facebook.android:facebook-applinks:11.1.0’

// Facebook Android SDK (everything)

implementation ‘com.facebook.android:facebook-android-sdk:11.1.0’

}

仅需导入

dependencies {

implementation ‘com.facebook.android:facebook-login:11.1.0’

implementation ‘com.facebook.android:facebook-share:11.1.0’

}

例如XRecyclerView一个 RecyclerView 实现了 pullrefresh 、loadingmore 和 header featrues。你可能仅用到 loadingmore,那你就可以将关于loadingmore部分截取出来。而不用导入整个包。

关于 App Bundle

=============

这个功能就跟ios一样了,他们就是将所有资源全部打到项目中,然后App Store,根据安装设备的属性,来选取相应资源打包进行下载。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

最后

这里我特地整理了一份《Android开发核心知识点笔记》,里面就包含了自定义View相关的内容

除了这份笔记,还给大家分享 Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。

分享上面这些资源,希望可以帮助到大家提升进阶,如果你觉得还算有用的话,不妨把它们推荐给你的朋友~

喜欢本文的话,给我点个小赞、评论区留言或者转发支持一下呗~

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

朋友。

[外链图片转存中…(img-da2rS05O-1713753900534)]

分享上面这些资源,希望可以帮助到大家提升进阶,如果你觉得还算有用的话,不妨把它们推荐给你的朋友~

喜欢本文的话,给我点个小赞、评论区留言或者转发支持一下呗~

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值