美文网首页
IPA包瘦身

IPA包瘦身

作者: 暴躁的小豆子 | 来源:发表于2020-11-19 10:52 被阅读0次

一些老项目战线比较长的,往往经历很多人的手,如果没有统一规范会存在各种风格的代码,并且ipa包日益增大,本文就来简单说说ipa包的优化,这里我从三个方面来优化 资源优化、可执行文件优化、编译优化

资源优化

  • 删除无用图片
    工具:LSUnusedResources
    LSUnusedResources.png
    注意点:
    要选中 ignore similar name 防止误删
    [UIImage imageNamed:[NSString stringWithFormat:@"01_0000%d.png",i] 这种情况下01_00004.png没有排除掉,如果没有勾选 就会被干掉
  • 无损压缩图片
    工具 :ImageOptim
    ImageOptim
    3.音视频资源文件、db、plist等文件的删除

可执行文件优化

  • 删除无用类 通过FindClassUnRefs.py脚本
    -删除无用的代码
    -删除无用/重复的三方库

编译优化

  • 根据需求去掉不需要使用的指令集
    1、各指令集机型说明(指令集向下兼容)
    (1)armv7:iPhone4,iPhone4s
    (2)armv7s:iPhone5,iPhone5C
    (3)arm64:iPhone5S(以上)
    (4)arm64e:xs/xs max/xr(添加一些新特性)

2、去掉规则
(1)如果不需要支持5s以下设备,仅用arm64可以达到最小体积
(2)如果需要支持5s以下设备,可去掉armv7s,影响只是可能在iPhone5、iPhone5C不能发挥最优性能
(3)arm64e、arm64和只包含arm64编译出来的大小是一样的。

  • Optimization Level
    Release模式为:Fastest,Smallest[-Os] 。这是Xcode上默认的,但我们要知道,意思是开启不增加代码大小的全部优化,并让可执行文件尽可能小。
  • Dead Code Stripping
    删除静态链接的可执行文件中未引用的代码。Debug 设置为NO Release 设置为YES 可减少可执行文件大小。
  • Generate Debug Symbols
    调试符号是在编译时生成的。当Generate Debug Symbols选项设置为YES时,打包会生成symbols 文件。设置为NO则ipa中不会生成symbol文件,可以减少ipa 大小。xcode 默认选择为YES,不建议关闭该选项,可能会影响到app调试
  • Strip Symbol Information
    1、Deployment Postprocessing
    2、Strip Linked Product
    3、Strip Debug Symbols During Copy
    4、Symbols hidden by default
    设置为YES可以去掉不必要的符号信息,可以减少可执行文件大小。Release 设置为YES Debug 设置为NO。

App thining是苹果官方给出的优化安装包大小的方案。其原理是根据设备的不同来下载安装包中不同的资源,比如iPhone6的手机只需要下载@2x的图片文件,这样可以是下载流量减少。
App Thinning 有三种方式,包括:App Slicing、Bitcode、On-Demand Resources。
1.App Slicing,会在你向 iTunes Connect 上传 App 后,对 App 做切割,创建不同的变体,这样就可以适用到不同的设备。
2.On-Demand Resources,主要是为游戏多关卡场景服务的。它会根据用户的关卡进度下载随后几个关卡的资源,并且已经过关的资源也会被删掉,这样就可以减少初装 App 的包大小。
3.Bitcode ,是针对特定设备进行包大小优化,优化不明显。

链接:
iOS APP安装包瘦身实践
iOS 脚本查看项目中未使用的类
iOS 给安装包瘦身

相关文章

  • ipa和apk简易瘦身

    Material Design风格apk 瘦身ipa 瘦身 一、起因 新版本发布后发现安装包apk和ipa各增加了...

  • IPA包瘦身

    一些老项目战线比较长的,往往经历很多人的手,如果没有统一规范会存在各种风格的代码,并且ipa包日益增大,本文就来简...

  • ipa包瘦身过程

    参考文章1、https://blog.csdn.net/u013236878/article/details/53...

  • 性能优化:iOS APP安装包瘦身

    APP安装包瘦身 安装包(IPA)主要由可执行文件、资源组成 资源优化瘦身 资源(图片、音频、视频等)采取无损压缩...

  • ipa包分析 和 瘦身

    ipa包太大,首先分析ipa 包各个部分的占比。查到的资料有如下 https://forums.xamarin.c...

  • iOS包-(ipa文件)瘦身

    1、下载安装瘦身软件 下载: LSUnusedResources.app.zip或者使用 XCode 编译运行项目...

  • iPa包瘦身处理

    目的: App包大小优化目的,为节省用户下载app流量消耗。 成效: 优化之前App大小50M,优化后App大小3...

  • 安装包(IPA)瘦身

    安装包(IPA)主要由可执行文件、资源组成 资源(图片、音频、视频等) 采取无损压缩 去除没有用到的资源: htt...

  • 项目瘦身计划

    项目改版后,为了以防万一,之前老的项目文件头没有删除,开发完成后,计划对项目进行瘦身。 在瘦身前,记录项目ipa包...

  • 关于 IPA瘦身的探索与思考

    关于 IPA瘦身的探索与思考

网友评论

      本文标题:IPA包瘦身

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