[发明专利]代码文件处理方法、系统、计算机设备及可读存储介质有效
申请号: | 201711332422.9 | 申请日: | 2017-12-13 |
公开(公告)号: | CN109918076B | 公开(公告)日: | 2022-09-09 |
发明(设计)人: | 阳静;夏志强 | 申请(专利权)人: | 北京嘀嘀无限科技发展有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京睿派知识产权代理事务所(普通合伙) 11597 | 代理人: | 刘锋 |
地址: | 100193 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 文件 处理 方法 系统 计算机 设备 可读 存储 介质 | ||
1.一种代码文件处理方法,其特征在于,包括:
编译每行代码文件引用,以确定无效的代码文件引用和有效的代码文件引用,其中,所述无效的代码文件引用在被注释掉时编译通过,所述有效的代码文件引用在被注释掉时编译失败;
删除所述无效的代码文件引用;
根据所述有效的代码文件引用,获取未被引用的代码文件作为第一类代码文件;
删除所述第一类代码文件;
其中,所述编译每行所述代码文件引用,以确定所述无效的代码文件引用和所述有效的代码文件引用的步骤,具体包括:
通过xcodebuild命令行工具增量编译每行所述代码文件引用;
判断在通过所述xcodebuild命令行工具编译所述代码文件引用时是否能够输出编译结果;
若在通过所述xcodebuild命令行工具编译所述代码文件引用时能够输出所述编译结果,则确定所述代码文件引用无效;
若在通过所述xcodebuild命令行工具编译所述代码文件引用时不能够输出所述编译结果,则确定所述代码文件引用有效。
2.根据权利要求1所述的代码文件处理方法,其特征在于,还包括:
使用二进制方式集成所述代码文件引用所在文件模块外的其他文件模块;
通过所述xcodebuild命令行工具增量编译每行所述代码文件引用时,关闭编译优化,以及不输出dsym文件。
3.根据权利要求1所述的代码文件处理方法,其特征在于,所述根据所述有效的代码文件引用,获取未被引用的代码文件作为所述第一类代码文件的步骤,具体包括:
通过预设命令查找工程目录下存在的预设后缀文件,并将所述预设后缀文件存储至本地类文件集合;
读取所述工程目录下的所有代码文件,根据所述有效的代码文件引用获取所述所有代码文件中当前项目中正在使用的代码文件,并将所述正在使用的代码文件存储至使用类文件集合;
解析预设类文件得到解析后代码文件,并将所述解析后代码文件存储至所述使用类文件集合;
获取所述本地类文件集合中与所述使用类文件集合中的代码文件不重复的代码文件作为所述第一类代码文件。
4.根据权利要求3所述的代码文件处理方法,其特征在于,
所述预设命令为/usr/bin/find命令;
所述预设后缀文件包括以下至少一种或其组合:.h文件、.m文件、.mm文件;
所述预设类文件包括以下至少一种或其组合:使用+(void)load{}方式进行URL跳转的类文件、通过字符串名称初始化的类文件、通过json配置文件初始化的类文件。
5.根据权利要求1至4中任一项所述的代码文件处理方法,其特征在于,还包括:
若由于编译类被注释使通过所述xcodebuild命令行工具增量编译每行所述代码文件引用失败,则将所述编译类记录至白名单,以及在再一次通过所述xcodebuild命令行工具增量编译每行所述代码文件引用时跳过所述编译类。
6.一种代码文件处理系统,其特征在于,包括:
编译单元,用于编译每行代码文件引用,以确定无效的代码文件引用和有效的代码文件引用,其中,所述无效的代码文件引用在被注释掉时编译通过,所述有效的代码文件引用在被注释掉时编译失败;
引用删除单元,用于删除所述无效的代码文件引用;
获取单元,用于根据所述有效的代码文件引用,获取未被引用的代码文件作为第一类代码文件;
文件删除单元,用于删除所述第一类代码文件;
其中,所述编译单元,具体用于通过xcodebuild命令行工具增量编译每行所述代码文件引用;
所述编译单元包括:
判断单元,用于判断在通过所述xcodebuild命令行工具编译所述代码文件引用时是否能够输出编译结果;
确定单元,用于若在通过所述xcodebuild命令行工具编译所述代码文件引用时能够输出所述编译结果,则确定所述代码文件引用无效;以及若在通过所述xcodebuild命令行工具编译所述代码文件引用时不能够输出所述编译结果,则确定所述代码文件引用有效。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京嘀嘀无限科技发展有限公司,未经北京嘀嘀无限科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711332422.9/1.html,转载请声明来源钻瓜专利网。