IOS 瘦身

对于ios来说,由于工程的体量达到一定级别,瘦身是必须的,大的方向分为资源瘦身和代码精简两大方向,当然还有个重要的方向就是H5化或者RN。资源和代码瘦身主要的有几个东西,图片,无用类,pod无用依赖等,下边讲下我们项目的瘦身过程和一些大神的工具。

无用pod依赖

此功能参考CSDN一片文章,写的比较清楚,有兴趣的可以看一下。

git地址:https://github.com/Jlaix/scanUnusedPod

无用类检查

此检查我自己主要使用AppCode工具检查的,此工具检查会比较详细,包括无用的方法,项目警告等,AppCode是IDE使得扫描出来的无用函数可以快速跳转,而且Appcode强大的重构功能使得删除这些代码更加方便,可以采用AppCode编码+Xcode修改配置的IDE组合,当然Xcode也在不断完善,对于Xcode9一些新的功能还是很强大的。


IOS 瘦身_第1张图片

还有一些工具如https://github.com/netyouli/WHC_Scan等,使用下来个人感觉都没有appcode精确好用。

一些比较好的建议和工具使用:参考此文章

无用图片检查

此项检查其实有很多工具,但是自己对比几个工具使用下来和CSDN上一位大哥的感觉一样https://github.com/examplecode/unused-image比较好用,如果有更好的欢迎各位大神推荐。另外图片加入工程前最好做个压缩,图片压缩推荐使用ImageOptim。

分析可执行文件

使用link map

XCode -> Project -> Build Settings -> 搜map -> 把Write Link Map File选项设为yes


IOS 瘦身_第2张图片

在 编译后的工程文件夹可以找到 命名为 xxxlinkmapxxx.txt的文件,可以command+shift+g 打开finder搜录路径,输入~/Library/Developer/Xcode/DerivedData/,最终路径为~/Library/Developer/Xcode/DerivedData/xxx-fiddbeuzfkaaebebkkcjspwsksvz/Build/Intermediates.noindex/xxx.build/Debug-iphonesimulator/xxx.build/xxx-LinkMap-normal-x86_64.txt


IOS 瘦身_第3张图片

如何分析

本文采用node + js 的方式分析。 js代码地址https://gist.github.com/bang590/8f3e9704f1c2661836cd使用方法,node js路径 xxlinkmapxxx.txt 路径 -hl  分析出来 过大的可以考虑缩减和替换。

此处出自:http://www.jianshu.com/p/28f02cd1f208  http://blog.cnbang.net/tech/2296/

你可能感兴趣的:(IOS 瘦身)