iOS APP 瘦身实践指南

由于公司项目由原生转为了混合开发,但是APP 的 release包 生成ipa ,有 80M 之大,
实际上,应用原生的部分已经很小了,但是项目中还存在着 很多原生的控制器,viewmodel 等类所以决定对现有app 进行瘦身

1.审视APP哪些东西很导致ipa 包很大


将ipa 包解压,发现,除了打包生成的二进制,和资源文件外,有两个文件最大;
那么主要针对不用的图片文件 和 打包后的资源文件处理,尽量减少不用的代码的引用也能减小ipa 的包的大小;

2.瘦身结果

瘦身前

瘦身后

3.瘦身思路

  • 1.删除不需要的资源文件
  • 2.删除废除的第三方SDK
  • 3.对于低版本的RAM 不再支持

4.瘦身工具

一个命令行工具,重组您的Xcode项目文件夹以匹配您的Xcode工程,把你project 里虚拟目录分隔成真实的文件夹,

删除project 工程中不用的资源文件

ipa 解压后,除了资源文件还有一个比较大的 .car 文件,解压查看xcode 打包了哪些东西,是什么东西导致ipa 爆大;


5.瘦身过程

App 瘦身整理:
8月1号之前的 公司项目 (8月1日)

安装包大小 size
5.4.4 版本ipa包 77.5M
Universal 97.9 MB
iPhone 6s 54.2 MB
iPhone 6s Plus 60.3 MB

5.4.5 版本 瘦身后 (8月11日)

安装包大小 size
5.4.4 版本ipa包 68.9 MB
Universal 80.8 MB
iPhone 6s 40.1 MB
iPhone 6s Plus 48.4 MB

(测试通过)
平均安装包缩小了大约 15M ;


5.4.5 (223 版本-- 删除 ARMV7 ) (8月11日)

223 安装包大小 size
5.4.4 版本ipa包 48.6 MB
Universal 62.2 MB
iPhone 6s 40.1 MB
iPhone 6s Plus 48.4 MB

总结 223 版本因为删除了ARMV7 所以包小了很多,当我恢复支持ARMV6 ,且删除了引用的viewModel 和Controller 但是ipa 包反而变大了,所以,我猜测删除ARMV7 是有效的;


5.4.7 (240 版本-- 删除很多control 和viewmodel ) (8月11日)

224 安装包大小 size
5.4.4 版本ipa包 54.7 MB
Universal 64.2 MB
iPhone 6s 31.7 MB
iPhone 6s Plus 39.8 MB

总结 224(测试中)恢复删除的ARM7,ipa 变大了,但是单独的 各个iphone 的版本实际上还是缩小了一些;所以,ARM的支持越多,会导致生成的ipa 越大,但是相应各个iphone 的安装包实际变化不大


ARM了解

删除过时的 ARM 支持
首先来了解一下Architectures中几个参数的含义

指令集对应的机型:
2018 A12芯片arm64e : iphone XS、 iphone XS Max、 iphoneXR
2017 A11芯片arm64: iPhone 8, iPhone 8 Plus, and iPhone X
2016 A10芯片arm64:iPhone 7 , 7 Plus, iPad (2018)
2015 A9芯片arm64: iPhone 6S , 6S Plus 
2014 A8芯片arm64: iPhone 6 , iPhone 6 Plus
2013 A7芯片arm64: iPhone 5S
armv7s:iPhone5|iPhone5C|iPad4(iPad with Retina Display)
armv7:iPhone4|iPhone4S|iPad|iPad2|iPad3(The New iPad)|iPad mini|iPod Touch 3G|iPod Touch4

模拟器32位处理器测试需要i386架构,
模拟器64位处理器测试需要x86_64架构,
真机32位处理器需要armv7,或者armv7s架构,
真机64位处理器需要arm64架构。


友情链接:
参考了这几个哥们的文章和瘦身记录;
iOS学习之解压Assets.car;
缩小 ipa包 压缩 ipa iOS 如何缩小打包项目ipa大小;
当我们谈论iOS瘦身的时候,我们到底在谈论些什么;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容