欢迎访问我的主页:http://catchzeng.com
QQ群:157672725
前言
随着团队人数增多,工程的复杂度提高,工程文件数变得相当多,清理工程变得越来越复杂。于是,闲暇时写了一个清理工程中未使用的类文件工具。由于工程为oc代码,所以工具只适用于oc创建的工程。工具测试时间短、用例少难免有不足的地方,有兴趣的朋友使用前记得备份工程!
工具地址:https://github.com/CatchZeng/CATClearProjectTool, 欢迎star、fork、issue。
效果
1.下图为测试工程结构:包含AppDelegate、ViewController、CATUsedClass、CATUsedClass2、CATUnUsedCLass以及test文件。其中test文件和CATUnUsedCLass未在工程中使用过。

测试工程结构
2.将测试工程的.xcodeproj拖拽到工具中。

拖拽工程到工具
3.点击search按钮,文本框将列出所有未被使用的类文件。

搜索结果
4.点击click按钮,文本框将显示成功清理的类文件列表。

清理后的结果
5.再次打开工程,能看到已成功清理未使用的类文件【注:工程中默认过滤掉AppDelegate,ViewController,main三个类文件的删除】

6.你也可以加入过滤,如下图过滤掉CATUnUsedCLass,则即使它在工程中未使用过也不会将它删除(多个过滤文件,使用逗号隔开)。

加入过滤
7.加过滤后清理的结果

加过滤后清理的结果

清理后的工程结构
工具的原理
读取project文件中的文件组织信息,找到工程中所有的类,然后遍历所有类文件的#import情况,找出未使用的类文件删除,并删除project文件中未使用文件的记录数据。