[发明专利]代码文件处理方法、系统、计算机设备及可读存储介质有效
申请号: | 201711332422.9 | 申请日: | 2017-12-13 |
公开(公告)号: | CN109918076B | 公开(公告)日: | 2022-09-09 |
发明(设计)人: | 阳静;夏志强 | 申请(专利权)人: | 北京嘀嘀无限科技发展有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京睿派知识产权代理事务所(普通合伙) 11597 | 代理人: | 刘锋 |
地址: | 100193 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 文件 处理 方法 系统 计算机 设备 可读 存储 介质 | ||
本发明提出了一种代码文件处理方法、处理系统、计算机设备及计算机可读存储介质,其中代码文件处理方法包括:编译每行代码文件引用,获取无效的代码文件引用和有效的代码文件引用;删除无效的代码文件引用;根据有效的代码文件引用,获取未被引用的代码文件作为第一类代码文件;删除第一类代码文件。能够快速且准确检查出工程项目中已经无用的代码文件,并自动删除,完成移动应用的瘦身。
技术领域
本发明涉及文件处理技术领域,具体而言,涉及一种代码文件处理方法、处理系统、计算机设备及计算机可读存储介质。
背景技术
相关技术中的移动客户端应用,由于屏幕分辨率越来越高、资源文件越来越大,加上不断的产品迭代,工程项目中遗留有大量无用资源文件和无用代码文件,导致移动应用的安装包越来越大,有的甚至超过200MB。一方面在用户下载时消耗用户大量流量,另一方面是在用户终端上长期占用大量存储空间。现有的移动应用瘦身方案主要基于人工检查,人工检查准确率较高但是费时费力。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一个方面在于提出了一种代码文件处理方法。
本发明的另一个方面在于提出了一种代码文件处理系统。
本发明的再一个方面在于提出了一种计算机设备。
本发明的又一个方面在于提出了一种计算机可读存储介质。
有鉴于此,根据本发明的一个方面,提出了一种代码文件处理方法,包括:编译每行代码文件引用,以确定无效的代码文件引用和有效的代码文件引用;删除无效的代码文件引用;根据有效的代码文件引用,获取未被引用的代码文件作为第一类代码文件;删除第一类代码文件。
本发明提供的代码文件处理方法,首先获取无效的代码文件引用,并进行清理,留下有效的代码文件引用。进一步地,根据有效的代码文件引用查找出没有被其他代码文件引用的代码文件,即无引用的代码文件,将这类代码文件进行清除,快速且准确检查出工程项目中已经无用的代码文件,并自动删除,完成移动应用的瘦身。
根据本发明的上述代码文件处理方法,还可以具有以下技术特征:
在上述技术方案中,优选地,编译每行代码文件引用,以确定无效的代码文件引用和有效的代码文件引用的步骤,具体包括:通过xcodebuild命令行工具增量编译每行代码文件引用;判断在通过xcodebuild命令行工具编译代码文件引用时是否能够输出编译结果;若在通过xcodebuild命令行工具编译代码文件引用时能够输出编译结果,则确定代码文件引用无效;若在通过xcodebuild命令行工具编译代码文件引用时不能够输出编译结果,则确定代码文件引用有效。
在该技术方案中,借助NSTask和NSPipe使用xcodebuild工具编译代码文件引用,其中NSTask是用来执行系统命令的一个类库,NSPipe表示一个可以单向通信的对象,xcodebuild为集成开发环境xcode中自带的命令行工具。具体为每次注释掉一行代码文件引用,看该行代码文件引用能否编译通过,若能则可以删除,否则解开注释。其中,在xcodebuild输出中如果编译成功会提示BUILD SUCCEEDED(编译通过),所以可以在输出中匹配BUILD SUCCEEDED文本,如果匹配到则表明编译成功,否则编译失败。能够准确并完整的找到工程中无用的代码文件引用。
需要说明的是,编译方式选择增量编译,即在源程序已经完成前一次编译的基础上再次编译。
在上述任一技术方案中,优选地,还包括:使用二进制方式集成代码文件引用所在文件模块外的其他文件模块;通过xcodebuild命令行工具增量编译每行代码文件引用时,关闭编译优化,以及不输出dsym文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京嘀嘀无限科技发展有限公司,未经北京嘀嘀无限科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711332422.9/2.html,转载请声明来源钻瓜专利网。