一种大图加载检测方法、装置、电子设备及存储介质与流程
未命名
09-07
阅读:144
评论:0
1.本发明涉及计算机技术领域,具体涉及一种大图加载检测方法、装置、电子设备及存储介质。
背景技术:
2.在金融软件开发的过程中,加载图片是一个很常规的操作,例如银行系统的广告图片加载、推广应用图片加载等等。
3.图片加载同时也是一个“成本”较高的行为,因为加载一张图片可能需要先后历经网络请求、i/o读写、内存占用等多个过程。目前一般是通过coil、glide等开源库来加载图片,完全无需关心其加载过程,而其中可能就隐藏着一个不是很合理的情况:加载的图片属于大图,这样加载展示所需的图片会造成不必要的性能浪费,同时也可能会引发oom,因此进行在对应用性能优化时,减少大图的加载是一个比较重要的优化方向,
4.但是通常情况下,都是通过人工进行代码review检查当前代码中的图片加载问题,虽然能检查出来程序在初始化过程中产生的大图加载问题,但是很难检测出来程序在运行过程中,通过网络,或者用户上传等一些大图加载的问题。
技术实现要素:
5.本发明的目的在于克服上述技术不足,提供一种适用于金融科技或其他相关技术领域的大图加载检测方法、装置、电子设备及存储介质,解决现有技术中无法在程序运行过程中检测处大图加载的技术问题。
6.为达到上述技术目的,本发明采取了以下技术方案:
7.第一方面,本发明提供一种大图加载检测方法,包括如下步骤:
8.获取项目源代码,基于所述项目源代码获取程序的字节码文件;
9.基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;
10.基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。
11.在一些实施例中,所述基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,包括:
12.判断所述字节码文件是否存在图片加载工具;
13.当判定所述字节码文件中存在图片加载工具时,在所述图片加载工具中插入字节码插桩文件后,对所述插入字节码插桩文件的字节码文件进行更新并打包。
14.在一些实施例中,所述预设判断方式具体为:
15.判断图片的加载时间是否超过预设时长,如果是,则判定图片为大图并获取图片信息;
16.当判定图片的加载时间没有超过预设时长时,判断图片的大小是否超过预设大小,如果是,则判定图片为大图并获取图片信息;
17.当判定图片的大小没有超过预设大小时,判断图片的像素是否超过预设像素值,如果是,则判定图片为大图并获取图片信息,如果不是,则判定所述图片不是大图。
18.在一些实施例中,所述当判定所述字节码文件中存在图片加载工具时,在所述图片加载工具中插入字节码插桩文件后,对所述插入字节码插桩文件的字节码文件进行更新并打包,包括:
19.当判定所述字节码文件中存在图片加载工具时,将所述字节码插桩文件通过预设命令引入到程序编译打包过程中;
20.对所述字节码插桩文件进行变形动作,使所述字节码文件根据所述字节码插桩文件的代码编写逻辑进行字节码插桩;
21.当插桩完成后,对所述字节码文件进行更新并打包成独立运行的文件包。
22.在一些实施例中,所述字节码插桩文件通过预设的开源打包工具进行字节码插桩。
23.在一些实施例中,所述预设时长为2秒,所述预设大小为1mb,所述预设像素值为200pd。
24.在一些实施例中,所述日志文件至少能够反映图片的url路径、图片的名称、图片的大小、图片的加载时间、图片的像素大小。
25.第二方面,本发明还提供一种大图加载检测装置,包括:
26.字节码文件获取模块,用于获取项目源代码,基于所述项目源代码获取程序的字节码文件;
27.插桩模块,用于基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;
28.检测模块,用于基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。
29.第三方面,本发明还提供一种电子设备,包括:处理器和存储器;
30.所述存储器上存储有可被所述处理器执行的计算机程序;
31.所述处理器执行所述计算机程序时实现如上所述的大图加载检测方法中的步骤。
32.第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上所述的大图加载检测方法中的步骤。
33.与现有技术相比,本发明提供的大图加载检测方法、装置、电子设备及存储介质,首先获取项目源代码,基于所述项目源代码获取程序的字节码文件;之后基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;最后基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。通过在已经编译好的程序文件中,通过字节码插桩的方式在文件中插入插桩文件,通过该插桩文件进行大图加载的逻辑判断,从而在不修改代码源码的
情况下实现对程序中可能存在的大图加载文件检测,而且能够在程序运行阶段实现程序中可能存在的大图加载性能问题进行监控检查,智能化程度更高,方便后续对相关代码或者业务逻辑的修改,提升程序性能。
附图说明
34.图1是本发明实施例提供的大图加载检测方法的流程图;
35.图2是本发明实施例提供的大图加载检测方法中,步骤s200的流程图;
36.图3是本发明实施例提供的大图加载检测方法中,步骤s220的流程图;
37.图4是本发明实施例提供的大图加载检测装置的功能模块示意图;
38.图5是本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
39.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
40.在金融软件开发的过程中,加载图片是一个很常规的操作,例如银行系统的广告图片加载、推广应用图片加载等等。目前一般是通过coil、glide等开源库来加载图片,完全无需关心其加载过程,而其中可能就隐藏着一个不是很合理的情况:加载的图片属于大图,这样加载展示所需的图片会造成不必要的性能浪费,同时也可能会引发oom,通常情况下,都是通过人工进行代码review检查当前代码中的图片加载问题,虽然能检查出来程序在初始化过程中产生的大图加载问题,但是很难检测出来程序在运行过程中,通过网络,或者用户上传等一些大图加载的问题。
41.请参阅图1,图1本发明实施例提供的一种大图加载检测方法的流程示意图,本发明所涉及的大图加载检测方法可用于金融科技领域的大图加载检测应用中,以达到在程序运行过程中进行大图加载检测的目的。本发明所涉及的大图加载检测方法可由电子设备执行,该电子设备能够进行接收或发送数据等操作,可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式服务器等等。如图1所示,该方法具体包括以下步骤s100至步骤s300。
42.s100、获取项目源代码,基于所述项目源代码获取程序的字节码文件。
43.本实施例中,项目源代码存储在项目管理平台gitlab中,首先通过gitclone命令获取项目源代码,然后从该项目源代码中获取程序的字节码文件,即程序中的class文件,该文件用于全名称为javaclass文件,主要在平台无关性和网络移动性方面使java更适合网络。它在平台无关性方面的任务是:为java程序提供独立于底层主机平台的二进制形式的服务。该文件打破了c或者c++等语言所遵循的传统,使用这些传统语言写的程序通常首先被编译,然后被连接成单独的、专门支持特定硬件平台和操作系统的二进制文件。
44.s200、基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断。
45.本实施例中,通过字节码插桩的方式在class文件中插入大图检测逻辑,字节码插
桩就是在构建的过程中,通过修改已经编译完成的字节码文件,也就是class文件,来实现功能的添加。从技术上来说,字节码插桩是自定义gradle插件+asm+java字节码+切面编程的综合应用。
46.本发明通过在字节码插桩文件中编写大图加载监控逻辑,并插入class文件中后,对class文件进行更新,因此,在后续加载图片时,class文件的图片加载工具可以进行大图加载的判断,进而实现在程序运行的过程中进行大图加载监控。
47.s300、基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。
48.本实施例中,为了实现监控,通过更新后的字节码文件中的图片加载工具实时监测加载的图片,当判断当前图片为大图时,则生成日志文件,该日志文件反映了图片的相关信息,当判断当前图片不是大图时,此时为节省空间,可不生成日志文件,通过日志文件能够检测出程序在运行过程出现的大图加载性能问题,后续可通过修改相关代码或者业务逻辑,提升程序性能。
49.本发明实施例,首先获取项目源代码,基于所述项目源代码获取程序的字节码文件;之后基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;最后基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。通过在已经编译好的程序文件中,通过字节码插桩的方式在文件中插入插桩文件,通过该插桩文件进行大图加载的逻辑判断,从而在不修改代码源码的情况下实现对程序中可能存在的大图加载文件检测,而且能够在程序运行阶段实现程序中可能存在的大图加载性能问题进行监控检查,智能化程度更高,方便后续对相关代码或者业务逻辑的修改,提升程序性能。
50.在一些实施例中,请参阅图2,所述步骤s200具体包括:
51.s210、判断所述字节码文件是否存在图片加载工具;
52.s220、当判定所述字节码文件中存在图片加载工具时,在所述图片加载工具中插入字节码插桩文件后,对所述插入字节码插桩文件的字节码文件进行更新并打包。
53.本实施例中,在项目中添加用来对程序中的class文件基于字节码插桩进行修改的bigimagecheck类文件。该类文件基于transform实现,首先判断字节码文件中是否存在图片加载工具,如果不存在则无需进行插桩,如果存在,则将预先编制好的字节码插桩文件插入字节码文件的图片加载工具中,并在更新打包后,即可通过该图片加载工具实时进行大图的检测。
54.在一些实施例中,所述预设判断方式具体为:
55.判断图片的加载时间是否超过预设时长,如果是,则判定图片为大图并获取图片信息;
56.当判定图片的加载时间没有超过预设时长时,判断图片的大小是否超过预设大小,如果是,则判定图片为大图并获取图片信息;
57.当判定图片的大小没有超过预设大小时,判断图片的像素是否超过预设像素值,如果是,则判定图片为大图并获取图片信息,如果不是,则判定所述图片不是大图。
58.本实施例中,在字节码插桩文件中编写大图加载监控逻辑,判断当前被插桩的程
序class文件中是否存在调用了iamgeload方法,或者android.widget.imageview方法,如果存在获取该方法的要处理的图片相关信息,获取图片的大小,获取图片的加载时间,如果是通过imageview打开的图片的,图片的大小超过预设大小,图片的像素大小不超过预设像素值。图片加载时间不超过预设时长,当超过设定值时,则该图片为大图,需要进行相应的优化,同时记录图片的url路径,图片的名称,图片的大小,加载时间,图片的像素大小,以及该方法所来的类名称,路径等信息,方便后续进行优化。
59.优选的,所述预设时长为2秒,所述预设大小为1mb,所述预设像素值为200pd。
60.当然,上述预设时长、预设大小以及预设像素值只是本发明一较佳的设置值,在其它的实施例中,还可根据实际需求设定为其它数值,本发明实施例对此不做限定。
61.在一些实施例中,请参阅图3,所述步骤s220具体包括:
62.s221、当判定所述字节码文件中存在图片加载工具时,将所述字节码插桩文件通过预设命令引入到程序编译打包过程中;
63.s222、对所述字节码插桩文件进行变形动作,使所述字节码文件根据所述字节码插桩文件的代码编写逻辑进行字节码插桩;
64.s223、当插桩完成后,对所述字节码文件进行更新并打包成独立运行的文件包。
65.可选的,所述字节码插桩文件通过预设的开源打包工具进行字节码插桩。
66.本实施例中,在程序的编译打包工具gradle将编写好的bigimagecheck文件通过命令buildscript:{repositories{maven{urluri(bigimagecheck文件路径')}}引入到程序编译打包过程中,之后在程序的源代码在gradle编译工具编程成class文件后,会执行gradle的tranform动作,对程序已经编译完成的class文件根据bigimagecheck代码编写逻辑进行字节码插装,当对程序的所有class文件通过字节码插桩完成后,再通过gradle打包成可以独立安装运行的apk包。
67.在一些实施例中,所述日志文件至少能够反映图片的url路径、图片的名称、图片的大小、图片的加载时间、图片的像素大小。
68.本实施例中,将打包完成后的apk包安装在测试机器上后,进行相关的业务功能测试,如果出现大图加载的情况时,会在程序的日志文件中找到相关的记录,例如图片的url路径,图片的名称,图片的大小,加载时间,图片的像素大小,以及该方法所在的类名称,路径等信息。
69.通过大图加载相关日志就能检查出程序在运行过程出现的大图加载性能问题,修改相关代码或者业务逻辑,提升程序性能。
70.本发明提供的技术方案,首先获取项目源代码,基于所述项目源代码获取程序的字节码文件;之后基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;最后基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。通过在已经编译好的程序文件中,通过字节码插桩的方式在文件中插入插桩文件,通过该插桩文件进行大图加载的逻辑判断,从而在不修改代码源码的情况下实现对程序中可能存在的大图加载文件检测,而且能够在程序运行阶段实现程序中可能存在的大图加载性能问题进行监控检查,智能化程度更高,方便后续对相关代码或者业务逻辑的修改,提升程序性能。
71.本发明另一实施例提供一种大图加载检测装置,请参阅图4,该大图加载检测装置包括字节码文件获取模块11、插桩模块12以及检测模块13。
72.字节码文件获取模块11用于获取项目源代码,基于所述项目源代码获取程序的字节码文件。
73.插桩模块12用于基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断。
74.检测模块13用于基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。
75.本实施例中,首先获取项目源代码,基于所述项目源代码获取程序的字节码文件;之后基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;最后基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。通过在已经编译好的程序文件中,通过字节码插桩的方式在文件中插入插桩文件,通过该插桩文件进行大图加载的逻辑判断,从而在不修改代码源码的情况下实现对程序中可能存在的大图加载文件检测,而且能够在程序运行阶段实现程序中可能存在的大图加载性能问题进行监控检查,智能化程度更高,方便后续对相关代码或者业务逻辑的修改,提升程序性能。
76.需要说明的是,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述大图加载检测的执行过程,各模块的具体实施方式请参考上述对应的方法实施例,此处不再赘述。
77.在一些实施例中,所述插桩模块12包括判断单元和插入单元。
78.判断单元用于判断所述字节码文件是否存在图片加载工具。
79.插入单元用于当判定所述字节码文件中存在图片加载工具时,在所述图片加载工具中插入字节码插桩文件后,对所述插入字节码插桩文件的字节码文件进行更新并打包。
80.在一些实施例中,所述预设判断方式具体为:
81.判断图片的加载时间是否超过预设时长,如果是,则判定图片为大图并获取图片信息;
82.当判定图片的加载时间没有超过预设时长时,判断图片的大小是否超过预设大小,如果是,则判定图片为大图并获取图片信息;
83.当判定图片的大小没有超过预设大小时,判断图片的像素是否超过预设像素值,如果是,则判定图片为大图并获取图片信息,如果不是,则判定所述图片不是大图。
84.在一些实施例中,所述插入单元具体用于:
85.当判定所述字节码文件中存在图片加载工具时,将所述字节码插桩文件通过预设命令引入到程序编译打包过程中;
86.对所述字节码插桩文件进行变形动作,使所述字节码文件根据所述字节码插桩文件的代码编写逻辑进行字节码插桩;
87.当插桩完成后,对所述字节码文件进行更新并打包成独立运行的文件包。
88.在一些实施例中,所述字节码插桩文件通过预设的开源打包工具进行字节码插
桩。
89.在一些实施例中,所述预设时长为2秒,所述预设大小为1mb,所述预设像素值为200pd。
90.在一些实施例中,所述日志文件至少能够反映图片的url路径、图片的名称、图片的大小、图片的加载时间、图片的像素大小。
91.本发明另一实施例提供一种电子设备,如图5所示,电子设备10包括:
92.一个或多个处理器110以及存储器120,图5中以一个处理器110为例进行介绍,处理器110和存储器120可以通过总线或者其他方式连接,图5中以通过总线连接为例。
93.处理器110用于完成电子设备10的各种控制逻辑,其可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acornriscmachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp和/或任何其它这种配置。
94.存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的大图加载检测方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行电子设备10的各种功能应用以及数据处理,即实现上述方法实施例中的大图加载检测方法。
95.存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作平台、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至电子设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
96.一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,执行上述任意方法实施例中的大图加载检测方法,例如,执行以上描述的图1中的方法步骤s100至步骤s300。
97.本发明另一实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图1中的方法步骤s100至步骤s300。
98.作为示例,计算机可读存储介质能够包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦rom(eeprom)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(ram)。通过说明而非限制,ram可以以诸如同步ram(sram)、动态ram、(dram)、同步dram(sdram)、双数据速率sdram(ddrsdram)、增强型sdram(esdram)、synchlinkdram(sldram)以及直接rambus(兰巴斯)ram(drram)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。
99.综上所述,本发明提供的大图加载检测方法、装置、电子设备及存储介质,首先获取项目源代码,基于所述项目源代码获取程序的字节码文件;之后基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;最后基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。通过在已经编译好的程序文件中,通过字节码插桩的方式在文件中插入插桩文件,通过该插桩文件进行大图加载的逻辑判断,从而在不修改代码源码的情况下实现对程序中可能存在的大图加载文件检测,而且能够在程序运行阶段实现程序中可能存在的大图加载性能问题进行监控检查,智能化程度更高,方便后续对相关代码或者业务逻辑的修改,提升程序性能。
100.以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。
技术特征:
1.一种大图加载检测方法,其特征在于,包括如下步骤:获取项目源代码,基于所述项目源代码获取程序的字节码文件;基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。2.根据权利要求1所述的大图加载检测方法,其特征在于,所述基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,包括:判断所述字节码文件是否存在图片加载工具;当判定所述字节码文件中存在图片加载工具时,在所述图片加载工具中插入字节码插桩文件后,对所述插入字节码插桩文件的字节码文件进行更新并打包。3.根据权利要求2所述的大图加载检测方法,其特征在于,所述预设判断方式具体为:判断图片的加载时间是否超过预设时长,如果是,则判定图片为大图并获取图片信息;当判定图片的加载时间没有超过预设时长时,判断图片的大小是否超过预设大小,如果是,则判定图片为大图并获取图片信息;当判定图片的大小没有超过预设大小时,判断图片的像素是否超过预设像素值,如果是,则判定图片为大图并获取图片信息,如果不是,则判定所述图片不是大图。4.根据权利要求3所述的大图加载检测方法,其特征在于,所述当判定所述字节码文件中存在图片加载工具时,在所述图片加载工具中插入字节码插桩文件后,对所述插入字节码插桩文件的字节码文件进行更新并打包,包括:当判定所述字节码文件中存在图片加载工具时,将所述字节码插桩文件通过预设命令引入到程序编译打包过程中;对所述字节码插桩文件进行变形动作,使所述字节码文件根据所述字节码插桩文件的代码编写逻辑进行字节码插桩;当插桩完成后,对所述字节码文件进行更新并打包成独立运行的文件包。5.根据权利要求4所述的大图加载检测方法,其特征在于,所述字节码插桩文件通过预设的开源打包工具进行字节码插桩。6.根据权利要求3所述的大图加载检测方法,其特征在于,所述预设时长为2秒,所述预设大小为1mb,所述预设像素值为200pd。7.根据权利要求1所述的大图加载检测方法,其特征在于,所述日志文件至少能够反映图片的url路径、图片的名称、图片的大小、图片的加载时间、图片的像素大小。8.一种大图加载装置,其特征在于,包括:字节码文件获取模块,用于获取项目源代码,基于所述项目源代码获取程序的字节码文件;插桩模块,用于基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;
检测模块,用于基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。9.一种电子设备,其特征在于,包括:处理器和存储器;所述存储器上存储有可被所述处理器执行的计算机程序;所述处理器执行所述计算机程序时实现如权利要求1-7任意一项所述的大图加载检测方法中的步骤。10.一种计算机可读存储介质,其特征在于,包括:处理器和存储器;所述存储器上存储有可被所述处理器执行的计算机程序;所述处理器执行所述计算机程序时实现如权利要求1-7任意一项所述的大图加载检测方法中的步骤。
技术总结
本发明公开一种适用于金融科技或其它相关技术领域的大图加载检测方法、装置、电子设备及存储介质,方法包括:获取项目源代码,基于所述项目源代码获取程序的字节码文件;基于所述字节码文件的图片加载工具,在所述图片记载工具中插入字节码插桩文件,并对所述字节码文件进行更新,其中,所述字节码插桩文件用于按照预设判断方式进行大图加载判断;基于所述更新后的字节码文件,对当前图片进行加载,以判断出当前图片是否为大图后,基于所述判断结果获取日志文件。本发明解决了现有技术中无法在程序运行过程中检测处大图加载的技术问题。程序运行过程中检测处大图加载的技术问题。程序运行过程中检测处大图加载的技术问题。
技术研发人员:吴艳兵
受保护的技术使用者:平安银行股份有限公司
技术研发日:2023.06.05
技术公布日:2023/9/5
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
