美文网首页
iOS-APP性能优化-安装包瘦身

iOS-APP性能优化-安装包瘦身

作者: sun_glory | 来源:发表于2020-04-28 13:38 被阅读0次
    安装包瘦身

    在上一篇启动优化中,有分析过项目中所有的代码、资源都在XX.app包里面,将来Xcode会将这个XX.app包压缩成一个ipa文件,然后上传到AppStore提供给用户下载,如果项目越来越大,那么这个ipa文件就会越来越大。
    为了给安装包(IPA)瘦身,我们就要知道安装包有哪些文件组成:
    安装包(IPA)主要由可执行文件、资源组成。

    安装包瘦身方式:

    • 对于资源(图片、音频、视频等)

      1. 采取无损压缩
      2. 去除没有用到的资源:https://github.com/tinymind/LSUnusedResources
    • 对于可执行文件:

      1. 编译器优化
        Strip Linked ProductMake Strings Read-OnlySymbols Hidden by Default设置为YES(现在的项目已经默认为YES了,一些老项目可能还会为NO

      2.去掉异常支持
      Enable C++ ExceptionsEnable Objective-C Exceptions设置为NOOther C Flags添加-fno-exceptions

      3.利用AppCode(https://www.jetbrains.com/objc/)检测未使用的代码
      菜单栏 -> Code -> Inspect Code

      4.编写LLVM插件检测出重复代码、未被调用的代码(这种方式比较高级也比较难)

      5.生成LinkMap文件,可以查看可执行文件的具体组成,如下图:

    如果项目比较大,分析LinkMap文件就会比较麻烦,我们可以借助第三方工具解析LinkMap文件:https://github.com/huanxsd/LinkMap

    它其实是个Mac项目,我们下载下来,运行项目 -> 选择文件 -> 点击开始,就能显示每个文件占用多大,我们就能根据文件有目的性的进行优化。如下图:

    贴一个安装包瘦身的实践方案:iOS安装包瘦身 - 全部实测

    相关文章

      网友评论

          本文标题:iOS-APP性能优化-安装包瘦身

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