• Android如何缩减APK包大小



    删、缩、挪



    保持良好的编程习惯,不要重复或者不用的代码,谨慎添加libs,移除使用不到的libs。 使用proguard混淆代码,它会对不用的代码做优化,并且混淆后也能够减少安装包的大小。 native code的部分,大多数情况下只需要支持armabi与x86的架构即可。如果非必须,可以考虑拿掉x86的部分。


    使用Lint工具查找没有使用到的资源。去除不使用的图片,String,XML等等。 assets目录下的资源请确保没有用不上的文件。 生成APK的时候,aapt工具本身会对png做优化,但是在此之前还可以使用其他工具如tinypng对图片进行进一步的压缩预处理。 jpeg还是png,根据需要做选择,在某些时候jpeg可以减少图片的体积。可以使用webp图片。

    有选择性的提供hdpi,xhdpi,xxhdpi的图片资源。建议优先提供xhdpi的图片,对于mdpi,ldpi与xxxhdpi根据需要提供有差异的部分即可。 尽可能的重用已有的图片资源。例如对称的图片,只需要提供一张,另外一张图片可以通过代码旋转的方式实现。 能用代码绘制实现的功能,尽量不要使用大量的图片。例如减少使用多张图片组成animate-list的AnimationDrawable,这种方式提供了多张图片很占空间。


    assets目录下也可以挪
    so动态下发有可能下载失败,毕竟是少部分用户,不可能一直下载不下来。另外所有用户都有收益,那这个就值得做

    其他
    andresguard,路径变成了r/d/a,在 AndResGuard 中,我们支持针对 resources.arsc、PNG、JPG 以及 GIF 等文件的强制压缩。
    minifyEnabled true混淆
    shrinkResources true

     
  • 相关阅读:
    js数组扁平化
    react 监听页面滚动
    package.json 里的 dependencies和devDependencies区别
    背景图自适应屏幕居中显示,且不变形
    antd table 点击行触发radio 或 checkbox
    使用antd Table + mobx 处理数组 出现的一系列问题
    定时刷新页面或请求接口
    添加索引,联合唯一索引
    添加 查看 和删除 索引
    phpEXCEL如何设置单元格格式为百分比
  • 原文地址:https://www.cnblogs.com/sixrain/p/5759200.html
Copyright © 2020-2023  润新知