CN103246578B - 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器 - Google Patents

应用软件进行崩溃处理的方法及进行崩溃处理的浏览器 Download PDF

Info

Publication number
CN103246578B
CN103246578B CN201310194129.6A CN201310194129A CN103246578B CN 103246578 B CN103246578 B CN 103246578B CN 201310194129 A CN201310194129 A CN 201310194129A CN 103246578 B CN103246578 B CN 103246578B
Authority
CN
China
Prior art keywords
collapse
module
allocation list
browser
analytic unit
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.)
Expired - Fee Related
Application number
CN201310194129.6A
Other languages
English (en)
Other versions
CN103246578A (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 Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310194129.6A priority Critical patent/CN103246578B/zh
Publication of CN103246578A publication Critical patent/CN103246578A/zh
Application granted granted Critical
Publication of CN103246578B publication Critical patent/CN103246578B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种应用软件进行崩溃处理的方法及进行崩溃处理的浏览器。该应用软件进行崩溃处理的方法包括:在应用软件侧设置崩溃分析单元和崩溃配置表,其中崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给崩溃分析单元;启动崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块,并与崩溃配置表进行匹配;以及将与崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示。本发明实现了在浏览器自身就可以进行初次的浏览器崩溃模块的分析,并结合服务器侧的配置文件,快速下发解决方案,极大地提高了浏览器崩溃的解决效率。

Description

应用软件进行崩溃处理的方法及进行崩溃处理的浏览器
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用软件进行崩溃处理的方法及进行崩溃处理的浏览器。
背景技术
在网页加载的过程中,常常由于种种原因使得浏览器反应变得很慢,或者造成浏览器失去响应,甚至会导致机器无法进行其他操作。
导致浏览器崩溃的原因有:内存泄露、网页代码复杂和浏览器的错误(Bug)、网页数据过多、ajax的web服务漏洞等。
现有进行崩溃处理的方法包括:通过侦测程序捕获应用程序崩溃时的出错地址和错误信息内容并通过上报程序将其上报至服务器;以及服务器对该应用程序崩溃时的出错地址和错误信息内容进行分析,并根据所述出错地址对错误信息内容进行统计归类和存储。
由于所有的应用程序崩溃数据都需要上传到服务器侧,由服务器依据崩溃数据得出分析结果后返回到应用程序侧,并依据分析结果给出对应的崩溃解决方案。对于应用程序的用户而言,其获知来自网络侧的分析结果速度慢,从而使得浏览器崩溃的解决效率低下。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的应用软件进行崩溃处理的方法及进行崩溃处理的浏览器。
根据本发明的一个方面,提供了一种应用软件进行崩溃处理的方法,包括:
在应用软件侧设置崩溃分析单元和崩溃配置表,其中上述崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;
在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给上述崩溃分析单元;
启动上述崩溃分析单元分析崩溃数据得出上述应用软件产生崩溃的模块,并与上述崩溃配置表进行匹配;以及
将与上述崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示。
根据本发明的另一方面,提供了一种进行崩溃处理的浏览器,包括:
设置模块,适于在浏览器侧设置崩溃分析单元和崩溃配置表,其中上述崩溃配置表至少包括:浏览器的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;
获取发送模块,适于在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给上述崩溃分析单元;
启动匹配模块,适于启动上述崩溃分析单元分析崩溃数据得出上述浏览器产生崩溃的模块,并与上述崩溃配置表进行匹配;以及
显示模块,适于将与上述崩溃配置表中的崩溃模块相匹配的修复信息在浏览器侧进行加载显示。
本发明实施例,通过启动崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块,并与崩溃配置表进行匹配,将与崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示,实现了在浏览器自身就可以进行初次的浏览器崩溃模块的分析,并结合服务器侧的配置文件,快速下发解决方案,极大地提高了浏览器崩溃的解决效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的应用软件进行崩溃处理的方法流程图;
图2示出了根据本发明另一个实施例的应用软件进行崩溃处理的方法流程图;
图3示出了根据本发明又一个实施例的应用软件进行崩溃处理的方法流程图;
图4示出了根据本发明再一个实施例的应用软件进行崩溃处理的方法流程图;
图5a示出了本发明实施例在应用软件侧加载显示一键修复提示信息的示意图;
图5b示出了本发明实施例在应用软件侧加载显示崩溃提示的示意图;
图5c示出了本发明实施例在应用软件侧加载显示升级提示信息的示意图;
图5d示出了本发明实施例在应用软件侧加载显示重启提示信息的示意图;
图6示出了根据本发明一个实施例的进行崩溃处理的浏览器的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的应用软件进行崩溃处理的方法流程图。如图1所示,该方法始于步骤S101,在步骤S101中,在应用软件侧设置崩溃分析单元和崩溃配置表。为了对应用软件侧崩溃的模块进行修复,该崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系。
设置好崩溃分析单元和崩溃配置表之后,在步骤S102中,在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给崩溃分析单元。
具体地,在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据的信息和崩溃配置表的信息以参数形式发给所述崩溃分析单元以便启动所述崩溃分析单元,该崩溃数据的信息包括该崩溃数据名称,该崩溃配置表的信息包括崩溃配置表名称。
将该崩溃数据和崩溃配置表发给崩溃分析单元之后,在步骤S103中,启动该崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块,并与该崩溃配置表进行匹配。
其中,启动该崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块可以为:调用该崩溃分析单元例如微软的dbughelp.dll模块分析崩溃数据得出应用软件产生崩溃的崩溃模块名称、崩溃模块版本、崩溃模块偏移等信息。
为了确保对崩溃数据的分析是实时的,该方法还包括:实时更新该崩溃配置表。实时更新该崩溃配置表的过程可以为:实时获得配置文件的版本号,将获得的配置文件的版本号与本地崩溃配置表中保存的配置文件的版本号进行匹配,若不一致,则从服务器获得更新的配置文件,根据该更新的配置文件更新崩溃配置表。
为了保证该崩溃配置表中修改信息的安全性,该修复信息为服务器对对应崩溃模块的配置文件加密后形成的动态链接库(dll)文件。
另外,该崩溃配置表还包括应用软件的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本。具体的匹配过程为:将分析得出的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本与崩溃配置表中的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本对应地进行匹配。
在将得出的应用软件产生崩溃的模块与该崩溃配置表进行匹配之后,在步骤S104中,将与该崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示。
具体地,可以将与崩溃配置表中的崩溃模块相匹配的升级提示信息在应用软件侧进行加载显示;或者,将与崩溃配置表中的崩溃模块相匹配的重启提示信息在应用软件侧进行加载显示;或者,将与崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示;在将一键修复提示信息在应用软件侧进行加载显示之后,若收到修复响应,加载对应崩溃模块的修复信息完成修复并自动重启,即可解决浏览器应用程序崩溃的问题。
另外,在将得出的应用软件产生崩溃的模块与该崩溃配置表进行匹配之后,若匹配失败,则在应用软件侧加载显示崩溃提示。
图2示出了根据本发明另一个实施例的应用软件进行崩溃处理的方法流程图。如图2所示,该应用软件进行崩溃处理的方法适于步骤S201,在步骤S201中,在应用软件侧设置崩溃分析单元和崩溃配置表。为了对应用软件侧崩溃的模块进行修复,该崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系。
设置好崩溃分析单元和崩溃配置表之后,在步骤S202中,在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给崩溃分析单元。
将该崩溃数据和崩溃配置表发给崩溃分析单元之后,在步骤S203中,启动该崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块信息。
该应用软件产生崩溃的模块信息可以包括但不限于如下信息:
崩溃模块名称:QQPINYIN.IME
崩溃模块版本:4.5.2004.400
崩溃模块信息:Ox000678c77f5692532db828ec77c66856cdfac6d3
崩溃模块路径:C:\Windows\System32\QQpinyin.ime
其它版本信息:se:5.0.9.6IE9.0.8112.16421OS:6.1.7601service pack1。
该方法还包括步骤S204,在步骤S204中,实时更新崩溃配置表。
具体地,实时更新该崩溃配置表的过程可以为:实时获得配置文件的版本号,例如该配置文件的版本号为:crainfo_ver=1.0.0.1001;将获得的配置文件的版本号与本地崩溃配置表中保存的配置文件的版本号进行匹配,若不一致,则从服务器获得更新的配置文件,根据该更新的配置文件更新崩溃配置表;其中,更新的配置文件的示例如下:
[version]
Ver=1.0.0.1014
[crash0]
name=wininet.dll
cond=(%osV%==〝5.1〞&&%ieV%==〝6.0〞&&%moduleNameV%~==〝wininet.dll〞)
url=http://www.liebao.cn/v3/help_wininetcrash.htm
craDesc=亲,浏览器医生检测到〝IE6内核文件〞崩溃了,建议您升级到IE8。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=立即升级
[crash1]
name=JPWB.IME
cond=(%osV%==〝5.1〞&&%moduleNameV%~==〝JPWB.IME〞)
craDesc=浏览器医生检测到〝极品五笔输入法〞在浏览器中崩溃了,建议您升级极品五笔输入法,如频繁崩溃可换用其它输入法。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=重启浏览器
[crash2]
name=ProxyIE.dll
cond=(%osV%==〝5.1〞&&%moduleNameV%~==〝ProxyIE.dll〞)
craDesc=浏览器医生检测到〝深信服VPN程序〞在浏览器中崩溃了,如果频繁崩溃,可卸载深信服VPN程序。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=重启浏览器
实时更新崩溃配置表之后,在步骤S205中,将应用软件产生崩溃的模块信息与崩溃配置表进行匹配,若匹配成功,执行步骤S206,在步骤S206中,将与崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示,如图5a所示;若匹配不成功,执行步骤S209,在步骤S209中,在应用软件侧加载显示崩溃提示,如图5b所示。
其中,将应用软件产生崩溃的模块信息与崩溃配置表进行匹配可以为:将分析得出的崩溃模块名称、崩溃模块偏移和崩溃模块版本与崩溃配置表中的崩溃模块名称、崩溃模块偏移和崩溃模块版本对应地进行匹配。
在将与崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示之后,在步骤S207中,加载对应崩溃模块的修复信息完成修复。比如Flash32_11_5_502_146.ocx模块崩溃了,浏览器匹配到这个模块崩溃后会提示一键修复,用户点击一键修复,会加载flashfix.dll进行修复。修复完之后,执行步骤S208,在步骤S208中,重启浏览器即可解决浏览器崩溃问题。
图3示出了根据本发明又一个实施例的应用软件进行崩溃处理的方法流程图。如图3所示,该应用软件进行崩溃处理的方法适于步骤S301,在步骤S301中,在应用软件侧设置崩溃分析单元和崩溃配置表。为了对应用软件侧崩溃的模块进行修复,该崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系。
设置好崩溃分析单元和崩溃配置表之后,在步骤S302中,在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给崩溃分析单元。
将该崩溃数据和崩溃配置表发给崩溃分析单元之后,在步骤S303中,启动该崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块信息。
该应用软件产生崩溃的模块信息可以包括但不限于如下信息:
崩溃模块名称:QQPINYIN.IME
崩溃模块版本:4.5.2004.400
崩溃模块信息:Ox000678c77f5692532db828ec77c66856cdfac6d3
崩溃模块路径:C:\Windows\System32\QQpinyin.ime
其它版本信息:se:5.0.9.6IE9.0.8112.16421OS:6.1.7601service pack1。
该方法还包括步骤S304,在步骤S304中,实时更新崩溃配置表。
具体地,实时更新该崩溃配置表的过程可以为:实时获得配置文件的版本号,例如该配置文件的版本号为:crainfo_ver=1.0.0.1004;将获得的配置文件的版本号与本地崩溃配置表中保存的配置文件的版本号进行匹配,若不一致,则从服务器获得更新的配置文件,根据该更新的配置文件更新崩溃配置表;其中,更新的配置文件的示例如下:
[version]
Ver=1.0.0.1014
[crash0]
name=wininet.dll
cond=(%osV%==〝5.1〞&&%ieV%==〝6.0〞&&%moduleNameV%~==〝wininet.dll〞)
url=http://www.liebao.cn/v3/help_wininetcrash.htm
craDesc=亲,浏览器医生检测到〝IE6内核文件〞崩溃了,建议您升级到IE8。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=立即升级
[crash1]
name=ProxyIE.dll
cond=(%osV%==〝5.1〞&&%moduleNameV%~==〝ProxyIE.dll〞)
craDesc=浏览器医生检测到〝深信服VPN程序〞在浏览器中崩溃了,如果频繁崩溃,可卸载深信服VPN程序。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=重启浏览器
实时更新崩溃配置表之后,在步骤S305中,将应用软件产生崩溃的模块信息与崩溃配置表进行匹配,若匹配成功,执行步骤S306,在步骤S306中,将与崩溃配置表中的崩溃模块相匹配的升级提示信息在应用软件侧进行加载显示,如图5c所示;若匹配不成功,执行步骤S307,在步骤S307中,在应用软件侧加载显示崩溃提示,如图5b所示。
其中,将应用软件产生崩溃的模块信息与崩溃配置表进行匹配可以为:将分析得出的崩溃模块名称和崩溃模块版本与崩溃配置表中的崩溃模块名称和崩溃模块版本对应地进行匹配。
图4示出了根据本发明再一个实施例的应用软件进行崩溃处理的方法流程图。如图4所示,该应用软件进行崩溃处理的方法适于步骤S401,在步骤S401中,在应用软件侧设置崩溃分析单元和崩溃配置表。为了对应用软件侧崩溃的模块进行修复,该崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系。
设置好崩溃分析单元和崩溃配置表之后,在步骤S402中,在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给崩溃分析单元。
将该崩溃数据和崩溃配置表发给崩溃分析单元之后,在步骤S403中,启动该崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块信息。
该应用软件产生崩溃的模块信息可以包括但不限于如下信息:
崩溃模块名称:QQPINYIN.IME
崩溃模块版本:4.5.2004.400
崩溃模块信息:Ox000678c77f5692532db828ec77c66856cdfac6d3
崩溃模块路径:C:\Windows\System32\QQpinyin.ime
其它版本信息:se:5.0.9.6IE9.0.8112.16421OS:6.1.7601service pack1。
该方法还包括步骤S404,在步骤404中,实时更新崩溃配置表。
具体地,实时更新该崩溃配置表的过程可以为:实时获得配置文件的版本号,例如该配置文件的版本号为:crainfo_ver=1.0.0.1008;将获得的配置文件的版本号与本地崩溃配置表中保存的配置文件的版本号进行匹配,若不一致,则从服务器获得更新的配置文件,根据该更新的配置文件更新崩溃配置表;其中,更新的配置文件的示例如下:
[version]
Ver=1.0.0.1014
[crash0]
name=wininet.dll
cond=(%osV%==〝5.1〞&&%ieV%==〝6.0〞&&%moduleNameV%~==〝wininet.dll〞)
url=http://www.liebao.cn/v3/help_wininetcrash.htm
craDesc=亲,浏览器医生检测到〝IE6内核文件〞崩溃了,建议您升级到IE8。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=立即升级
[crash1]
name=JPWB.IME
cond=(%osV%==〝5.1〞&&%moduleNameV%~==〝JPWB.IME〞)
craDesc=浏览器医生检测到〝极品五笔输入法〞在浏览器中崩溃了,建议您升级极品五笔输入法,如频繁崩溃可换用其它输入法。以后上网遇到其它问题,也可以按“F1”键让浏览器医生来一键修复。
craFix=重启浏览器
实时更新崩溃配置表之后,在步骤S405中,将应用软件产生崩溃的模块信息与崩溃配置表进行匹配,若匹配成功,执行步骤S406,在步骤S406中,将与崩溃配置表中的崩溃模块相匹配的重启提示信息在应用软件侧进行加载显示,如图5d所示;若匹配不成功,执行步骤S407,在步骤S407中,在应用软件侧加载显示崩溃提示,如图5b所示。
其中,将应用软件产生崩溃的模块信息与崩溃配置表进行匹配可以为:将分析得出的崩溃模块名称、崩溃模块偏移和崩溃模块版本与崩溃配置表中的崩溃模块名称、崩溃模块偏移和崩溃模块版本对应地进行匹配。
上述应用软件进行崩溃处理的方法,通过启动崩溃分析单元分析崩溃数据得出应用软件产生崩溃的模块,并与崩溃配置表进行匹配,将与崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示,实现了在浏览器自身就可以进行初次的浏览器崩溃模块的分析,并结合服务器侧的配置文件,快速下发解决方案,极大地提高了浏览器崩溃的解决效率。
图6示出了根据本发明一个实施例的进行崩溃处理的浏览器的结构示意图。如图6所示,该浏览器包括设置模块61、获取发送模块62、启动匹配模块63和显示模块64。
该设置模块61在浏览器侧设置崩溃分析单元和崩溃配置表,其中该崩溃配置表至少包括:浏览器的崩溃模块与对应该崩溃模块的修复信息之间的映射关系。
该获取发送模块62在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给该崩溃分析单元。具体的,该获取发送模块62在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据信息和崩溃配置表信息以参数形式发给崩溃分析单元以便启动崩溃分析单元,该崩溃数据信息包括该崩溃数据名称,该崩溃配置表信息包括崩溃配置表名称。
另外,该浏览器还可以包括:更新模块65,该更新模块65实时更新该设置模块61设置的崩溃配置表。为了保证该崩溃配置表中修改信息的安全性,该修复信息为服务器对对应崩溃模块的配置文件加密后形成的动态链接库(dll)文件。
该启动匹配模块63启动上述崩溃分析单元分析崩溃数据得出上述浏览器产生崩溃的模块,并与上述崩溃配置表进行匹配。
具体地,该启动匹配模块63调用该崩溃分析单元例如微软的dbughelp.dll模块分析崩溃数据得出上述应用软件产生崩溃的崩溃模块名称、崩溃模块版本、崩溃模块偏移等信息。
另外,该崩溃配置表还包括应用软件的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本。因此,该启动匹配模块63的匹配过程为:将分析得出的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本与上述崩溃配置表中的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本对应地进行匹配。
该显示模块64将与上述崩溃配置表中的崩溃模块相匹配的修复信息在浏览器侧进行加载显示。
具体地,该显示模块64将与上述崩溃配置表中的崩溃模块相匹配的升级提示信息在浏览器侧进行加载显示;或者,将与上述崩溃配置表中的崩溃模块相匹配的重启提示信息在浏览器侧进行加载显示;或者,将与上述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在浏览器侧进行加载显示。
另外,该浏览器还包括:修复重启模块66,适于在上述显示模块64将与上述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在浏览器侧进行加载显示之后,若收到修复响应,则加载对应崩溃模块的修复信息完成修复并自动重启。比如Flash32_11_5_502_146.ocx模块崩溃了,浏览器匹配到这个模块崩溃后会提示一键修复,用户点击一键修复,会加载flashfix.dll进行修复,修复完重启浏览器即可解决浏览器崩溃问题。
进一步地,显示模块64,还适于:在启动匹配模块63启动崩溃分析单元分析崩溃数据得出浏览器产生崩溃的模块,并与崩溃配置表进行匹配失败之后,则在浏览器侧加载显示崩溃提示。
具有上述结构的浏览器可以为网页浏览器。
上述进行崩溃处理的浏览器,通过启动崩溃分析单元分析崩溃数据得出浏览器产生崩溃的模块,并与崩溃配置表进行匹配,将与崩溃配置表中的崩溃模块相匹配的修复信息在浏览器侧进行加载显示,实现了在浏览器自身就可以进行初次的浏览器崩溃模块的分析,并结合服务器侧的配置文件,快速下发解决方案,极大地提高了浏览器崩溃的解决效率。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明实施例揭示了A1、一种应用软件进行崩溃处理的方法,包括:在应用软件侧设置崩溃分析单元和崩溃配置表,其中所述崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给所述崩溃分析单元;启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的模块,并与所述崩溃配置表进行匹配;以及将与所述崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示。A2、根据A1所述的方法,其特征在于,所述在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给所述崩溃分析单元,包括:在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据的信息和崩溃配置表的信息以参数形式发给所述崩溃分析单元以便启动所述崩溃分析单元,该崩溃数据的信息包括该崩溃数据名称,该崩溃配置表的信息包括崩溃配置表名称。A3、根据A1所述的方法,其特征在于,所述方法还包括:实时更新所述崩溃配置表,所述崩溃配置表中的修复信息为服务器对对应崩溃模块的配置文件加密后形成的动态链接库(dll)文件。A4、根据A1所述的方法,其特征在于,所述崩溃配置表还包括应用软件的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本。A5、根据A4所述的方法,其特征在于,所述启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的模块,并与所述崩溃配置表进行匹配,包括:启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本,将得出的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本与所述崩溃配置表中的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本对应地进行匹配。A6、根据A1-A5任一项所述的方法,其特征在于,所述启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的模块,并与所述崩溃配置表进行匹配之后,该方法还包括:若匹配失败,则在应用软件侧加载显示崩溃提示。A7、根据A3所述的方法,其特征在于,所述将与所述崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示,包括:将与所述崩溃配置表中的崩溃模块相匹配的升级提示信息在应用软件侧进行加载显示;或者将与所述崩溃配置表中的崩溃模块相匹配的重启提示信息在应用软件侧进行加载显示;或者将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示。A8、根据A7所述的方法,其特征在于,所述将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示之后,该方法还包括:收到修复响应,加载对应崩溃模块的修复信息完成修复并自动重启。A9、根据A1所述的方法,其特征在于,所述应用软件包括:网页浏览器,对应的所述崩溃分析单元包括dbughelp.dll模块。
本发明实施例揭示了B10、一种进行崩溃处理的浏览器,包括:设置模块,适于在浏览器侧设置崩溃分析单元和崩溃配置表,其中所述崩溃配置表至少包括:浏览器的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;获取发送模块,适于在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给所述崩溃分析单元;启动匹配模块,适于启动所述崩溃分析单元分析崩溃数据得出所述浏览器产生崩溃的模块,并与所述崩溃配置表进行匹配;以及显示模块,适于将与所述崩溃配置表中的崩溃模块相匹配的修复信息在浏览器侧进行加载显示。B11、根据B10所述的浏览器,其特征在于,所述获取发送模块,具体适于:在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据信息和崩溃配置表信息以参数形式发给所述崩溃分析单元以便启动所述崩溃分析单元,该崩溃数据信息包括该崩溃数据名称,该崩溃配置表信息包括崩溃配置表名称。B12、根据B10所述的浏览器,其特征在于,所述浏览器还包括:更新模块,适于实时更新所述设置模块设置的所述崩溃配置表,所述崩溃配置表中的修复信息为服务器对对应崩溃模块的配置文件加密后形成的动态链接库(dll)文件。B13、根据B10所述的浏览器,其特征在于,所述崩溃配置表还包括浏览器的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本。B14、根据B13所述的浏览器,其特征在于,所述启动匹配模块,具体适于:启动所述崩溃分析单元分析崩溃数据得出所述浏览器产生崩溃的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本,将得出的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本与所述崩溃配置表中的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本对应地进行匹配。B15、根据B10-B14任一项所述的浏览器,其特征在于,所述显示模块,还适于:在所述启动匹配模块启动所述崩溃分析单元分析崩溃数据得出所述浏览器产生崩溃的模块,并与所述崩溃配置表进行匹配失败之后,则在浏览器侧加载显示崩溃提示。B16、根据B12所述的浏览器,其特征在于,所述显示模块,具体适于:将与所述崩溃配置表中的崩溃模块相匹配的升级提示信息在浏览器侧进行加载显示;或者将与所述崩溃配置表中的崩溃模块相匹配的重启提示信息在浏览器侧进行加载显示;或者将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在浏览器侧进行加载显示。B17、根据B16所述的浏览器,其特征在于,该浏览器还包括:修复重启模块,适于在所述显示模块将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在浏览器侧进行加载显示之后,若收到修复响应,则加载对应崩溃模块的修复信息完成修复并自动重启。B18、根据B10所述的浏览器,其特征在于,所述浏览器包括:网页浏览器,对应的所述崩溃分析单元包括dbughelp.dll模块。

Claims (10)

1.一种应用软件进行崩溃处理的方法,包括:
在应用软件侧设置崩溃分析单元和崩溃配置表,其中所述崩溃配置表至少包括:应用软件的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;
在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给所述崩溃分析单元;
启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的模块,并与所述崩溃配置表进行匹配;以及
将与所述崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示,具体包括:将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示;
其中,所述应用软件包括:网页浏览器,对应的所述崩溃分析单元包括dbughelp.dll模块;并且,所述方法还包括:实时更新所述崩溃配置表,且所述崩溃配置表中的修复信息包括服务器对对应崩溃模块的配置文件加密后形成的动态链接库(dll)文件;
并且,所述崩溃配置表还包括应用软件的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本;所述启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的模块,并与所述崩溃配置表进行匹配,包括:启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本,将得出的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本与所述崩溃配置表中的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本对应地进行匹配。
2.根据权利要求1所述的方法,其特征在于,所述在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给所述崩溃分析单元,包括:
在应用软件产生崩溃时获取崩溃数据,并将该崩溃数据的信息和崩溃配置表的信息以参数形式发给所述崩溃分析单元以便启动所述崩溃分析单元,该崩溃数据的信息包括该崩溃数据名称,该崩溃配置表的信息包括崩溃配置表名称。
3.根据权利要求1或2所述的方法,其特征在于,所述启动所述崩溃分析单元分析崩溃数据得出所述应用软件产生崩溃的模块,并与所述崩溃配置表进行匹配之后,该方法还包括:若匹配失败,则在应用软件侧加载显示崩溃提示。
4.根据权利要求1所述的方法,其特征在于,所述将与所述崩溃配置表中的崩溃模块相匹配的修复信息在应用软件侧进行加载显示,进一步包括:将与所述崩溃配置表中的崩溃模块相匹配的升级提示信息在应用软件侧进行加载显示;或者将与所述崩溃配置表中的崩溃模块相匹配的重启提示信息在应用软件侧进行加载显示。
5.根据权利要求4所述的方法,其特征在于,所述将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示之后,该方法还包括:收到修复响应,加载对应崩溃模块的修复信息完成修复并自动重启。
6.一种进行崩溃处理的浏览器,包括:
设置模块,适于在浏览器侧设置崩溃分析单元和崩溃配置表,其中所述崩溃配置表至少包括:浏览器的崩溃模块与对应该崩溃模块的修复信息之间的映射关系;
获取发送模块,适于在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据和崩溃配置表发给所述崩溃分析单元;
启动匹配模块,适于启动所述崩溃分析单元分析崩溃数据得出所述浏览器产生崩溃的模块,并与所述崩溃配置表进行匹配;以及
显示模块,适于将与所述崩溃配置表中的崩溃模块相匹配的修复信息在浏览器侧进行加载显示,具体适于:将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在应用软件侧进行加载显示;
其中,所述浏览器包括:网页浏览器,对应的所述崩溃分析单元包括dbughelp.dll模块;并且,所述浏览器还包括:更新模块,适于实时更新所述设置模块设置的所述崩溃配置表,所述崩溃配置表中的修复信息为服务器对对应崩溃模块的配置文件加密后形成的动态链接库(dll)文件;
并且,所述崩溃配置表还包括浏览器的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本,所述启动匹配模块,具体适于:启动所述崩溃分析单元分析崩溃数据得出所述浏览器产生崩溃的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本,将得出的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本与所述崩溃配置表中的崩溃模块名称和/或崩溃模块偏移和/或崩溃模块版本对应地进行匹配。
7.根据权利要求6所述的浏览器,其特征在于,所述获取发送模块,具体适于:
在浏览器产生崩溃时获取崩溃数据,并将该崩溃数据信息和崩溃配置表信息以参数形式发给所述崩溃分析单元以便启动所述崩溃分析单元,该崩溃数据信息包括该崩溃数据名称,该崩溃配置表信息包括崩溃配置表名称。
8.根据权利要求6或7所述的浏览器,其特征在于,所述显示模块,还适于:在所述启动匹配模块启动所述崩溃分析单元分析崩溃数据得出所述浏览器产生崩溃的模块,并与所述崩溃配置表进行匹配失败之后,则在浏览器侧加载显示崩溃提示。
9.根据权利要求6所述的浏览器,其特征在于,所述显示模块,进一步适于:将与所述崩溃配置表中的崩溃模块相匹配的升级提示信息在浏览器侧进行加载显示;或者将与所述崩溃配置表中的崩溃模块相匹配的重启提示信息在浏览器侧进行加载显示。
10.根据权利要求9所述的浏览器,其特征在于,该浏览器还包括:修复重启模块,适于在所述显示模块将与所述崩溃配置表中的崩溃模块相匹配的一键修复提示信息在浏览器侧进行加载显示之后,若收到修复响应,则加载对应崩溃模块的修复信息完成修复并自动重启。
CN201310194129.6A 2013-05-23 2013-05-23 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器 Expired - Fee Related CN103246578B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310194129.6A CN103246578B (zh) 2013-05-23 2013-05-23 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310194129.6A CN103246578B (zh) 2013-05-23 2013-05-23 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器

Publications (2)

Publication Number Publication Date
CN103246578A CN103246578A (zh) 2013-08-14
CN103246578B true CN103246578B (zh) 2017-08-01

Family

ID=48926108

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310194129.6A Expired - Fee Related CN103246578B (zh) 2013-05-23 2013-05-23 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器

Country Status (1)

Country Link
CN (1) CN103246578B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995715B (zh) * 2014-05-06 2017-11-17 百度在线网络技术(北京)有限公司 应用程序的修复方法、装置及服务器
CN105320853B (zh) * 2014-07-09 2021-03-02 腾讯科技(深圳)有限公司 一种信息监控方法、装置及终端
CN104361076B (zh) * 2014-11-12 2018-02-09 腾讯科技(成都)有限公司 浏览器的异常处理方法和装置
CN104572327A (zh) * 2014-12-24 2015-04-29 北京奇虎科技有限公司 一种浏览器崩溃的处理方法、装置和系统
CN104714856A (zh) * 2015-03-23 2015-06-17 青岛海信宽带多媒体技术有限公司 一种软件修复方法及终端设备
CN105700966B (zh) * 2015-12-30 2018-07-03 广东欧珀移动通信有限公司 一种应用程序出错的处理方法及装置
CN106681853A (zh) * 2016-12-30 2017-05-17 深圳天珑无线科技有限公司 应用崩溃处理方法及移动终端
CN107729180B (zh) * 2017-09-30 2020-07-03 珠海市魅族科技有限公司 异常信息处理方法及装置、计算机装置及可读存储介质
CN109656773B (zh) * 2017-10-12 2023-03-10 卓望数码技术(深圳)有限公司 一种基于ios系统应用异常崩溃的处理框架
CN108108445A (zh) * 2017-12-26 2018-06-01 苏州蜗牛数字科技股份有限公司 一种智能数据处理方法和系统
CN109298960A (zh) * 2018-08-15 2019-02-01 中国平安人寿保险股份有限公司 应用崩溃处理方法、装置、计算机装置及存储介质
CN109783261B (zh) * 2018-12-14 2023-06-06 平安科技(深圳)有限公司 终端应用的崩溃处理方法及装置、电子设备、存储介质
CN109918219A (zh) * 2019-01-28 2019-06-21 努比亚技术有限公司 应用崩溃修复提醒方法、终端及计算机可读存储介质
CN111416857A (zh) * 2020-03-16 2020-07-14 广州市百果园信息技术有限公司 客户端崩溃处理方法、装置、系统、设备和存储介质
CN113110951A (zh) * 2021-04-08 2021-07-13 北京沃东天骏信息技术有限公司 一种崩溃信息处理方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1208719C (zh) * 2002-09-27 2005-06-29 联想(北京)有限公司 应用软件自动安装与自动修复的方法
US20090013208A1 (en) * 2008-03-31 2009-01-08 Dimuzio Thomas M Real time automated exception notification and reporting solution
CN101719836A (zh) * 2008-10-09 2010-06-02 联想(北京)有限公司 一种故障检测方法及装置
CN102436402B (zh) * 2011-03-29 2014-12-10 奇智软件(北京)有限公司 一种软件中的模块修复方法及该软件设备
CN102866930B (zh) * 2012-08-22 2015-11-25 北京奇虎科技有限公司 蓝屏修复方法、装置及系统

Also Published As

Publication number Publication date
CN103246578A (zh) 2013-08-14

Similar Documents

Publication Publication Date Title
CN103246578B (zh) 应用软件进行崩溃处理的方法及进行崩溃处理的浏览器
CN103092993B (zh) 数据导出方法及装置
CN109829096B (zh) 一种数据采集方法、装置、电子设备及存储介质
CN108293081B (zh) 通过用户界面事件的程序重放深度链接到移动应用状态
CN106933609B (zh) Android应用程序安装包的生成方法及装置
WO2016058156A1 (zh) 网页表单元素对齐的方法和装置
US9858094B2 (en) Monitoring and actuation of view controller parameters to reach deep states without manual developer intervention
CN105094913B (zh) 系统、基带固件和系统应用升级方法及装置
TW201640342A (zh) 應用程式頁面快速存取方法及應用其的行動終端
CN105630543A (zh) 一种应用冷启动加速的方法及装置
CN103955495B (zh) 页面子资源的下载方法及装置
CN109101244B (zh) 一种ios系统一体化自动打包方法
CN106126303B (zh) Linux操作系统的安装方法、装置及系统
CN106708704A (zh) 一种对崩溃日志进行分类的方法和装置
CN109445832A (zh) 基于编程语言对应用程序进行热更新的方法以及电子设备
CN104391703B (zh) 快速完成页面布局的装置和方法
CN104866293A (zh) 一种对Android应用程序扩展功能的方法及装置
CN108733370B (zh) 原生app的样式化显示方法、装置、终端及存储介质
CN103605686A (zh) 基于搜索的终端故障解决方案提供方法、服务器和系统
CN112115055A (zh) 一种多机自动化测试方法、装置及计算机设备
CN109191078A (zh) 一种流程业务建模方法、装置及设备
JP6310527B1 (ja) オブジェクト分析装置、オブジェクト分析方法、及びプログラム
CN103544271B (zh) 一种浏览器中加载图片处理窗口的方法和装置
CN107454457A (zh) 切换录屏直播分辨率的方法及装置
CN107590064A (zh) 一种应用升级测试方法、装置和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170801

Termination date: 20210523