Android 应用瘦身(1)

作者: zidea | 来源:发表于2018-12-15 13:05 被阅读10次

我们是因为美才瘦身的吗?答案当然是,不过也是为了健康。而且美了,也愉悦别人的眼睛。

通常我们 apk 下载的大小要小于安装后的尺寸。下载后应用进行解压,编译和优化最后部署到设备。

为什么我们需要关注 apk 安装前和安装后的尺寸。现代是小而美,快而全的时代。我们越来越缺乏耐性。所以如果我们 apk 尺寸过大,一旦用户在下载等待时间过长,就有可能失去耐性而取消下载。下面图表我们可以看出 apk 因尺寸过大在 20% 。

下图为 apk 尺寸和 apk 尺寸的关系图。现在我们知道了为什么我们需要关注 apk 的大小,在 apk 大小上花一些心思。如果不注意,我们连见到用户的机会都没有了。

在新版的 Android Studio 中可以在 build 菜单中找到 Analyze Apk 来分析 Apk。来看一看我们的 apk 内部究竟有什么。每一个文件或文件夹后面有他在 apk 中百分比。

我们在 apk 中,可以找当上面图中的文件结构,res 文件夹下在一找到一些图形文件。我们注意到了这里两个栏 Raw File Size 和 Download Size 分别为图片原有大小和下载大小,看尺寸还是有些区别的。

我们选择下图中的 .dex 。我们可以简单地将 dex 理解为 zip 文件。在这里我们能看到其中的内容,一些依赖。

我们可以启用 Proguard,使用方式也是比较简单,就是 build.gradle 配置文件中添加如下图的代码。 

在项目的 Manifest 文件中,列出 Activity 、Service 、reciever 和 contentProdiver 这个号称 Android 四大组件。这列出每个组件会依赖一些类,这些类在优化过程中将存活下来,而那些没有依赖的类将会被 remove 处理。

通过 Proguard 的一些列处理,我们甚至可以减少到 33% 的体积。

我们也可以用 CompareWith 来比较两个 apk。我们可以把我们的优化前的和优化后 apk 进行对比。

我们许多工作都是为了兼容,兼容不同 cpu 架构,兼容不同屏幕不同分辨率的尺寸。为了在不同机型上都有同样良好的表现,我们将资源文件按分辨率准备几份,放置在不同文件夹,看似解决了问题。同样也带来了问题,臃肿的 apk。

我们可以通过发布 apk 针对不同设备,不同

相关文章

  • Android 应用瘦身,从 18MB 到 12.5MB

    第163期:Android 应用瘦身,从 18MB 到 12.5MB 头条推荐 Android 应用瘦身,从 18...

  • Android应用瘦身(1)

    瘦身的目的 从目的导向来看,我们是不会无缘无故去做一件事情的,那我们对应用瘦身的目的是为了什么?答案是:提高下载转...

  • Android 应用瘦身(1)

    我们是因为美才瘦身的吗?答案当然是,不过也是为了健康。而且美了,也愉悦别人的眼睛。 通常我们 apk 下载的大小要...

  • Android 优化——应用瘦身

    Android 优化目录 图片资源处理不要有大于 1MB 的图片,若有需要压缩PNG 有透明通道,无损压缩,可以硬...

  • Android应用瘦身实践

    参考文章 APK瘦身记,如何实现高达53%的压缩效果 Android APP终极瘦身指南 优化效果 优化前包大小是...

  • Android应用瘦身(2)

    WebP局限性 在我的上一篇文章提到,让大家谨慎使用WebP格式的图片,并且提及到Android Studio不支...

  • Android Apk包瘦身

    目录 1、Android 编译打包流程2、Apk包瘦身 1、Android 编译打包流程及APK构成 1.1、An...

  • apk瘦身

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

  • 15 性能优化-Apk瘦身-去除R.class

    Android apk瘦身最佳实践(一):去除R.class 1. 前言 记得早期刚开始做 Android 开发的...

  • app性能优化

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

网友评论

    本文标题:Android 应用瘦身(1)

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