当前位置:首页 >知识 > 正文

谈谈 iOS 包瘦身计划

时间:2025-07-05 23:08:29  分类 : 热点

包瘦身计划

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

谈谈 iOS 包瘦身计划

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

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

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

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

资源资料优化

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

图像资源压缩

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

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

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

无用资源检查

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

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

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

配置用到的ECMarkets外汇开户资源的类别  ,比如 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]

这个软件:

<< 上一篇下一篇 >>

  • 评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

推荐文章

热门文章

Copyright © 2024 Powered by 谈谈 iOS 包瘦身计划, BBMarkets家国热点sitemap 0.1867s , 2920.890625 kb