崩溃处理方法、装置、计算机设备及计算机可读存储介质与流程

文档序号:36102437发布日期:2023-11-21 19:55阅读:52来源:国知局
崩溃处理方法与流程

本技术涉及互联网,特别是涉及一种崩溃处理方法、装置、计算机设备计算机可读存储介质。


背景技术:

1、随着互联网技术的不断进步,用户的智能设备(如手机、平板电脑)中,下载了越来越多的应用程序。应用程序在运行过程中,可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据缓存下来,从而提高性能。而缓存是在一段时间内不发生变化的数据,一旦由于缓存原因引起应用程序崩溃,那么只要用到能引起崩溃的缓存的地方,就会导致应用程序崩溃,如果用户多次打开,那么则会在短时间之内造成大量崩溃。

2、相关技术中,如果应用程序的崩溃是由缓存引起的,那么用户只能去操作系统手动选择清除掉发送崩溃的应用程序的缓存数据,或者卸载发送崩溃的应用程序,并重新下载。

3、在实现本技术的过程中,申请人发现相关技术至少存在以下问题:

4、无论是前往操作系统,采用操作系统提供的接口清除缓存数据,还是卸载应用程序后重新下载,都需要用户自行完成相应的操作,十分影响用户的使用体验。另外,用户自行操作容易出现人为失误,如误删其他应用程序的缓存数据或者错误卸载应用程序等等,不仅未能正确处理崩溃的应用程序,还影响到其他正常应用程序的运行,从而导致程序崩溃处理的效率低、准确性差。


技术实现思路

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、设置模块,用于若比对确定所述目标崩溃次数大于等于所述预设崩溃次数阈值,则在所述目标应用程序关联的目标存储空间中设置缓存标志位;

35、清除模块,用于响应于所述目标应用程序再次发起应用启动指令,依据所述缓存标志位,清除所述目标应用程序对应的缓存数据。

36、可选地,所述获取模块,用于响应于所述目标应用程序发起所述应用启动指令,检测所述目标存储空间;如果未检测到所述缓存标志位,则在所述目标应用程序的运行过程中实时检测程序线程的未捕获异常方法;在检测到所述目标应用程序发生崩溃时,生成所述目标崩溃记录,将所述目标崩溃记录存储至所述目标存储空间;读取所述目标崩溃记录中的目标崩溃摘要,在所述目标存储空间中,遍历除所述目标崩溃记录之外的其他崩溃记录,确定与所述目标崩溃摘要一致的指定崩溃摘要,将所述指定崩溃摘要对应的崩溃记录作为所述历史崩溃记录。

37、可选地,所述获取模块,用于记录捕获到的目标崩溃数据和目标崩溃时间;采用信息摘要算法对所述目标崩溃数据进行摘要提取,得到目标崩溃摘要;将所述目标崩溃摘要和所述目标崩溃时间关联,得到所述目标崩溃记录;查询所述目标应用程序指示的存储路径,按照所述存储路径,将所述目标崩溃记录存储至所述目标存储空间。

38、可选地,所述获取模块,用于设置计数器并将所述计数器的初始计数值设置为一;若在所述目标存储空间中未读取到至少一个历史崩溃记录,则将所述计数器当前的计数值设置为所述目标崩溃次数;若在所述目标存储空间中读取到至少一个历史崩溃记录,则计算指定时间范围,将所述至少一个历史崩溃记录中每个历史崩溃记录的历史崩溃时间与所述指定时间范围进行比对,在所述历史崩溃时间命中所述指定时间范围时,将所述计数器的数值加一,直至遍历所述至少一个历史崩溃记录,将所述计数器当前的计数值设置为所述目标崩溃次数。

39、可选地,所述获取模块,用于查询预设时间间隔;在所述目标崩溃记录中读取目标崩溃时间,采用所述预设时间间隔和所述目标崩溃时间,计算指定时间,所述指定时间与所述目标崩溃时间之间的时间间隔等于所述预设时间间隔;将所述指定时间作为起始时间,将所述目标崩溃时间作为终止时间,得到所述指定时间范围。

40、可选地,所述清除模块,用于响应于所述目标应用程序的启动指令,对所述目标存储空间进行检测;在检测到所述缓存标志位时,遍历缓存空间,在所述缓存空间中确定所述目标应用程序对应的目标缓存数据;删除所述目标缓存数据,以及在所述目标存储空间中删除所述缓存标志位。

41、可选地,所述设置模块,还用于若比对确定所述目标崩溃次数小于预设崩溃次数阈值,则响应于目标应用程序再次发起所述应用启动指令,运行所述目标应用程序,并在所述目标应用程序的运行过程中实时检测程序线程的未捕获异常方法。

42、依据本技术第三方面,提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述方法的步骤。

43、依据本技术第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法的步骤。

44、借由上述技术方案,本技术提供的一种崩溃处理方法、装置、计算机设备及计算机可读存储介质,首先在目标应用程序发生崩溃时,获取本次崩溃产生的目标崩溃记录和目标应用程序在指定时间范围内产生的历史崩溃记录。接下来,将目标崩溃记录与历史崩溃记录进行比对,判断目标应用程序在指定时间范围内是否发生过与本次崩溃类型一致的崩溃,进而统计相同崩溃的崩溃次数,也就是得到目标崩溃次数。随后,查询预设次数阈值,将目标崩溃次数与预设次数阈值进行比对。若比对确定目标崩溃次数大于等于预设崩溃次数阈值,则在目标应用程序关联的目标存储空间中设置缓存标志位。最后,响应于目标应用程序再次发起应用启动指令,依据缓存标志位,清除目标应用程序对应的缓存数据。在目标崩溃次数大于等于预设次数阈值时,说明目标应用程序短时间内发生了多次同样的崩溃,此时会为目标应用程序设置缓存标志位,以便在目标应用程序下一次启动时,对缓存数据进行自动清除。通过设置缓存标志位,不再需要用户手动清除目标应用程序的缓存数据或者卸载目标应用程序,从而减少用户感知,提升用户体验。并且由于避免了人为失误,不会影响到其他正常应用程序的缓存数据,进而提高了崩溃处理的效率和准确性。

45、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1