zoukankan      html  css  js  c++  java
  • Apk优化极致

    1. webp

      WebP格式,谷歌(google)开发的一种旨在加快图片加载速度的图片格式。图片压缩体积大约只有JPEG的2/3,并能节省大量的服务器宽带资源和数据空间。Facebook Ebay等知名网站已经开始测试并使用WebP格式。WebP既支持有损压缩也支持无损压缩。

         在Android Studio 中有专门的插件可以做png和jpg转为Webp的

         

    2.svg

    SVG的全称是Scalable Vector Graphics,叫可缩放矢量图形。它和位图(Bitmap)相对,SVG不会像位图一样因为缩放而让图片质量下降。它的优点在于节约空间,使用方便。

    3.tint

    tint在一定程度上也是可以减少apk 的体积,比如,我们一个imageview 做点击效果,按下和抬起是不一样的效果的时候,我们需要写一个seletor,然后放置两张不同的图片,那么tint可以通过一个矢量图,改变不同颜色值来实现这种功能,不需要两张图片

    4. 代码混淆

    在build.gradle中android节点下的xbuildtype中增加miniEnabled true便是开启了代码混淆,同时要配置代码混淆脚本

    5.代码和资源压缩移除 

      shrinkResource true 这个不会删除没有用的资源,只是将检测到的没有用的资源改变结构,比如图片就是变成一个很小的黑色的占位图片,没有.xml,会删除里面的内容,但是文件都还在,

      如果用了反射或者动态获取,他是检测不到的,所以要保持这部分不被处理,要加一个keep.xml文件,保持下来

    6. 资源打包

    默认所有的资源都是支持国际化的,包括我们引入的第三方库都是如此,但是我们并不需要这么多,可能只需要英文和中文,所以我们在ProductFlavor中增加resConfigs('zh-rCN','en')就可以了

    7. 动态资源库配置

    目前市场上有armebi, armebi-v7a, armebi-v8a, mips, mips64, x86等,但是所有的都兼容armebi, 所以只要保留armebi就可以了,能有效的减少apk 的大小

    8.lint 物理 删除无用的资源

    9.资源res的混淆,7z压缩,对齐

  • 相关阅读:
    ADB命令查看应用包名
    Centos7下安装nmon
    如何分析nmon监控数据?
    服务器性能监控工具软件Nmon和ServerAgent对比
    如何实时监测linux服务器性能
    jmeter ftp通过put方式上传压缩文件损坏的解决方法
    jmeter 对接口的响应值进行base64解码
    Fiddler如何开启捕获FTP请求功能
    性能测试之“响应时间”的理解
    jmeter如何断言请求响应成功?
  • 原文地址:https://www.cnblogs.com/wangzehuaw/p/10897715.html
Copyright © 2011-2022 走看看