CN110162966B - 数据处理方法、装置、电子设备及存储介质 - Google Patents

数据处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN110162966B
CN110162966B CN201910290212.0A CN201910290212A CN110162966B CN 110162966 B CN110162966 B CN 110162966B CN 201910290212 A CN201910290212 A CN 201910290212A CN 110162966 B CN110162966 B CN 110162966B
Authority
CN
China
Prior art keywords
operation instructions
system environment
preset
application program
graphic operation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910290212.0A
Other languages
English (en)
Other versions
CN110162966A (zh
Inventor
张一磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN201910290212.0A priority Critical patent/CN110162966B/zh
Publication of CN110162966A publication Critical patent/CN110162966A/zh
Application granted granted Critical
Publication of CN110162966B publication Critical patent/CN110162966B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本公开是关于一种数据处理方法、装置、电子设备及存储介质,该数据处理方法包括:当检测到应用程序的连续崩溃次数达到预设次数时,拦截应用程序再一次启动后被触发的每个图形操作指令;记录拦截到的多个图形操作指令的触发先后顺序;获取与图形操作相关的预设系统环境参数;将预设系统环境参数、多个图形操作指令以及触发先后顺序导入至应用程序的开发工具中;利用应用程序的开发工具,在预设系统环境参数下,按照触发先后顺序依次执行多个图形操作指令,以显示多个图形操作指令对应的目标图形的绘制过程。本公开对崩溃后的应用的图形绘制过程进行回放,大幅降低了确认应用崩溃原因的难度。

Description

数据处理方法、装置、电子设备及存储介质
技术领域
本公开涉及计算机软件技术领域,尤其涉及一种数据处理方法、装置、电子设备及存储介质。
背景技术
具有图形绘制功能的应用程序开发完成发布后,因为各种原因,容易存在应用程序崩溃的问题。
针对发布的应用程序崩溃后,相关技术中主要通过调取应用程序的日志数据,查看调用堆栈,来用于确认崩溃原因。但是应用程序的发布版和测试版一般不同,为了减少发布版对终端设备的内存占用,发布版中很多符号信息都会丢掉,例如函数名。那么通过人工查看调用堆栈的方式,确认应用程序崩溃的原因的难度较大。
显然,相关技术中通过提供日志数据中的调用堆栈来供开发人员识别应用程序的崩溃原因的方式,存在着定位崩溃原因难度较大的问题。
公开内容
为克服相关技术中通过提供日志数据中的调用堆栈来供开发人员识别应用程序的崩溃原因的方式,所存在的定位崩溃原因难度较大的问题,本公开提供一种数据处理方法、装置、电子设备及存储介质,以降低识别应用程序的崩溃原因的难度。
根据本公开实施例的第一方面,提供一种数据处理方法,包括:
当检测到应用程序的连续崩溃次数达到预设次数时,拦截所述应用程序再一次启动后被触发的每个图形操作指令;
记录拦截到的多个图形操作指令的触发先后顺序;
获取与图形操作相关的预设系统环境参数;
将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中;
利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
在一种可能的实施方式中,所述将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中之前,所述方法还包括:
将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器;
从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序。
在一种可能的实施方式中,所述将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器,包括:
将所述预设系统环境参数和拦截的所述多个图形操作指令,按照预设数据结构存储在目标文件中,其中,所述多个图形操作指令按照所述触发先后顺序依次记录在所述目标文件中;
将所述目标文件发送至预设服务器;
所述从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序,包括:
从所述预设服务器获取与所述应用程序匹配的所述目标文件;
所述将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中,包括:
将所述目标文件导入至所述应用程序的开发工具中;
所述利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程,包括:
利用所述开发工具,按照所述预设数据结构依次读取所述目标文件中的预设系统环境参数以及多个图形操作指令,其中,在读取所述多个图形操作指令时,按照所述触发先后顺序依次读取所述多个图形操作指令;
利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
在一种可能的实施方式中,所述利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程,包括:
根据所述预设系统环境参数模拟出所述应用程序的系统环境;
利用所述开发工具,在所述系统环境中按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
根据本公开实施例的第二方面,提供一种数据处理装置,包括:
拦截模块,用于当检测到应用程序的连续崩溃次数达到预设次数时,拦截所述应用程序再一次启动后被触发的每个图形操作指令;
记录模块,用于记录拦截到的多个图形操作指令的触发先后顺序;
第一获取模块,用于获取与图形操作相关的预设系统环境参数;
导入模块,用于将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中;
回放模块,用于利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
在一种可能的实施方式中,所述装置还包括:
发送模块,用于将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器;
第二获取模块,用于从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序。
在一种可能的实施方式中,所述发送模块包括:
存储子模块,用于将所述预设系统环境参数和拦截的所述多个图形操作指令,按照预设数据结构存储在目标文件中,其中,所述多个图形操作指令按照所述触发先后顺序依次记录在所述目标文件中;
发送子模块,用于将所述目标文件发送至预设服务器;
所述第二获取模块包括:
获取子模块,用于从所述预设服务器获取与所述应用程序匹配的所述目标文件;
所述导入模块包括:
导入子模块,用于将所述目标文件导入至所述应用程序的开发工具中;
所述回放模块包括:
读取子模块,用于利用所述开发工具,按照所述预设数据结构依次读取所述目标文件中的预设系统环境参数以及多个图形操作指令,其中,在读取所述多个图形操作指令时,按照所述触发先后顺序依次读取所述多个图形操作指令;
回放子模块,用于利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
在一种可能的实施方式中,所述回放模块包括:
模拟子模块,用于根据所述预设系统环境参数模拟出所述应用程序的系统环境;
所述回放模块,还用于利用所述开发工具,在所述系统环境中按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行以实现上述任意一项所述的数据处理方法所执行的操作。
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行一种以实现如上述任意一项所述的数据处理方法所执行的操作。
根据本公开实施例的第五方面,提供一种应用程序,所述应用程序由电子设备的处理器执行时,使得电子设备能够执行一种以实现如上述任意一项所述的数据处理方法所执行的操作。
本公开的实施例提供的技术方案可以包括以下有益效果:
这样,本公开实施例通过在具有图形绘制功能的应用程序连续崩溃次数达到预设次数后,拦截其再一次启动后触发的每个图形操作指令,以及记录被拦截的多个图形操作指令的触发先后顺序,以及获取与图形操作相关的预设系统环境参数,并将采集的上述三种数据导入到应用程序的开发工具中。其中,用于崩溃原因分析的数据均是发布版应用程序的数据,能够便于开发人员较为准确的分析崩溃原因、以及定位崩溃位置;且图形操作指令是具有图形绘制功能的应用程序崩溃的主要原因,那么通过获取被触发的图形操作指令,则缩小了确认崩溃原因的数据范围,提升对崩溃原因的确认准确度;另外,采集的数据还包括与图形操作相关的预设系统环境参数,从而可以确认崩溃原因是否与系统环境相关,大幅降低了确认应用崩溃原因的难度。
此外,本公开的该应用程序的开发工具,按照所述触发先后顺序依次执行每个图形操作指令,从而达到对崩溃后的应用的图形绘制过程的回放目的,开发人员通过查看图形绘制的回放过程并结合预设系统环境参数,可以较为准确的分析出应用崩溃原因;另外,回放过程是在预设系统环境参数下,从而能够模拟出应用程序的系统环境,能够较为准确的还原出应用程序的图形绘制过程,从而准确的识别该图形绘制过程中哪些图形操作指令的触发造成了应用程序的崩溃(例如花屏、闪屏、黑屏等崩溃情况),大幅降低了确认应用崩溃原因的难度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种数据处理方法的流程图;
图2是根据一示例性实施例示出的一种数据处理方法的流程图;
图3是根据一示例性实施例示出的一种数据处理装置的结构框图;
图4是根据一示例性实施例示出的一种用于数据处理的装置的框图;
图5是根据一示例性实施例示出的一种用于数据处理的装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种数据处理方法的流程图,该方法具体可以包括以下步骤:
步骤101,当检测到应用程序的连续崩溃次数达到预设次数时,拦截所述应用程序再一次启动后被触发的每个图形操作指令;
其中,移动终端上可以安装该应用程序,其中,该应用程序为发布版程序,非测试版程序。该应用程序具有图形绘制的功能,那么当移动终端侧检测到该应用程序连续崩溃的次数达到预设次数(例如3次)时,当用户再一次对该应用程序重启时(即第四次启动该应用程序时),本公开实施例的方法可以对应用程序在第四次启动后的运行期间被触发的每个图形操作指令进行拦截,从而便于判断是否是图形操作指令导致的应用程序崩溃。
在一种可能的实施方式中,可以将拦截到的图形操作指令写入缓存中。
在一种可能的实施方式中,在执行步骤101时,当本公开实施例的方法检测到该应用程序的连续崩溃次数达到预设次数时,可以发送表示连续崩溃的信息(包括移动终端用户的联系信息以及连续崩溃数据)给该应用程序的开发终端,开发终端可以接收到该信息,开发人员通过该开发终端看到该信息后,可以通过联系信息联系该移动终端用户,指示用户再一次启动该应用程序,以便开发人员采集崩溃数据分析崩溃原因。这样,用户就可以再一次启动该应用程序。
这样,可以给应用程序的使用用户提供一种选择机制,在其需要将崩溃数据发送给开发人员的情况下,本公开实施例的方法才会进行图形操作指令的拦截以及步骤102、步骤103、步骤106和步骤107。
步骤102,记录拦截到的多个图形操作指令的触发先后顺序;
其中,本公开实施例在拦截到图形操作指令后,移动终端侧可以记录被拦截到的多个图形操作指令的触发先后顺序,在本公开实施例中,对图形操作指令的拦截顺序,或者说接收顺序,即为这里的触发先后顺序。
在一种可能的实施方式中,可以按照触发先后顺序,将拦截的多个图形操作指令的依次存储在缓存中。
步骤103,获取与图形操作相关的预设系统环境参数;
其中,在应用程序再一次启动后,即上述举例的第四次启动后,本公开实施例的方法还可以获取安装该应用程序的移动终端中,与图形操作相关的预设系统环境参数,该参数主要是系统的图形环境,例如硬件设备信息,具体可以包括但不限于CPU参数、GPU(图形处理器,Graphics Processing Unit)参数、内存参数、操作系统参数。
获取预设系统环境参数的目的在于便于后续判断该应用程序崩溃的原因是否与这些预设系统环境参数的具体参数值有关;或者,利用该预设系统环境参数,模拟出该应用程序的系统环境,从而便于对拦截的多个图形操作指令进行回放,查找崩溃原因。
步骤106,将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中;
其中,本公开实施例的开发终端可以将下载的三类数据(即图1实施例中移动终端上的应用程序上报的三类数据)导入到开发终端上安装的开发工具中,该开发工具为该应用程序的开发工具。
步骤107,利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
其中,开发终端侧可以利用该开发工具来按照所述触发先后顺序,依次执行所述多个图形操作指令以显示所述多个图形操作指令对应的目标图形的绘制过程,这样,就可以将在移动终端侧触发的该多个图形操作指令对应的目标图形的绘制过程回放出来。这样,每一次的所述多个图形操作指令对应的目标图形的绘制过程都可以完整的回放出来,开发人员可以在开发工具的用户界面中看出哪一次的图形绘制导致了程序的崩溃。
这样,本公开实施例通过在具有图形绘制功能的应用程序连续崩溃次数达到预设次数后,拦截其再一次启动后触发的每个图形操作指令,以及记录被拦截的多个图形操作指令的触发先后顺序,以及获取与图形操作相关的预设系统环境参数,并将采集的上述三种数据导入到应用程序的开发工具中。其中,用于崩溃原因分析的数据均是发布版应用程序的数据,能够便于开发人员较为准确的分析崩溃原因、以及定位崩溃位置;且图形操作指令是具有图形绘制功能的应用程序崩溃的主要原因,那么通过获取被触发的图形操作指令,则缩小了确认崩溃原因的数据范围,提升对崩溃原因的确认准确度;另外,采集的数据还包括与图形操作相关的预设系统环境参数,从而可以确认崩溃原因是否与系统环境相关,大幅降低了确认应用崩溃原因的难度。
此外,本公开在本地的对应于该应用程序的开发工具中,按照所述触发先后顺序依次执行每个图形操作指令,从而达到对崩溃后的应用的图形绘制过程的回放目的,开发人员通过查看图形绘制的回放过程并结合预设系统环境参数,可以较为准确的分析出应用崩溃原因;另外,回放过程是在预设系统环境参数下,从而能够模拟出应用程序的系统环境,能够较为准确的还原出应用程序的图形绘制过程,从而准确的识别该图形绘制过程中哪些图形操作指令的触发造成了应用程序的崩溃(例如花屏、闪屏、黑屏等崩溃情况),大幅降低了确认应用崩溃原因的难度。
在一种可能的实施方式中,在执行步骤107时,可以首先根据所述预设系统环境参数模拟出所述应用程序的系统环境;然后,利用所述开发工具,在所述系统环境中按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
具体而言,本公开实施例的方法可以利用该预设系统环境参数来模拟出该崩溃的应用程序在移动终端侧的系统环境,然后,在该系统环境中,由该开发工具按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
这样,本公开实施例利用预设系统环境参数模拟出崩溃的应用的图形系统环境,并在该图形系统环境下,将用户在移动终端侧触发的多个图形操作指令的执行过程依次回放展示出来,从而确保的图形操作的回放过程与移动终端侧用户对图形操作的触发过程是一致的,从而便于开发人员通过查看该多个图形操作指令对应的目标图形的绘制过程,分析造成应用崩溃的原因。例如某个图形操作指令执行后,造成了绘制黑屏、闪屏等情况,则说明该图形操作指令存在问题,需要修复,大大降低了识别崩溃原因的难度。
在一种可能的实施方式中,如图2所示,在步骤106之前,根据本公开实施例的方法还可以包括:步骤104和步骤105。
步骤104,将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器。
其中,移动终端可以将步骤101、步骤102和步骤103获取到的三类信息打包发送至该应用程序对应的应用服务器。
对于打包发送上述三类数据的时机来说,可以分为以下两种场景:
场景一,上述举例中采集的是应用程序第四次运行过程中的三类数据,那么当应用程序再次崩溃即第四次崩溃后,当检测到该应用程序再次,即第五次被重启后,本公开实施例的方法可以将第四次启动后所采集的上述三类数据获取到,并打包发送至应用服务器。
场景二,上述举例中采集的是应用程序第四次运行过程中的三类数据,那么在应用程序在第四次启动后的运行时长达到预设时长(例如3分钟)后,本公开实施例的方法可以提供一个提示界面,该提示界面提示用户是否将崩溃数据发送至预设服务器,如果接收到用户对该提示界面的第一预设操作,例如表示将崩溃数据发送至预设服务器的操作,那么本公开实施例的方法就可以将接收到该第一预设操作之前采集的上述三类数据打包发送至预设服务器;如果接收到用户对该提示界面的第二预设操作,例如表示不将崩溃数据发送至预设服务器的操作,那么本公开实施例的方法就可以等待应用程序再次崩溃,从而触发场景一。
其中,步骤101的拦截所述应用程序中被触发的每个图形操作指令的步骤、步骤102以及步骤103,都是在当检测到应用程序的连续崩溃次数达到预设次数时,在应用程序再一次启动后触发的,因此,本公开的方法对于采集三类数据的步骤不做顺序限制。
步骤105,从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序。
其中,开发人员使用的开发终端可以从预设服务器(例如上述实施例所述的应用服务器)下载移动终端侧所上传的三类数据,即与该应用程序匹配的预设系统环境参数、多个图形操作指令以及所述多个图形操作指令对应的触发先后顺序;
其中,所述多个图形操作指令为在所述应用程序的连续崩溃次数达到预设次数时,所述应用程序再一次启动后被触发的图形操作指令。
在本公开实施例中,移动终端侧在将上述三类数据导入至应用程序的开发工具中时,可以借助于预设服务器,通过将上述三类数据上传至预设服务器,再由开发终端从预设服务器下载该应用程序的三类数据,从而便于在开发工具中对该三类数据对应的目标图形的绘制过程进行回放,便于开发人员定位bug的位置。
在一种可能的实施方式中,在执行步骤104时,可以首先,将所述预设系统环境参数和拦截的所述多个图形操作指令,按照预设数据结构存储在目标文件中,其中,所述多个图形操作指令按照所述触发先后顺序依次记录在所述目标文件中;然后,将所述目标文件发送至预设服务器。
Figure BDA0002024671060000091
表1
如表1所示,示出了本公开实施例的一个示例的目标文件中的预设数据结构,该预设数据结构中首先写入预设系统环境参数(这里列举了9种系统环境参数,并且每个系统环境参数都对应存储有属性值),然后,再按照多个图形操作指令的触发先后顺序依次写入多个图形操作指令(这里列举了被拦截的三个函数,按照触发先后顺序从前到后依次为F1、F2、F3,每个函数中的参数也对应存储到表1中)。
换句话说,本公开实施例的方法在将采集的三类数据写入到文件时,需要按照表1所示的预设数据结构进行数据写入,即先写系统环境参数,再写拦截到的图形操作指令。其中,在写系统环境参数时,按照字段、属性值的结构写入每一条系统环境参数;在写图形操作指令时,则按照图形操作指令的触发先后顺序依次写入每个图形操作指令。而在写入任意一条图形操作指令(可以是一个函数)时,按照函数名、函数参数的结构写入每一条图形操作指令。
其中,该目标文件可以是日志文件。
这样,本公开实施例通过将采集的预设系统环境参数以及拦截的多个图形操作指令按照预设数据结构写入到目标文件中,其中,多个图形操作指令按照触发先后顺序依次记录在目标文件中,采用这种预设数据结构存储采集到的三类数据,可以便于后续对目标文件中的三类数据的读取,在预设数据结构中,不论是预设系统环境参数还是图形操作指令,都是按照预设结构存储的,且存储的是用于分析崩溃原因的较为关键的信息,不仅降低了传输的数据量,还能够提升后续开发人员利用该目标文件中的数据查找崩溃原因的效率和准确度。
在一种可能的实施方式中,在执行步骤105时,可以从所述预设服务器获取与所述应用程序匹配的所述目标文件。
其中,所述目标文件包括按照预设数据结构存储的与图形操作相关的预设系统环境参数、所述应用程序中被触发的多个图形操作指令,其中,所述多个图形操作指令按照触发先后顺序依次存储在所述目标文件中;
本公开实施例的开发终端可以从应用服务器下载移动终端上传的目标文件,例如日志文件。其中,目标文件中的数据按照预设数据结构存储,在一个示例中,该按照预设数据结构存储的数据如上述实施例的表1所示。
在一种可能的实施方式中,在执行步骤106时,可以将所述目标文件导入至所述应用程序的开发工具中。
其中,开发终端可以将下载的目标文件导入到该应用程序的开发工具中,其中,开发工具安装在开发终端上。
在一种可能的实施方式中,在执行步骤107时,则可以首先,利用所述开发工具,按照所述预设数据结构依次读取所述目标文件中的预设系统环境参数以及多个图形操作指令,其中,在读取所述多个图形操作指令时,按照所述触发先后顺序依次读取所述多个图形操作指令;然后,利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
具体而言,本公开实施例的开发终端可以利用所述开发工具按照所述预设数据结构,首先,将所述预设系统环境参数依次读到内存,然后,再将多个图形操作指令依次读取到内存;其中,在将多个图形操作指令依次读取到内存时,可以按照所述触发先后顺序依次读取所述多个图形操作指令到内存;
以表1中的数据为例,在读取时,首先读取每个预设系统环境参数,然后在读取每个图形操作指令。其中,在读取每个预设系统环境参数时,依次读取“操作系统版本”、“安卓7.0.0”、“Linux内存版本”、“4.1”……“移动终端型号”、“XX3型号”;然后,在读取每个图形操作指令时,依次读取“F1”、“a”、“F2”、“b”、“F3”、“c”到内存。
在一个示例中,在读取多个图形操作指令时,可以将读取到的第一个图形操作指令,即,将这里的F1(a)放在队列的队尾,然后再读取第二图形操作指令,即将这里的F2(b)放在所述队列的队尾,最后,读取第二图形操作指令,即将这里的F3(c)放在所述队列的队尾,这样队列中就会从前到后依次存储F1(a)、F2(b)、F3(c),存储顺序与所述触发先后顺序一致。
然后,对所述内存中的所述预设系统环境参数和所述多个图形操作指令进行分别进行解析,以便解析后的所述预设系统环境参数和所述多个图形操作指令的格式能够被开发工具所识别。
最后,利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
其中,该开发工具安装在开发终端侧,开发终端的系统环境可能与移动终端处的系统环境不同,这里,可以直接使用开发工具,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
然后,开发人员可以通过分析该多个图形操作指令对应的目标图形的绘制过程,以及对接收到的预设系统环境参数进行分析,来确定应用崩溃的原因是与图形操作指令有关,还是与移动终端的系统环境有关。
例如通过查看该多个图形操作指令对应的目标图形的绘制过程,发现该多个图形操作指令在开发工具所部署的开发终端侧没有异常,但是,应用在用户所使用的移动终端侧存在异常,则说明移动终端的预设系统环境参数中存在造成应用崩溃的原因。例如移动终端的操作系统的版本问题、内存过小等等问题。
这样,本公开实施例的开发终端可以利用所述开发工具,按照所述预设数据结构依次读取崩溃的应用程序上传的目标文件中的预设系统环境参数以及多个图形操作指令,并按照所述触发先后顺序依次读取所述多个图形操作指令,从而能够方便的读取到所需要的信息,且信息的结构清晰,无需对下载的数据进行分析处理,即可直接获取到能够直接回放图形操作的数据,提升了图形操作的回放效率,从而方便开发人员利用回放的所述多个图形操作指令对应的目标图形的绘制过程和采集的预设系统参数信息,查找崩溃原因,提升了查找崩溃原因的效率和准确度。
在一种可能的实施方式中,在执行步骤101中的拦截所述应用程序中被触发的每个图形操作指令的步骤时,可以通过以下方式来实现:
首先,接收应用程序中被触发的图形绘制请求所对应的多个图形操作指令;
其中,当用户对应用程序进行操作而触发了图形绘制请求后,本公开实施例的方法可以接收到该图形绘制请求对应的多个图形操作指令。
然后,将所述多个图形操作指令按照触发先后顺序依次缓存;
其中,如上文所述,该多个图形操作指令是一段完整且连续的图形操作指令,因此,该多个图形操作指令对应有触发先后顺序。这里,可以按照该触发先后顺序来依次将接收到的多个图形操作指令缓存。
最后,当接收到与图形操作相关的预设结束信号时,将在接收到所述预设结束信号之前缓存的所述多个图形操作指令进行拦截。
其中,每当一个图形绘制请求对应的多个图形操作指令下发完毕后,都会下发一个与图形操作相关的预设结束信号,这样,当本公开实施例的方法接收到该预设结束信号,则可以确定本次触发的图形绘制请求的多个图形操作指令已经接收完毕。由于拦截的图形操作指令是下发给硬件层的指令,该指令直接用于图形绘制,因此,可以确保采集的图形操作指令的准确度。而在接收到预设结束信号后,再进行多个图形操作指令的拦截,则可以确保任意一个被触发的图形绘制请求对应的多个图形操作指令都可以被完整的采集到,从而便于开发人员定位造成崩溃的代码。
其中,预设结束信号包括但不限于以下几种:Draw系列函数、Flush函数、Finish函数、SwapBuffer及其等价函数、BlitCommandBuffer及其等价函数、SyncObject及其等价函数等。
在一种可能的实施方式中,本公开实施例的方法预先在所述应用程序中配置有中间层,由应用程序中的中间层来实现上述实施例的方法。
其中,该中间层可以配置有图形应用程序编程接口与不同开发平台的编程接口的预设映射关系,这样,具有该中间层的应用程序可以不更换代码的情况下进行跨平台的安装使用,例如可以安装到IOS系统、安卓系统等。
具体而言,本公开实施例的应用程序采用预设编程接口(例如OpenGL(OpenGraphics Library,开放图形库))的语言编写,其中,该预设编程接口是一种图形API,在开发目标APP时,可以采用任意一种图形API来开发。那么为了能够使编写的目标APP可以应用到各个开发平台上使用,无需更换代码,本公开实施例的应用程序中包括中间层,该中间层存储有该预设编程接口与不同开发平台的编程接口(例如Vulkan(Vulkan是一个跨平台的2D和3D绘图API)、DirectX((Direct eXtension,简称DX,是由微软公司创建的多媒体编程接口)、Metal(是一种低层次的渲染应用程序编程接口)等)之间的预设映射关系。
其中,在该预设映射关系中,预设编程接口与不同开发平台的编程接口分别具有一对一的映射关系,对于任意一个一对一的映射关系,映射的内容可以包括但不限于以下至少之一:内存信息(对应于下述举例中的字节长度)、坐标轴信息、裁剪空间信息(即深度信息的范围)。通过以上内容的映射,可以达到数据类型转换的目的。
例如该应用程序所使用的预设编程接口为OpenGL,而该应用程序安装的所述移动终端的编程接口为Vulkan,那么本公开实施例的中间层就可以将数据类型符合该OpenGL要求的被拦截到的每个图形操作指令,均映射为Vulkan支持的数据类型,从而使得移动终端的驱动、GPU可以识别映射后的每个图形操作指令,从而完成图形绘制,即应用程序的图形绘制功能可以跨平台应用,而无需改变代码,大幅降低了程序开发成本。
图3是根据一示例性实施例示出的一种数据处理装置的结构框图。参照图3,该装置包括:
拦截模块31,用于当检测到应用程序的连续崩溃次数达到预设次数时,拦截所述应用程序再一次启动后被触发的每个图形操作指令;
记录模块32,用于记录拦截到的多个图形操作指令的触发先后顺序;
第一获取模块33,用于获取与图形操作相关的预设系统环境参数;
导入模块34,用于将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中;
回放模块35,用于利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
在一种可能的实施方式中,所述装置还包括:
发送模块,用于将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器;
第二获取模块,用于从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序。
在一种可能的实施方式中,所述发送模块包括:
存储子模块,用于将所述预设系统环境参数和拦截的所述多个图形操作指令,按照预设数据结构存储在目标文件中,其中,所述多个图形操作指令按照所述触发先后顺序依次记录在所述目标文件中;
发送子模块,用于将所述目标文件发送至预设服务器;
所述第二获取模块包括:
获取子模块,用于从所述预设服务器获取与所述应用程序匹配的所述目标文件;
所述导入模块34包括:
导入子模块,用于将所述目标文件导入至所述应用程序的开发工具中;
所述回放模块35包括:
读取子模块,用于利用所述开发工具,按照所述预设数据结构依次读取所述目标文件中的预设系统环境参数以及多个图形操作指令,其中,在读取所述多个图形操作指令时,按照所述触发先后顺序依次读取所述多个图形操作指令;
回放子模块,用于利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
在一种可能的实施方式中,所述回放模块35包括:
模拟子模块,用于根据所述预设系统环境参数模拟出所述应用程序的系统环境;
所述回放模块,还用于利用所述开发工具,在所述系统环境中按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据一示例性实施例示出的一种用于数据处理的装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述数据处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种包括指令的应用程序,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述数据处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图5是根据一示例性实施例示出的一种用于数据处理的装置1900的框图。例如,装置1900可以被提供为一服务器。参照图5,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(I/O)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (8)

1.一种数据处理方法,其特征在于,包括:
当检测到应用程序的连续崩溃次数达到预设次数时,在所述应用程序再一次启动时,拦截所述应用程序再一次启动后被触发的每个图形操作指令;
记录拦截到的多个图形操作指令的触发先后顺序;
获取与图形操作相关的预设系统环境参数,所述预设系统环境参数包括CPU参数、GPU参数以及内存参数中的至少一者;
将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中;
利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程;
所述利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程,包括:
根据所述预设系统环境参数模拟出所述应用程序在移动终端侧的系统环境;
利用所述开发工具,在所述系统环境中按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
2.根据权利要求1所述的数据处理方法,其特征在于,所述将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中之前,所述方法还包括:
将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器;
从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序。
3.根据权利要求2所述的数据处理方法,其特征在于,
所述将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器,包括:
将所述预设系统环境参数和拦截的所述多个图形操作指令,按照预设数据结构存储在目标文件中,其中,所述多个图形操作指令按照所述触发先后顺序依次记录在所述目标文件中;
将所述目标文件发送至预设服务器;
所述从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序,包括:
从所述预设服务器获取与所述应用程序匹配的所述目标文件;
所述将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中,包括:
将所述目标文件导入至所述应用程序的开发工具中;
所述利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程,包括:
利用所述开发工具,按照所述预设数据结构依次读取所述目标文件中的预设系统环境参数以及多个图形操作指令,其中,在读取所述多个图形操作指令时,按照所述触发先后顺序依次读取所述多个图形操作指令;
利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
4.一种数据处理装置,其特征在于,包括:
拦截模块,用于当检测到应用程序的连续崩溃次数达到预设次数时,在所述应用程序再一次启动时,拦截所述应用程序再一次启动后被触发的每个图形操作指令;
记录模块,用于记录拦截到的多个图形操作指令的触发先后顺序;
第一获取模块,用于获取与图形操作相关的预设系统环境参数,所述预设系统环境参数包括CPU参数、GPU参数以及内存参数中的至少一者;
导入模块,用于将所述预设系统环境参数、所述多个图形操作指令以及所述触发先后顺序导入至所述应用程序的开发工具中;
回放模块,用于利用所述应用程序的开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程;
所述回放模块包括:
模拟子模块,用于根据所述预设系统环境参数模拟出所述应用程序在移动终端侧的系统环境;
所述回放模块,还用于利用所述开发工具,在所述系统环境中按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
5.根据权利要求4所述的数据处理装置,其特征在于,所述装置还包括:
发送模块,用于将所述预设系统环境参数、拦截的所述多个图形操作指令以及所述触发先后顺序发送至预设服务器;
第二获取模块,用于从所述预设服务器获取与所述应用程序匹配的所述预设系统环境参数、所述多个图形操作指令以及所述多个图形操作指令对应的所述触发先后顺序。
6.根据权利要求5所述的数据处理装置,其特征在于,
所述发送模块包括:
存储子模块,用于将所述预设系统环境参数和拦截的所述多个图形操作指令,按照预设数据结构存储在目标文件中,其中,所述多个图形操作指令按照所述触发先后顺序依次记录在所述目标文件中;
发送子模块,用于将所述目标文件发送至预设服务器;
所述第二获取模块包括:
获取子模块,用于从所述预设服务器获取与所述应用程序匹配的所述目标文件;
所述导入模块包括:
导入子模块,用于将所述目标文件导入至所述应用程序的开发工具中;
所述回放模块包括:
读取子模块,用于利用所述开发工具,按照所述预设数据结构依次读取所述目标文件中的预设系统环境参数以及多个图形操作指令,其中,在读取所述多个图形操作指令时,按照所述触发先后顺序依次读取所述多个图形操作指令;
回放子模块,用于利用所述开发工具,在所述预设系统环境参数下,按照所述触发先后顺序依次执行所述多个图形操作指令,以显示所述多个图形操作指令对应的目标图形的绘制过程。
7.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行以实现如权利要求1至权利要求3中任意一项所述的数据处理方法所执行的操作。
8.一种非临时性计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行一种以实现如权利要求1至权利要求3中任意一项所述的数据处理方法所执行的操作。
CN201910290212.0A 2019-04-11 2019-04-11 数据处理方法、装置、电子设备及存储介质 Active CN110162966B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910290212.0A CN110162966B (zh) 2019-04-11 2019-04-11 数据处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910290212.0A CN110162966B (zh) 2019-04-11 2019-04-11 数据处理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN110162966A CN110162966A (zh) 2019-08-23
CN110162966B true CN110162966B (zh) 2022-12-27

Family

ID=67639238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910290212.0A Active CN110162966B (zh) 2019-04-11 2019-04-11 数据处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110162966B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391357A (zh) * 2017-08-17 2017-11-24 杭州师范大学 应用崩溃重现方法、装置及移动终端
CN108268364A (zh) * 2018-01-19 2018-07-10 百度在线网络技术(北京)有限公司 异常事件回放方法、装置及设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104092656A (zh) * 2014-04-10 2014-10-08 鸿富锦精密工业(深圳)有限公司 移动终端、数据传输系统及方法
CN106294116A (zh) * 2015-06-11 2017-01-04 阿里巴巴集团控股有限公司 记录和重现操作过程的方法、装置和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391357A (zh) * 2017-08-17 2017-11-24 杭州师范大学 应用崩溃重现方法、装置及移动终端
CN108268364A (zh) * 2018-01-19 2018-07-10 百度在线网络技术(北京)有限公司 异常事件回放方法、装置及设备

Also Published As

Publication number Publication date
CN110162966A (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
US9886264B2 (en) Method and device for upgrading firmware
CN110781080B (zh) 程序调试方法及装置、存储介质
US20240296056A1 (en) Method, apparatus, device, computer-readable storage medium and product for displaying code
CN109901886B (zh) 页面语言切换方法、系统、装置和计算机可读存储介质
CN109117144B (zh) 页面处理方法、装置、终端及存储介质
CN112241361A (zh) 测试用例生成方法及装置、问题场景自动复现方法及装置
CN113377370A (zh) 一种文件处理方法、装置、电子设备及存储介质
CN112256563A (zh) 安卓应用稳定性测试方法、装置、电子设备及存储介质
CN110795354A (zh) 信息处理方法、装置及存储介质
CN104932970A (zh) 内存泄露监控方法和装置
CN111338961B (zh) 应用调试方法及装置、电子设备及存储介质
CN110659024B (zh) 图形资源转换方法、装置、电子设备及存储介质
CN110162966B (zh) 数据处理方法、装置、电子设备及存储介质
CN110162245B (zh) 图形操作的分析方法、装置、电子设备及存储介质
CN115543831A (zh) 一种测试脚本生成方法、装置、设备和存储介质
CN110874259A (zh) 程序执行方法、装置、设备和存储介质
CN110569037B (zh) 数据写入的方法和装置
CN107526683B (zh) 应用程序功能冗余度的检测方法、装置及存储介质
CN111597106A (zh) 一种埋点管理方法及装置
CN113946346B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN111767063A (zh) 应用程序的资源更新方法、装置及设备
CN114020504B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN107943703B (zh) 终端设备崩溃数据的获取方法、装置和系统
CN110647351B (zh) 源代码地图文件还原方法、装置及存储介质
WO2023216199A1 (zh) 日志仿真方法、装置、系统、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant