iOS-App瘦身

作者: 翀鹰精灵 | 来源:发表于2019-12-15 18:53 被阅读0次

    一般来说,我们开发完一个项目,是要进行编译打包,要上架到appstore供用户下载的。如果IPA包过大,我们上传appstore,以及用户从appstore下载所需的时间都较长,这样用户体验就不好了。
    一个IPA安装包主要有可执行文件(也就是我们创建的类文件)、资源文件(图片资源,音视频资源等)组成。

    IPA瘦身可通过一下四种方法来实现:
    方法一:去除没有用到的资源:https://github.com/tinymind/LSUnusedResources
    01.png
    方法二:利用AppCode检测未使用的类 http://www.jetbrains.com/objc/

    (这个软件也可以做iOS项目开发,不过是收费的,可以免费试用30天,目前我还暂未找到破解版,希望小伙伴们留意破解版地址,Thanks♪(・ω・)ノ)

    1.打开我们要检测的项目,等待进度条检测完毕。

    02.png

    2.打开菜单栏 Code -> Inspect Code

    03.PNG

    这个工具可以检测出来项目中有哪些类暂时没有用到。

    方法三:利用fui 清除无用代码 (https://github.com/dblock/fui)

    (因为appcode是收费的,如果你特别介意的不想下载的话,建议用这个终端的命令行试下。)
    安装fui命令如下:

    sudo gem install fui -n /usr/local/bin
    

    安装完成后cd到工程目录下,执行 fui find 命令,可以找出所有的没有用到的class文件,如下图所示:

    image.png
    方法四:利用LinkMap,可以查看类文件大小。

    这里还可以设置Link Map存放的位置,默认的位置为:

    $(TARGET_TEMP_DIR)/$(PRODUCT_NAME)-LinkMap-$(CURRENT_VARIANT)-$(CURRENT_ARCH).txt
    

    我们可根据自己的需要自行设置该文件的位置,这里为便于查看,我设置为桌面路径。

    /Users/allison/Desktop/$(PRODUCT_NAME)-LinkMap-$(CURRENT_VARIANT)-$(CURRENT_ARCH).txt
    

    路径修改完成后,command+B我们编译一下,桌面上会多一个CountyEdit-LinkMap-normal-x86_64的文件。

    04.PNG

    打开这个文本文件,我们可以看到非常详细的信息。但是这个文件比较多,不太好分析,我们可以通过借助第三方工具解析LinkMap.(https://github.com/huanxsd/LinkMap
    下载完成后,运行该项目并选择路径,界面如下:

    05.png
    选择刚刚编译的CountyEdit-LinkMap-normal-x86_64文件,点击开始,执行分析,可以详细看到每个类占的字节,如下图所示: 06.png

    还可以指定某个具体的类进行重新。

    06-1.png

    也可以根据工程中类的前缀指定只检索项目中的类,过滤掉三方的类。

    06-2.PNG

    这样我们可以针对某个类以及某个文件进行有针对性的优化。

    相关文章

      网友评论

        本文标题:iOS-App瘦身

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