System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种插桩覆盖率统计方法、装置、存储介质及计算机设备制造方法及图纸_技高网

一种插桩覆盖率统计方法、装置、存储介质及计算机设备制造方法及图纸

技术编号:41124196 阅读:5 留言:0更新日期:2024-04-30 17:51
本申请实施例公开了一种插桩覆盖率统计方法、装置、存储介质及计算机设备,方法包括:获取源码路径文件集合以及应用安装包的产出路径;接收插桩信息,从源码路径文件集合中筛选出期望插桩的目标源码路径文件;对所述目标源码路径文件进行插桩字段植入,得到植入后的源码文件;进行项目构建,从所述产出路径中获取应用安装包;对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件;判断每一目标源码路径文件对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果。以此,通过反编译出期望插桩的目标源码路径文件所对应的反编译文件,从而实现插桩覆盖率的快速统计,提高插桩覆盖率统计的统计效率。

【技术实现步骤摘要】

本申请涉及信息处理,具体涉及一种插桩覆盖率统计方法、装置、计算机可读存储介质及计算机设备。


技术介绍

1、插桩技术(instrumentation)在安卓(android)应用开发中指的是在应用的代码中植入一些额外的代码段,以监控、收集和分析程序的运行时信息。这些信息通常包括性能指标、用户行为、代码覆盖率等。随着移动互联网的快速发展,插桩技术在android应用中的使用也越来越广泛,对提升应用的质量和用户体验起到了重要作用。

2、随着业务的快速发展,一个android应用项目的复杂程度越来越大,代码也越来越多,风格也多样化,随之的带来则是插桩框架的兼容性导致部分类插桩失败或者缺失的问题,然而这样的问题对于普通开发者来说,很难去统计这些大量类和代码的插桩情况,从而无法确定应用运行的问题是因为缺失插桩导致的,还是应用本身的问题。


技术实现思路

1、本申请实施例提供一种插桩覆盖率统计方法、装置及计算机可读存储介质,可以提高插桩覆盖率统计的统计效率。

2、为解决上述技术问题,本申请实施例提供以下技术方案:

3、一种插桩覆盖率统计方法,包括:

4、获取源码路径文件集合以及应用安装包的产出路径;

5、接收插桩信息,从源码路径文件集合中筛选出期望插桩的目标源码路径文件;

6、对所述目标源码路径文件进行插桩字段植入,得到植入后的源码文件;

7、进行项目构建,从所述产出路径中获取应用安装包;

8、对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件;

9、判断每一目标源码路径文件对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果。

10、一种插桩覆盖率统计装置,包括:

11、第一获取模块,用于获取源码路径文件集合以及应用安装包的产出路径;

12、接收模块,用于接收插桩信息,从源码路径文件集合中筛选出期望插桩的目标源码路径文件;

13、植入模块,用于对所述目标源码路径文件进行插桩字段植入,得到植入后的源码文件;

14、第二获取模块,用于进行项目构建,从所述产出路径中获取应用安装包;

15、反编译模块,用于对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件;

16、判断模块,用于判断每一目标源码路径文件对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果。

17、在一些实施例中,插桩信息包括应用安装包版本信息,所述接收模块,包括:

18、筛选子模块,用于从源码路径文件集合中筛选出符合所述应用安装包版本信息的源码路径文件;

19、第一确定子模块,用于将筛选出的多个源码路径文件确定为目标源码路径文件。

20、在一些实施例中,反编译模块,包括:

21、调用子模块,用于调用反编译工具,通过所述反编译工具对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件。

22、在一些实施例中,判断模块,包括:

23、合并子模块,用于将多个所述反编译文件合并至指定目录下;

24、第二确定子模块,用于依次确定每一目标源码路径文件在所述指定目录下对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果。

25、在一些实施例中,装置,还包括:

26、发送模块,用于将所述插桩覆盖率统计结果发送至指定设备,并触发所述指定设备展示所述插桩覆盖率统计结果。

27、在一些实施例中,装置,还包括:

28、第一确定模块,用于确定应用项目的构建时采用的目标构建工具;

29、第二确定模块,用于根据构建工具与构建文件的对应关系,确定所述目标构建工具对应得到目标构建文件;

30、触发模块,用于将插桩覆盖率统计脚本植入所述目标构建文件中,触发执行所述获取源码路径文件集合以及应用安装包的产出路径的步骤。

31、一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述插桩覆盖率统计方法中的步骤。

32、一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可以在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述提供的插桩覆盖率统计方法中的步骤。

33、一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在存储介质中,计算机设备的处理器从存储介质读取所述计算机指令,处理器执行所述计算机指令,使得所述计算机设备执行上述提供的插桩覆盖率统计方法中的步骤。

34、本申请实施例通过获取源码路径文件集合以及应用安装包的产出路径;接收插桩信息,从源码路径文件集合中筛选出期望插桩的目标源码路径文件;对所述目标源码路径文件进行插桩字段植入,得到植入后的源码文件;进行项目构建,从所述产出路径中获取应用安装包;对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件;判断每一目标源码路径文件对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果。以此,通过反编译出期望插桩的目标源码路径文件所对应的反编译文件,从而实现插桩覆盖率的快速统计,提高插桩覆盖率统计的统计效率。

本文档来自技高网...

【技术保护点】

1.一种插桩覆盖率统计方法,其特征在于,包括:

2.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,所述插桩信息包括应用安装包版本信息,所述从源码路径文件集合中筛选出期望插桩的目标源码路径文件的步骤,包括:

3.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,所述对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件的步骤,包括:

4.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,所述判断每一目标源码路径文件对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果的步骤,包括:

5.根据权利要求1或4任一项所述的插桩覆盖率统计方法,其特征在于,在所述得到插桩覆盖率统计结果的步骤之后,还包括:

6.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,在所述获取源码路径文件集合以及应用安装包的产出路径的步骤之前,还包括:

7.一种插桩覆盖率统计装置,其特征在于,包括:

8.根据权利要求7所述的插桩覆盖率统计装置,其特征在于,插桩信息包括应用安装包版本信息,所述接收模块,包括

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至6任一项所述的插桩覆盖率统计方法中的步骤。

10.一种计算机设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可以在所述处理器上运行的计算机程序,所述处理器执行权利要求1至6任一项所述的插桩覆盖率统计方法中的步骤。

...

【技术特征摘要】

1.一种插桩覆盖率统计方法,其特征在于,包括:

2.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,所述插桩信息包括应用安装包版本信息,所述从源码路径文件集合中筛选出期望插桩的目标源码路径文件的步骤,包括:

3.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,所述对所述应用安装包进行反编译,得到每一目标源码路径文件对应的反编译文件的步骤,包括:

4.根据权利要求1所述的插桩覆盖率统计方法,其特征在于,所述判断每一目标源码路径文件对应的反编译文件是否存在插桩字段,得到插桩覆盖率统计结果的步骤,包括:

5.根据权利要求1或4任一项所述的插桩覆盖率统计方法,其特征在于,在所述得到插桩覆盖率统计结果的步骤之后,还包括:

【专利技术属性】
技术研发人员:夏苗
申请(专利权)人:深圳市雷鸟网络传媒有限公司
类型:发明
国别省市:

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

1