谈谈 iOS 包瘦身计划

热点BB Markets蓝莓市场

包瘦身计划

相信大家都会遇到随着项目需求的变动,工程中的代码和资源资料会伴随着上升 ,很多时候 ,我们都不会轻易的去删除某些代码 ,或者资源资料 。但是bbm蓝莓外汇平台怎么样这样带来的代价就是包的体积越来越大。

谈谈 iOS 包瘦身计划

当包的体积超过 200MB 时  ,那么就引起了数据部门的注意,数据部门解读新读者的下降可能跟软件商店包大小超限,读者流量无法获取的难题所致 。那么此时再去做包大小优化意味着我们就会流失很多新读者 ,并且也会拉高我们的新读者成本 。所以包大小优化不能在难题发生后再去做,应该及时去做,当下就该做 ,bbm蓝莓交易平台我们也应该把 200MB 看成“红线”。

接下来我们看看包大小优化有哪些计划  :

首先 ,就是资源资料优化 ,这种计划在瘦包上最容易看到成效,如果你的包大小急需要瘦身  ,不妨先试试这个。资源资料优化你可以从图像资源压缩 、无用资源检查 、资源资料提交中入手,或者利用官方供给的App 。

其次,是代码资料优化, 代码资料优化 投入时间可能要比资源资料优化的时间长很多 ,而且成效没有那么明显。但是代码资料优化可以检查很多无用代码 ,以及删除很多不必要资料,清理项目架构,使项目可连续性保养  。IC外汇官网

资源资料优化

相对比而言 ,资源优化的时间是最快的,成果是最好的 ,我们只需要做好平时的资源压缩应对,定期清理无用资源,做好资源资料合理分配,那么包体积大小就不会太大。

图像资源压缩

图像压缩我们可以选择的软件其实有很多,核心就是要注意检查压缩的图像资源会不会在呈现上有难题。软件精选:[1] 、图压[2]   。

图像资源压缩也有很多公司利用webp格式图像 ,这种格式对比png  、jpg要小很多 ,但客户端性能对解码webp图像会有一定的作用 。在一些老的机型上 ,表现不是很好 。所以需要做一些取舍。这里有webp和png格式转换的软件 [3]

其实我觉得这两种计划可以共存 ,团队内部设定一个资源资料的最大值,比如超过 100KB 就选择利用 webp格式的图像,小于 100KB 就利用压缩软件 。这样就可以极大的下降资源资料的大小 ,并且下降包的体积。

无用资源检查

无用资源检查可以通过软件 [4]。

删除无用图像的流程 ,可以概括为下面几步流程 。

通过 find 命令获取 App 安装包中的所有资源资料 ,比如 find /Users/// -name。

配置用到的XM外汇资源的类别 ,比如 jpg、gif 、png、webp 。

利用正则匹配在源码中找出利用到的资源名,比如 = @"@"(.+?)"" 。

利用 find 命令找到的所有资源资料 ,再去掉代码中利用到的资源资料,剩下的就是无用资源了 。

对于按照规则配置的资源名,我们需要在匹配利用资源的正则陈述式里添加相应的规则 ,比如 @“%d” 。

证实无用资源后 ,就可以对这些无用资源落实删除流程了。这个删除流程 ,你可以利用 平台类供给的作用来完成。

需要注意的是:在利用的流程中,你需要检查有些资源资料后缀是否有拼接上的 ,如“”,“” 或者 “bg_1”  ,“bg_2” 就按照第5步去添加有关正则陈述式来检查这种资源资料。

资源资料提交

如果涉及到的资源资料还是有很多的时候,那么我们可以思考合理的将某些资源资料提交至服务器,有服务器下发至移动端。这种计划通常需要多个端来统一制定计划,从而达到最大化的利用 。

App

苹果公司推出 App 是为了处理读者获取 App 耗费过高流量的难题 ,并且还可以节省读者 iOS 终端的存储空间。

App 会专门针对不同的终端来选择只适用于当前终端的素材以供获取 。比如, 8 只会获取 2x 分辨率的图像资源 , 8plus 则只会获取 3x 分辨率的图像资源。

App 有三种方法 ,包括:App  、、On- 。

那么,如何在你项目里利用 App 呢?其实 ,这里的大部分工作都是由 Xcode 和 App Store 来帮你完成的,你只需要通过 Xcode 添加 目录,然后将图像添加进来即可。

代码资料优化

代码资料优化其实也可以看成是对可落实资料 Mach-O 的优化 ,其大小是由代码量来决定的 。所以对 Mach-O 瘦身 其实就是查找并下降无用的代码。

无用代码检查 利用 解读

无用代码一般也可以利用简单的软件来检查  ,如  ,当然如果代码量过大 ,可能这个会解读不过来。据说百万行代码可能会吃不消。

用 做解读的方法很简单 ,直接在 里选择 Code ->Code 就可以进行静态解读 。静态解读完以后 ,我们可以在 code 里看到所有的无用代码 。

虽然可以检查出很多无用代码 ,但这些并不精确,所以还需要人工二次证实才能够保养删除掉  。

解读 Mach-O 资料

还有一种就是解读 Mach-O资料,利用 这个软件[5]来查看Mach-O 资料里的数据 ,然后依据 Mach-O 资料的 、 和 来查看利用过的类和子类 。

这种查看方法也不是完美的 ,原因在于, -C 是门动态语言 ,方法调用可以写成在运行时动态调用,这样就无法整理全所有调用的方法和类 。所以,我们通过这种方法找出的无用方法和类就只能作为参考,还需要二次证实 。

下降第三方SDK

如果在项目中利用很多第三方库 ,你还需要检查是否导入了相同的作用的库,避免导入过多的库而造成资源过大。

有时候有些第三方库大小占比很高的时候 ,你也需要去思考是否要替换掉它。

参考资料

[1]

:

[2]

图压:

[3]

:

[4]

:

[5]

这个软件:

转载请注明:https://heishan.pcartrip.com/news/4e999986.html

游客
发表我的评论换个身份
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
Copyright © 2024 Powered by 谈谈 iOS 包瘦身计划, BBMarkets瞭望台sitemap 0.1376s , 2920.8984375 kb