Apk瘦身

作者: 佼佼者Mr | 来源:发表于2020-04-11 21:15 被阅读0次

优化方式

图片资源优化

    首先选择VD

        矢量图片只需放置一份

        图片太大绘制时间长,制作复杂成都高

    否则选择We'bP,

        体积更小,4.2.1+支持透明度

    之后选择PNG

        有透明度,渐变,阴影的情况下选择

    剩下的选择JPG

资源压缩

    PNG转换成WebP

    1. Android studio 右击鼠标-cover to webp--单张转换

    2.下载转换工具,进行统一压缩

        下载地址https://developers.google.com/speed/webp/docs/precompiled/

    PNG压缩

        1.可以采用ImageOptim或者Pnfyu对png进行压缩

        2.AAPT会使用内置的图片压缩算法来优化res/drawable目录下的PNG图片,但也可能会导致本来已经优化过的图片体积变大,这里禁用aapt优化PNG图片

    Jpg压缩

        同等质量的图片jpg比png要小

        packJpg压缩工具

  总结  app再5.0以后建议使用WebP,5.0以前如果需要透明效果使用png,

    其他优化

        纯色图片代码实现利用shape标签

        减少资源放置份数

        如果只在xxhdpi放一份图片会有问题吗

        能用代码实现的图片尽量用代码实现 圆形 环形 渐变等都可以用代码实现

    开启代码混淆和去除无用资源

android{

        ...

        buildTypes{

            release{

                shrinkResources true

                minifyEnabled true

                proguardFiles getDefaultProguardFile('proguard-android.txt'),

                                'proguard-rules.pro'

                }

            }

        }

进一步资源混淆,微信开源了AndResGuard

其他优化

冗余代码优化

为什么会有冗余代码

1.CTRL+C CTRL+V

2.对项目不了解

荣誉代码的定义

完全一致的代码或者只修改了空格和评论

结构上和句法上一致的代码,例如只是修改了变量名

插入和删除了部分代码

功能和逻辑上一致的代码,语义上的拷贝

用什么工具检测荣誉代码

1.使用工具,例如PMD

2.PMD下载地址 https://pmd.gethub.io/

怎么检测

下载后输入: ./run.sh cpdgui

pmd-d/user/src-R rulesets/java/quickstart.xml -f text

https://pmd.gethub.io/pmd-6.17.0/pmd_rules_java.html

工具Lint

1.检查未使用资源并删除

2.Android studio -Analyze-Run inspection by Name -unused resource

无用代码优化

Analyze->Run inspection by Name -unused declaration ->Module app ->OK

压缩文件存储

1.导入7Zip,压缩存储预置资源

2.使用时,解压到本地,比如asserts中的资源

语言资源优化

再build配置中,配置resConfigs指定需要的语言类型

Splits根据不同的ABI以及不同的密度分别打包

重复的string,color优化

过滤重复的string

定义唯一的color名

减少enum的使用

每减少一个枚举的文件可以减少1K作用的大小

采用常量来定义

优化引用的库

去除不使用的库

优化过时的库

仅仅提取使用的代码

选用更小的外部库

音频资源压缩

采用音频压缩工具,压缩音频,降低音频采样率,通道数等在不明显影响效果的前提下,压缩音频

So动态下发

So可以采用动态下发的方式,将So放到服务器,只下载该手机对应型号的So文件即可

下载失败怎么办?

Gradle中指定abiFilter

ndk{

abiFilters:"x86","armeabi-v7a"

}

相关文章

  • APK瘦身 减小APP体积

    APK dex瘦身 APK res瘦身 APK减小语言包 APK 重新打包 PNG转JPG tiny处理png w...

  • Drawable 着色的后向兼容方案

    Drawable 着色的后向兼容方案(APK瘦身实践APK瘦身实践)[http://www.cnblogs.com...

  • Android性能优化

    Apk瘦身实用总结 Apk瘦身 Apk的大小对于用户是否选择下载应用起着至关重要的影响下面是对于减小Apk大小的一...

  • Android性能优化:实战讲解包体积优化(上)

    一、瘦身优化及 Apk 分析方案介绍 1、瘦身优势 我们首先来介绍下,为什么我们需要做 APK 的瘦身优化? AP...

  • app性能优化

    Android冷启动时间优化 Android开发——避免内存泄露 APK瘦身实践 APK瘦身记,如何实现高达53%...

  • apk瘦身

    Android性能优化之APK瘦身详解(瘦身73%) - 简书

  • android apk瘦身

    apk瘦身会带来哪些好处,本文就不赘述了,会依照下面的目录来对apk瘦身进行总结 目录 apk都有啥? 从资源下手...

  • Android apk瘦身实践

    写在前面 最近刚做了一波apk瘦身优化,瘦身后apk大小降低了19%左右。打铁要趁热,赶紧记录一下先。 APK A...

  • ipa和apk简易瘦身

    Material Design风格apk 瘦身ipa 瘦身 一、起因 新版本发布后发现安装包apk和ipa各增加了...

  • 【转】APK瘦身实践

    本文转自:Apk瘦身实践作者:杰风居 转载序:Android开发中,apk瘦身还是很有必要,尤其现在的APP动辄十...

网友评论

      本文标题:Apk瘦身

      本文链接:https://www.haomeiwen.com/subject/ibhsmhtx.html