快速定位安卓应用代码文件中的指定内容的方法和装置制造方法及图纸

技术编号:19098355 阅读:68 留言:0更新日期:2018-10-03 02:35
本发明专利技术公开了一种快速定位安卓应用代码文件中的指定内容的方法和装置,其中所述方法包括:获取待处理文件;调用所述待处理文件的解析器解析文件内容,得到所述文件内容的抽象语法树;对所述抽象语法树中的各节点进行分类,将类型相同的节点保存到对应的同一个节点集合中,得到类型不同的多个节点集合;确定待定位的指定内容的多个属性,根据该多个属性从所述多个节点集合中查找与所述指定内容对应的节点。该技术方案通过对节点的分类大大降低了定位指定内容所需的时间,提升了代码检索效率。

【技术实现步骤摘要】
快速定位安卓应用代码文件中的指定内容的方法和装置
本专利技术涉及计算机
,特别涉及一种快速定位安卓应用代码文件中的指定内容的方法和装置。
技术介绍
开发人员编写的代码文件往往还需要进行检查,经常需要定位到代码中的指定内容处。现有技术中往往通过代码的静态扫描等方式对代码进行遍历,这种方法速度慢,效率低,而且随着代码量的增大,遍历时间往往成指数型增长,非常不利于代码的检查,影响项目进度。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的快速定位安卓应用代码文件中的指定内容的方法和装置。依据本专利技术的一个方面,提供了一种快速定位安卓应用代码文件中的指定内容的方法,包括:获取待处理文件;调用所述待处理文件的解析器解析文件内容,得到所述文件内容的抽象语法树;对所述抽象语法树中的各节点进行分类,将类型相同的节点保存到对应的同一个节点集合中,得到类型不同的多个节点集合;确定待定位的指定内容的多个属性,根据该多个属性从所述多个节点集合中查找与所述指定内容对应的节点。可选地,所述获取待处理文件包括:获取所述待处理文件的路径信息;根据所述待处理文件的路本文档来自技高网...

【技术保护点】
1.一种快速定位安卓应用代码文件中的指定内容的方法,其中,该方法包括:获取待处理文件;调用所述待处理文件的解析器解析文件内容,得到所述文件内容的抽象语法树;对所述抽象语法树中的各节点进行分类,将类型相同的节点保存到对应的同一个节点集合中,得到类型不同的多个节点集合;确定待定位的指定内容的多个属性,根据该多个属性从所述多个节点集合中查找与所述指定内容对应的节点。

【技术特征摘要】
1.一种快速定位安卓应用代码文件中的指定内容的方法,其中,该方法包括:获取待处理文件;调用所述待处理文件的解析器解析文件内容,得到所述文件内容的抽象语法树;对所述抽象语法树中的各节点进行分类,将类型相同的节点保存到对应的同一个节点集合中,得到类型不同的多个节点集合;确定待定位的指定内容的多个属性,根据该多个属性从所述多个节点集合中查找与所述指定内容对应的节点。2.如权利要求1所述的方法,其中,所述获取待处理文件包括:获取所述待处理文件的路径信息;根据所述待处理文件的路径信息,以多线程方式读取该路径下的所有文件。3.如权利要求1所述的方法,其中,所述确定待定位的指定内容的多个属性包括:确定所述指定内容的分类属性;以及确定所述指定内容的一个或多个其他属性。4.如权利要求3所述的方法,其中,所述根据该多个属性从所述多个节点集合中查找与所述指定内容对应的节点包括:先根据所述指定内容的分类属性,确定与该分类属性对应的一个节点集合;从所述其他属性中选择一个属性,从所确定的节点集合中查找出与该属性匹配的节点;判断所述一个或多个其他属性中是否存在未被选择的属性,如果存在则从查找的节点中进一步选出与该属性匹配的节点,直到所述的其他属性均被选择过一次。5.如权利要求1所述的方法,其中,所述将类型相同的节点放入对应的同一个节点集合中,得到类型不同的多个节点集合进一步包括:将一个节点保存到对应的节点集合时,...

【专利技术属性】
技术研发人员:袁伟刘俊
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1