apk瘦身(包大小优化)】的更多相关文章

本文转自::Android开发中文站 » 关于APK瘦身值得分享的一些经验 从APK的文件结构说起 APK在安装和更新之前都需要经过网络将其下载到手机,如果APK越大消耗的流量就会越多,特别是对于使用移动网络的用户来讲,消耗流量越多就代表需要花更多的钱去购买流量.同时一些第三方应用商城也会对上传的APK大小有限制,所以为了能够让产品能够更受商城和用户欢迎,APK瘦身是第一步,更小的APK标示着更多地用户愿意去下载和体验. 为了能够减小APK的大小,首先需要知道APK由哪些部分构成,然后针对每个部…
最近太忙好久没有写随笔,放假才有空写写随笔. 最近在项目中一直在做包大小优化 随着业务需求的增加,包大小是忍不住的往上涨 为了提高应用市场下载转化率,一直在优化包大小 首先 分析你的apk中占比的主要成分,以及可以减少的部分 一般主要有下面几部分构成你包的大小 1. 资源(主要是图片资源,布局,assets等) 2. so大小 3. 三方库 4. 二方库 5. 业务功能 主要从上面的几部分来进行优化 1.通过压缩图片.重点出一套图片删除其他的图片.简单的图形通过shap代替png 2. 大的背景…
Android性能优化系列之布局优化 Android性能优化系列之内存优化 为什么APK要瘦身.APK越大,在下载安装过程中.他们耗费的流量会越多,安装等待时间也会越长:对于产品本身,意味着下载转化率会越低(由于竞品中.用户有很多其它机会选择那个体验最好.功能最多,性能最好,包最小的),所以apk的瘦身优化也非常重要.本篇博客将讲述apk瘦身的相关内容. 包体分析 在Android Studio工具栏里,打开build–>Analyze APK, 选择要分析的APK包 watermark/2/t…
作者:非戈@阿里移动安全 1.我是怎么思考这件事情的 APK是Android系统安装包的文件格式,关于这个话题其实是一个老生常谈的题目,不论是公司内部,还是外部网络,前人前辈已经总结出很多方法和规律.不过随着移动端技术近两年的飞速发展,一些新的思维方式和优化方法也逐渐涌现和成熟起来.笔者在实践过程中踩过一些坑,收获了一些经验,在这里做个思考和总结,所以随笔给大家,希望对大家从事相关工作的时候有所帮助和参考,同时也是抛砖引玉,希望大家共同探讨这个开放性的话题. 关于为什么APK要瘦身,这个不多说,…
首发地址:http://www.jayfeng.com/2015/12/29/APK%E7%98%A6%E8%BA%AB%E5%AE%9E%E8%B7%B5/ 因为推广的需要,公司需要把APK的大小再"减小"一下,4M以内! 当达到4M以内之后,公司建议说,能否再压压?2M如何? 瘦身前 因为平时就考虑到大小的限制,所以很多工作已经做过了,如下列举现在的状态: 7.3M(Debug版本)和6.5M(Release版本) 开启minifyEnabled 开启shrinkResources…
导语 JOOX Music是腾讯海外布局的一个音乐产品,2014年发布以来已经成为5个国家和地区排名第一的音乐App.东南亚是JOOX Music的主要发行地区,由于JOOX Music所面对的市场存在很多的低端机型,并且这些市场的网络环境相对来说是比较差的,为了提升下载转化率,对JOOX Music进行APK瘦身是必不可免的. JOOX Music版本大小变化 JOOX Music(后面简称JOOX)现在已经在进行V3.8版本的开发了,不过,在这之前JOOX经历了从V2.1版本的18M暴涨到V…
作者:非戈@阿里移动安全,很多其它技术干货.请訪问阿里聚安全博客 1.我是怎么思考这件事情的 APK是Android系统安装包的文件格式.关于这个话题事实上是一个老生常谈的题目.不论是公司内部.还是外部网络,前人前辈已经总结出非常多方法和规律. 只是随着移动端技术近两年的飞速发展,一些新的思维方式和优化方法也逐渐涌现和成熟起来. 笔者在实践过程中踩过一些坑,收获了一些经验.在这里做个思考和总结,所以随笔给大家,希望对大家从事相关工作的时候有所帮助和參考,同一时候也是抛砖引玉.希望大家共同探讨这个…
Android XML shape 标签使用详解   一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景.但是,也肯定也有人在能使用 Drawable 的地方选择使用一张 png 图(或者是一张 .9 图)作为 View 的背景,因为后者把问题交给 UI 设计人员去了,省事.当然,使用图片这种在项目中也很常见,如果不考虑 apk 大小,内存占用问题的话,是没有任何问题的.如果要给 apk 瘦身,减少内存…
APK瘦身 主要从一下三方面来瘦身: 1. Java 源代码 1) ,这方面主要是通过最简洁的代码实现最直接的功能,还有就是提出上线前不必要的java代码,可以使用UCDector进行分析,从而对代码进行清理. 2) ,使用混淆器Proguard: 混淆器是在编译时对你的代码进行混淆.优化.压缩的强有力工具.它能够减少Apk大小的主要特性是tree-shaking,它会遍历你所有的代码路径,检测出那些没用的代码片段,所有这些多余的代码片段,都会从最终的APK文件中被剔除.混淆器同时也会对你的文件…
Android XML shape 标签使用详解   一个android开发者肯定懂得使用 xml 定义一个 Drawable,比如定义一个 rect 或者 circle 作为一个 View 的背景.但是,也肯定也有人在能使用 Drawable 的地方选择使用一张 png 图(或者是一张 .9 图)作为 View 的背景,因为后者把问题交给 UI 设计人员去了,省事.当然,使用图片这种在项目中也很常见,如果不考虑 apk 大小,内存占用问题的话,是没有任何问题的.如果要给 apk 瘦身,减少内存…
之前打包的时候直接就用eclipse或者android studio直接生成签名文件,并没有关心大小问题,近期有人问我有没有对APK进行瘦身.对这方面内容一致没有关注过,今天试用了各种方式把项目签名apk降低了1/4大小.这样对用户节省了流量. 1.APK文件分析 APK是Android的安装包. APK文件事实上是zip格式,可是后缀被改动为apk,我们能够直接解压文件夹例如以下: 分析一下各个内容的作用 查看文件/文件夹大小主要针对assets.classes.dex.lib.res内容进行…
前言 APK瘦身即是对APK大小进行压缩策略,减小APK安装包大小,更小的安装包更有助于吸引用户安装.前一段时间我司某一App进行APK的瘦身,最终也达到了减小10M的目标,现做一个简单的总结记录. 如何着手这个问题? 需要对一个App进行瘦身,首先最重要的就是对App大小有一个大致的了解,最直观看到App的大小就是通过Android Studio自带的Analyzer进行APK的分析.使用方法: 1.将一个apk拖动到Android Studio的编辑器窗口 2.在Project窗口中,双击b…
APK作为Android系统安装包的文件格式,一直备受广大用户的关注,APK越是臃肿肥大,在下载安装过程中,它们耗费的流量会越多,安装等待时间也会越长:对于产品本身,意味着下载转化率会越低(因为竞品中,用户有更多机会选择那个体验最好,功能最多,性能最好,包最小的):对于研发来说,是一种优化改进技术的机会.今天老司机将带领大家一起探讨下APK脂肪含量最高的图片资源瘦身套路.  套路一:查找并清除未使用图片资源 通常使用AndroidStudio中自带的Lint工具来帮助我们查找未使用的图片资源,在…
******** ******** 第一部分: 瘦身内容介绍 ******** ******** 项目新版本的迭代接近尾声, 因为历史累积问题, 导致有很多无效的资源让已经臃肿的APK变得更肿, 因此公司决定做一次Android APK的资源瘦身. 这次瘦身使用的是Lint审查工具,  用Android Studio的Generate Signed APK打包, 瘦身前APK为17.3M, 瘦身后为15.7M.  瘦身结果为APK大小减少了1.6M(9.x%) 1. 完全相同的一张图片, 在项目…
App瘦身 资源瘦身 使用tinypng压缩PNG图片.视频可以通过 Final cut等软件进行分辨率压缩.音频则降低码率即可. 非必须资源文件可以放到自己服务器上 启动图使用 LaunchScreen.storyboard,启动图在一个项目资源中占比其实蛮大的,但是使用 LaunchScreen.storyboard 只需要设置一张ImageView即可. IconFont的使用很方便,项目中图标太多或者随时需要转换图标颜色的话,建议使用 放弃使用 Realm Realm,据说是目前是性能最…
先描述一下结论: android:extractNativeLibs = true时,gradle打包时会对工程中的so库进行压缩,最终生成apk包的体积会减小. 但用户在手机端进行apk安装时,系统会对压缩后的so库进行解压,从而造成用户安装apk的时间变长. 关于android:extractNativeLibs默认值设定方面,若开发人员未对android:extractNativeLibs进行特殊配置: minSdkVersion < 23 或 Android Gradle plugin…
引言:在过去几年中,APK 文件的大小曾急剧增长态势.一般来说,其原因如下:Android开发者获取了更多的依赖库,添加了更多的密度,Apps 增加了更多的功能.但实际上我们应该让APKs 尽可能的小,更小的APK 意味着用户可以更快地下载和安装应用,并使它占用更小的内存. 本文选自<Gradle for Android 中文版>,将研究如何设置Gradle 构建配置文件中的几个属性,以缩小APK 文件. ProGuard ProGuard 是一个Java 工具,其不仅可以缩减APK 文件大小…
原文地址: https://mp.weixin.qq.com/s/XS0tuLgTfyp4rW4h69wyQQ 一, 我们在多人开发项目 或者 遗留项目中开发时,会有些自己没用到的资源文件,但是自己也没有把握删除,怕早还曾一些不可预估的问题. 解决: Android studio 中 Refactor -> Remove Unused Resources 选项就可以删除未用到的资源. 二,只添加需要的依赖 比如 我们添加依赖只用到了一个很小的部分,却依赖了整个库,这是没有必要的. 在 AS 的…
随着业务复杂度的逐渐增加,代码.资源也在不断的增加,此时你的APP大小也在增加.从用户层面来说,面对动辄几十兆的APP来说在非WIFI情况下还是会犹豫要不要下载,不下载你就可能因此失去了一个用户.从公司层面来讲,流量就是钱,减少APP的大小就显得尤为重要.从开发者层面上来讲,你掌握了这个手艺也会略显逼格满满. 废话不多说了,开始正题. 01 APK结构的那些事 知己知彼,方能百战不殆.了解应用程序APK的结构对于我们来说很有帮助.APK文件由一个ZIP存档组成,其中包含组成应用程序的所有文件.这…
众所周知,APP包体的大小,会影响推广的难度,用户不太喜欢下载太大的APP,同类型同等功能的APP中往往是包体小的更受用户的青睐,所以降低包体是一项非常必要的事情,也是最近公司的APP需要降低包体,所以总结下自己知道的降低包体的方法. 一. 压缩图片 基本每个APP都需要用到相当多的图片,而这些图片在包体中了占据了不少的空间,特别是有些图片大小到达上百k的,加几张就吃不消,所以要对图片进行一定程度的压缩,这里推荐一个网站 --- TinyPng,TinyPNG 是一个图片压缩网站,在上面压过的图…
webp格式是谷歌推出的一种有损压缩格式,这种图片格式相比png或者jpg格式的图片损失的质量几乎可以忽略不计,但是压缩后图片的体积却比png或者jpg要小很多.亲测一个100kb的png图片经过webp转换之后可以压缩到50kb左右,而且质量没有明显的损失.目前谷歌已经将这种压缩格式集成到其官方开发工具AndroidStudio中. 具体的使用方法是: 1 选中项目资源文件中需要进行压缩转换的图片,右击选择convert to webp 弹出设置初始化压缩比例的对话框 2 点击OK,弹出压缩预…
当迩想把最小类库发上来,迩需要把Stripping Level设置为Use micro mscorlib 这里是MICROLIB所能使用的包的类库列表:http://docs.unity3d.com/410/Documentation/ScriptReference/MonoCompatibility.html 但如果迩不想手动去对着这个列表,迩可以从U3D编译器查看相应提示信息,迩便可以通过提示而找出是哪些代码出错了. 1.最先做的应该是检测DLL库,可以空建一个项目,把需要检查的包打进去,然…
1.在gradle使用minifyEnabled进行Proguard混淆的配置,可大大减小APP大小 通过Build.gradle进行配置 2.删除无用的Resource文件. 这个和上面的肯定不一样的.我这边主要还是指xml.首先,我们需要点击Analyze——>Run Inspection by Name... 继续输入:unused resource 直接点ok,然后等待: 看来公司项目还能少个300k~.你们对比着你们的项目一个个的删就行了. 先写那么多,以后我文件在继续添加.…
参考地址: http://blog.csdn.net/jy692405180/article/details/52409369 http://www.tuicool.com/articles/BraI3qV https://github.com/saitjr/STTinyPNG-Python/issues/3 tinypng官网 Android 的图片压缩其实压缩比很小.tinypng 大概可以压缩20%左右,我们工程的所有图片,之前是860k,压缩之后620k,少了200k. 使用: 1.安装…
如何给你的Android 安装文件(APK)瘦身 本文翻译自:Putting Your APKs on Diet           原作者:Cyril Mottier Android的apk文件越来越大了这已经是一个不争的事实.在Android 还是最初版本的时候,一个app的apk文件大小也还只有2 MB左右,到了现在,一个app的apk文件大小已经升级到10MB到20MB这个范围了.apk文件大小的爆炸式增长主要是因为用户对app质量的期待越来越高以及开发者的开发经验增长,具体体现在以下几…
1. 前言 如果你对App优化比较敏感,那么Apk安装包的大小就一定不会忽视.关于瘦身的原因,大概有以下几个方面: 对于用户来说,在功能差别不大的前提下,更小的Apk大小意味更少的流量消耗,也意味着更多的用户下载: 对于产品来说,大于竞品的Apk意味着较低的下载基数,不利于验证产品策略: 对于开发人员来说,App瘦身则是一次技术优化.技术提升的机会: 2. Apk的组成 2.1 Apk典型组成   一个典型的Apk组成 下表为Apk目录及文件说明: 文件/目录 说明 assets/ 存放一些静态…
Android的apk文件越来越大了这已经是一个不争的事实.在Android 还是最初版本的时候,一个app的apk文件大小也还只有2 MB左右,到了现在,一个app的apk文件大小已经升级到10MB到20MB这个范围了.apk文件大小的爆炸式增长主要是因为用户对app质量的期待 越来越高以及开发者的开发经验增长,具体体现在以下几个方面: Android设备 dpi 的多样化 ([l|m|tv|h|x|xx|xxx]dpi) Android平台的进化,开发工具的改进以及开源类库生态系统的丰富 用…
本文源地址:怎样给你的Android 安装文件(APK)瘦身 Android的apk文件越来越大了这已经是一个不争的事实. 在Android 还是最初版本号的时候,一个app的apk文件大小也还仅仅有2 MB左右,到了如今.一个app的apk文件大小已经升级到10MB到20MB这个范围了.apk文件大小的爆炸式增长主要是由于用户对app质量的期待越来越高以及开发人员的开发经验增长,详细体如今下面几个方面: Android设备 dpi 的多样化 ([l|m|tv|h|x|xx|xxx]dpi) A…
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680 本篇文章将继续从APK瘦身来介绍APK大小优化:文章主要内容从理论出发,再做实际操作.分为下面几个方面:1. 结构分析, 2.具体实操 3. 总结 1. 结构分析 首先上传一张瘦身前通过Analyze app分析出来的图片(打开方式:Android Studio下 ——> Build——> Analyze app):   ​   APK包结构如下:lib/:包…
http://devyang.me/blog/2014/11/11/li-yong-android-gradleshou-shen-apk/ apk瘦身一般有两条线, 去除无用的代码,例如引用一个比较大的lib,只使用了其中很少的功能.其他无用的代码可以想办法去掉 去除无用的资源文件,可能是第三方lib中的,也有可能是开发中引入了无用的资源 去除无用代码 当然是Proguard了! gradle plug 0.14.0, runProguard 更名为minifyEnabled 去除无用资源 A…