iOS上架iOS

iOS-App瘦身

2019-12-15  本文已影响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

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

上一篇下一篇

猜你喜欢

热点阅读