忙碌的项目开发告以段落,现在开始优化,弄的我好久没写博客了:joy:。现在主要从包的大小开始优化。之后会陆续从代码结构上进行优化。
本文主要阐述如何减少包的大小
资源文件的优化
首先,找到自己打包后的ipa,然后右键,打开方式选择归档实用工具,就会解压出来一个文件夹,在Payload文件夹中找到当前ipa的app文件(基本就是和这个ipa名字一样的文件,app后缀系统默认隐藏),右键显示包内容,进入到文件夹内,按照大小进行排序,你会发现所有的资源,首先对图片进行优化,图片主要的大小应该维持到200k以内,需要采用无损压缩。图片压缩推荐使用 ImageOptim
代码部分优化
通过appcode 打开对应的工程文件 选择 Code - > inspect Code 分析代码,去掉无用的引用及代码。(appcode真的很强大,连拼写错误都能分析出来,但是就是长的像安卓看起来很丑)
分析可执行文件
- 使用link map
XCode开启编译选项Write Link Map File
XCode -> Project -> Build Settings -> 搜map -> 把Write Link Map File选项设为yes
在 编译后的工程文件夹可以找到 命名为 xxxlinkmapxxx.txt的文件(查找方式为,Winodw - Project - derived data - build - Intermediates -xxx.build - 对应debug或者Release文件下)分析 该txt文件,可以得到项目编译后各个模块生成的.o文件在可执行文件中的组成。 - 如何分析
本文采用node + js 的方式分析。 js代码地址 https://gist.github.com/bang590/8f3e9704f1c2661836cd 使用方法,node js路径 xxlinkmapxxx.txt 路径 -hl 分析出来 过大的可以考虑缩减和替换。
原文 http://www.linit.space/xia/