apk的优化方案-1
16lz
2021-01-25
apk的优化方案
1.svg
scalable Vector Graphics,可缩放矢量图svg不会像位图一样因为缩放而让图片质量下降,优点在于节约空间与内存,常用于简单小图标svg是由xml定义的,标准svg根节点为 在Android中通过vector实现对svg的支持,根节点为,获得一张svg需要先进行转换才能在Android当中使用。
使用方法,首先在res目录右键点击,选择new 再点击vector asset 即可选择你需要的
选择你所需要转换的svg即可,同时这里你也可以选择clip art 这里你将会发现新世界,因为点击进去以后你会发现as 为你准备了很多实用的小图标,hahah~
转换完成后即可看到
如图所示的文件,此时在此xml文件中你可以对该图标进行自定义编辑
在这里给你们一个小福利,一张图你这样转非常方便,但是一套图有一百张呢?你也还是这样转吗?在这里有一个jar包交给你们使用
首先这是使用方法
jar包的链接在这里 链接:https://pan.baidu.com/s/1zlZC0tga8ViNmqUWvTcFaw 密码:4fht
注意:这种不支持渐变与透明度的图片,包含这两种的只能自己老老实实的导入图片啦
那么接下来svg更重要的来了
如果UI给了你设计图里面有 hdpi xhdpi……的图,这个时候你直接导进去是不是相当与一样的图要导很多次,那么这种有没有优化方案呢,当然有,首先你需要在build.app中加入如下代码vectorDrawables.generatedDensities('xhdpi')
放在defaultConfig 里面,然后build apk 你会发现在你的项目目录里面原来是.xml的图片现在已经是png格式的 ,这样是不是你只需要导入一套图就可以把其他的图给解决了呢,是不是很简单 。
注意Android5.0以前用如上的方法,那么Android5.0以后呢将使用v7包兼容了vectorDrawables.useSupportLibrary = true
插入这行代码了,然后再布局文件中如下使用即可
当然后面也会介绍其他的优化方案,这只是其中一种
更多相关文章
- 一款常用的 Squid 日志分析工具
- GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
- RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
- Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
- Android(安卓)从相册中选择照片并返回
- Android学习系列之(二)项目目录结构基本介绍
- 用vector drawable加快应用图片加载速度
- Android(安卓)java.io.FileNotFoundException on Android, open
- Android打包APK流程及原理