CN109344035A - 一种应用程序的运行控制方法、装置、设备及存储介质 - Google Patents
一种应用程序的运行控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN109344035A CN109344035A CN201811161438.2A CN201811161438A CN109344035A CN 109344035 A CN109344035 A CN 109344035A CN 201811161438 A CN201811161438 A CN 201811161438A CN 109344035 A CN109344035 A CN 109344035A
- Authority
- CN
- China
- Prior art keywords
- plug
- unit
- application program
- monitoring
- collapse
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 109
- 238000003860 storage Methods 0.000 title claims abstract description 33
- 238000012544 monitoring process Methods 0.000 claims abstract description 132
- 230000005856 abnormality Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 31
- 238000012545 processing Methods 0.000 description 18
- 230000006854 communication Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000004904 shortening Methods 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000005611 electricity Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012905 input function Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000010977 unit operation Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本说明书实施例提供了一种应用程序的运行控制方法、装置、设备及存储介质。其方法包括:在应用程序加载的插件运行过程中,监测所述插件;监测到预定的崩溃特征后,重启所述应用程序或者所述插件。本发明实施例中,对应用程序加载的插件进行监测,若监测到预定的崩溃特征,则意味着插件崩溃,自动重启该应用程序或者插件,省去了用户查找应用程序或应用程序运行的网页网址并手动重启的时间,缩短了应用程序所执行的业务功能的中断时间,提高了业务功能的流畅度及稳定性。
Description
技术领域
本说明书实施例涉及计算机技术领域,尤其涉及一种应用程序的运行控制方法、装置、设备及存储介质。
背景技术
微端(又称微型客户端)程序是存储和运行所占用的存储空间极小的应用程序,广泛应用于网络游戏等场景。一种常见的微端程序形式是将网页封装为客户端。为了提高微端程序运行性能和/或展示效果,往往在微端程序中加载插件。插件在运行过程中一旦崩溃,会导致微端程序闪退,需要用户在设备上找到该微端程序的图标,并手动重启该微端程序,这一过程较为复杂,影响微端程序所执行的业务功能的流畅度及稳定性。
类似的,为了提高网页的展示效果,在浏览器显示网页是往往也会加载插件,插件在运行过程中一旦崩溃,会导致浏览器关闭、网页关闭或网页错误,需要用户在浏览器中查找或输入网址,重新打开网页,这一过程较为复杂,影响网页所执行的业务功能的流畅度及稳定性。
发明内容
鉴于插件崩溃后手动重启应用程序影响业务功能的流畅度和稳定性的问题,本发明提出了一种应用程序的运行控制方法及相应的装置、计算机设备及计算机可读存储介质,在监测到插件崩溃后,自动重启应用程序或者插件。
第一方面,本发明实施例提供了一种应用程序的运行控制方法,该方法包括:
在应用程序加载的插件运行过程中,监测该插件;
监测到预定的崩溃特征后,重启该应用程序或者该插件。
本发明实施例提供的方法,对应用程序加载的插件进行监测,若监测到预定的崩溃特征,则意味着插件崩溃,自动重启该应用程序或者插件,省去了用户查找应用程序或应用程序运行的网页网址并手动重启的时间,缩短了应用程序所执行的业务功能的中断时间,提高了业务功能的流畅度及稳定性。
结合第一方面,在本发明实施例的第一方面的第一种实现方式中,在应用程序加载的插件运行过程中,监测该插件,其实现方式可以是:
上述应用程序加载上述插件,并在该应用程序对应的存储空间中查找监控代码,执行该监控代码监测该插件。
应用程序对应的存储空间用于保存应用程序的代码以及执行过程中所产生的数据,监控代码保存在应用程序对应的存储空间中,也就是说,监控代码是应用程序代码的一部分,不需要跨程序调用监控代码,其实现复杂度较低,且效率较高。
该实现方式尤其适用于微端程序。
结合第一方面,在本发明实施例的第一方面的第二种实现方式中,在应用程序加载的插件运行过程中,监测该插件,其具体实现方式还可以是:
上述应用程序获取待加载网页的数据,该数据包括网页内容、上述插件和监控代码;
上述应用程序加载该网页内容和该插件,且该应用程序或该插件执行该监控代码监测该插件。
待加载网页的数据中包括监控代码,即将监控代码下载到应用程序所在设备的本地,在本地执行监控代码以监视该插件。对于不包括监控代码的应用程序而言,采用这种方式仍然可以实现对插件的监控,从而实现插件崩溃后的自动重启。
该实现方式尤其适用于浏览器加载网页及插件的场景。
结合第一方面、或第一方面的第一种实现方式、或第一方面的第二种实现方式,在本发明实施例的第一方面的第四种实现方式中,监测上述插件具体可以包括:对该插件的运行数据存储空间进行监测,该运行数据存储空间用于以文件形式保存该插件运行过程中所产生的数据。
监测插件的目的在于及时发现插件崩溃,由于插件运行过程中所产生的数据均会保存在运行数据存储空间中,因此,一种较为简单、快捷的监测方式就是监测插件的运行数据存储空间。
结合第一方面的第四种实现方式,本发明实施例提供的第一方面的第五种实现方式中,上述预定的崩溃特征为崩溃报告文件,相应的,监测到预定的崩溃特征后,重启上述应用程序或者上述插件,其具体实现方式可以是:在上述运行数据存储空间中监测到该插件的崩溃报告文件后,重启该应用程序或者该插件。
若插件崩溃,通常会产生崩溃报告文件,因此,若在运行数据存储空间中监测到该插件的崩溃报告文件,意味着该插件崩溃,自动重启该应用程序或者插件,这种实现方式简单、高效、准确性高,不会产生误判断。
结合第一方面的第四种实现方式,本发明实施例提供的第一方面的第六种实现方式中,监测到预定的崩溃特征后,重启上述应用程序或者上述插件,其具体实现方式可以是:在上述运行数据存储空间中监测到上述插件的日志文件中存在预定的崩溃特征后,重启该应用程序或者该插件。
即使插件崩溃后不会产生崩溃报告文件,也会在插件的日志文件中留有痕迹,即插件崩溃,在插件的日志文件中会记录预定的崩溃特征,因此,若监测到上述运行数据存储空间中日志文件存在崩溃特征,即认为插件崩溃,自动重启应用程序或插件。
结合第一方面、或第一方面的第一种实现方式、或第一方面的第二种实现方式,在本发明实施例的第一方面的第七种实现方式中,监测上述插件具体可以包括:对该插件对应的进程或线程的状态进行监测;相应的,预定的崩溃特征包括该插件对应的进程或线程的异常状态,监测到预定的崩溃特征后,重启上述应用程序或者上述插件具体可以包括:监测到该插件对应的进程或线程的异常状态后,重启该应用程序或者该插件。
若插件崩溃,那么插件对应的进程或者线程会处于异常状态,例如CPU占用率过高或者为零等等,因此也可以通过监测插件对应的进程或者线程的状态来判断插件是否崩溃。
结合第一方面、或第一方面的第一种实现方式、或第一方面的第二种实现方式,在本发明实施例的第一方面的第八种实现方式中,监测到预定的崩溃特征后,重启上述应用程序或者上述插件之前,还可以输出重启提示信息。
输出重启提示信息,告知用户应用程序或者插件需要重启,以避免用户由于应用程序或插件突然自动重启而有误操作行为。
第二方面,本发明实施例提供了一种应用程序的运行控制装置,该装置包括:
插件监测模块,用于在应用程序加载的插件运行过程中,监测该插件;
重启控制模块,用于监测到预定的崩溃特征后,重启该应用程序或者该插件。
本发明实施例提供的装置,对应用程序加载的插件进行监测,若监测到预定的崩溃特征,则意味着插件崩溃,自动重启该应用程序或者插件,省去了用户查找应用程序或应用程序运行的网页网址并手动重启的时间,缩短了应用程序所执行的业务功能的中断时间,提高了业务功能的流畅度及稳定性。
结合第二方面,在本发明实施例的第二方面的第一种实现方式中,插件监测模块具体可以用于:通过上述应用程序加载上述插件,并在该应用程序对应的存储空间中查找监控代码,执行该监控代码监测该插件。
应用程序对应的存储空间用于保存应用程序的代码以及执行过程中所产生的数据,监控代码保存在应用程序对应的存储空间中,也就是说,监控代码是应用程序代码的一部分,不需要跨程序调用监控代码,其实现复杂度较低,且效率较高。
该实现方式尤其适用于微端程序。
结合第二方面,在本发明实施例的第二方面的第二种实现方式中,插件监测模块具体可以用于:
通过上述应用程序获取待加载网页的数据,该数据包括网页内容、上述插件和监控代码;
通过上述应用程序加载该网页内容和该插件,且该应用程序或该插件执行该监控代码监测该插件。
待加载网页的数据中包括监控代码,即将监控代码下载到应用程序所在设备的本地,在本地执行监控代码以监视该插件。对于不包括监控代码的应用程序而言,采用这种方式仍然可以实现对插件的监控,从而实现插件崩溃后的自动重启。
该实现方式尤其适用于浏览器加载网页及插件的场景。
结合第二方面、或第二方面的第一种实现方式、或第二方面的第二种实现方式,在本发明实施例的第二方面的第四种实现方式中,插件监测模块具体可以用于:对该插件的运行数据存储空间进行监测,该运行数据存储空间用于以文件形式保存该插件运行过程中所产生的数据。
监测插件的目的在于及时发现插件崩溃,由于插件运行过程中所产生的数据均会保存在运行数据存储空间中,因此,一种较为简单、快捷的监测方式就是监测插件的运行数据存储空间。
结合第二方面的第四种实现方式,本发明实施例提供的第二方面的第五种实现方式中,上述预定的崩溃特征为崩溃报告文件,相应的,重启控制模块具体可以用于:在上述运行数据存储空间中监测到该插件的崩溃报告文件后,重启该应用程序或者该插件。
若插件崩溃,通常会产生崩溃报告文件,因此,若在运行数据存储空间中监测到该插件的崩溃报告文件,意味着该插件崩溃,自动重启该应用程序或者插件,这种实现方式简单、高效、准确性高,不会产生误判断。
结合第二方面的第四种实现方式,本发明实施例提供的第二方面的第六种实现方式中,重启控制模块具体可以用于:在上述运行数据存储空间中监测到上述插件的日志文件中存在预定的崩溃特征后,重启该应用程序或者该插件。
即使插件崩溃后不会产生崩溃报告文件,也会在插件的日志文件中留有痕迹,即插件崩溃,在插件的日志文件中会记录预定的崩溃特征,因此,若监测到上述运行数据存储空间中日志文件存在崩溃特征,即认为插件崩溃,自动重启应用程序或插件。
结合第二方面、或第二方面的第一种实现方式、或第二方面的第二种实现方式,在本发明实施例的第二方面的第七种实现方式中,插件监测模块具体可以用于:对该插件对应的进程或线程的状态进行监测;相应的,预定的崩溃特征包括该插件对应的进程或线程的异常状态,重启控制模块具体可以用于:监测到该插件对应的进程或线程的异常状态后,重启该应用程序或者该插件。
若插件崩溃,那么插件对应的进程或者线程会处于异常状态,例如CPU占用率过高或者为零等等,因此也可以通过监测插件对应的进程或者线程的状态来判断插件是否崩溃。
结合第二方面、或第二方面的第一种实现方式、或第二方面的第二种实现方式,在本发明实施例的第二方面的第八种实现方式中,上述装置还可以包括重启提示模块,用于:监测到预定的崩溃特征后,重启上述应用程序或者上述插件之前,还可以输出重启提示信息。
输出重启提示信息,告知用户应用程序或者插件需要重启,以避免用户由于应用程序或插件突然自动重启而有误操作行为。
第三方面,本发明实施例提供了一种计算机设备,其包括处理器和存储器:
存储器用于存储执行上述任意实施例中的方法的程序;
处理器被配置为用于执行该存储器中存储的程序。
第四方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述任意实施例中的方法。
本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了实现本发明实施例应用程序的运行控制方法的个人计算机结构示意图;
图2示出了实现本发明实施例应用程序的运行控制方法的手机结构示意图;
图3示出了根据本发明一个实施例的应用程序的运行控制方法流程图;
图4示出了根据本发明一个实施例的应用程序的运行控制装置的框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如301、302等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的方法可以运行在个人计算机上,如图1所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该个人计算机可以为包括台式机(Desktop)、一体机、笔记本电脑、平板电脑、PDA(Personal Digital Assistant,个人数字助理)等。
图1示出的是与本发明实施例提供的方法实施例相关的个人计算机的部分结构的框图。参考图1,个人计算机包括:电源110、主板120、中央处理器(Central PrecessingUnit,CPU)130、系统总线140、内存储器150、磁盘160、输入单元170、显示单元180、网卡190等部件。本领域技术人员可以理解,图1中示出的个人计算机结构并不构成对个人计算机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对个人计算机的各个构成部件进行具体的介绍:
电源110用于将220V交流转换为5V,12V,3.3V直流电供给个人计算机中的各个部件,优选的,电源可以通过电源管理系统与中央处理器130逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
主板120是个人计算机中各个部件工作的平台,提供部件之间的电连接通路,各个部件通过主板进行电信号传输,各个部件通过插接、焊接等方式安装在主板上。
中央处理器130是个人计算机的控制中心,主要包括算术逻辑运算单元(ALU,Arithmetic Logic Unit)131、程序计数器(PC,Program Counter)132、寄存器组133、高速缓冲存储器(Cache)134以及用于传输数据、控制及状态的总线(Bus)接口135。其中,算术逻辑运算单元131执行各种算术和逻辑运算操作的部件,基本操作包括加、减、乘、除四则运算,与、或、非、异或、移位运算,以及关系运算和逻辑运算等操作。程序计数器132是中央处理器130控制部件中的寄存器,用于存放下一条指令的地址;寄存器组133包括通用寄存器、专用寄存器和控制寄存器。寄存器拥有非常高的读写速度,所以在寄存器之间的数据传送非常快。高速缓冲存储器134是由SRAM(Static Random Access Memory,静态随机存取存储器)组成的高速低容量存储器,用于缓存常用的指令与数据。总线接口135用于中央处理器130与其它部件间传输信息。中央处理器130通过运行或执行存储在内存储器150或磁盘160内的应用程序,以及调用存储在内存储器150或磁盘160内的数据,执行个人计算机的各种功能和处理数据,从而对进行整体监控。
系统总线140是在个人计算机各种部件之间传送信息的公共通信干线,是由导线组成的传输线束。按照个人计算机所传输的信息种类,系统总线可以划分为数据总线(DataBus)、地址总线(Address Bus)和控制总线(Control Bus),分别用来传输数据、数据地址和控制信号。
内存储器150是电子式存储设备,由电路板和芯片组成,特点是体积小,速度快,有电可存,无电清空,即个人计算机在开机状态时内存中可存储数据,关机后将自动清空其中的所有数据。内存储器150可分为SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存储器)内存与DDR(Double Data Rate,双倍速率)内存。应用程序及相关的数据首先被读取到内存储器150中,中央处理器130从内存储器150中读取并加载应用程序。
磁盘160又称外部存储器,其保存有个人计算机运行所需的操作系统、应用程序、数据等等,不会随着个人计算机断电而丢失数据。
输入单元170可用于接收输入的数字或字符信息,以及产生与个人计算机的用户设置以及功能控制有关的键信号输入。输入单元具体又包括I/O控制器和输入设备,其中,I/O控制器用于对输入设备的信号进行适配,并传输到系统总线上。输入单元170可以分为鼠标171、键盘172、触控面板173等。
显示单元180可用于显示由用户输入的信息或提供给用户的信息以及个人计算机的各种菜单。显示单元180可包括显示卡181和显示器182。进一步的,触控面板173可覆盖显示器182的显示面板,当触控面板173检测到在其上或附近的触摸操作后,传送给中央处理器130以确定触摸事件的类型,随后处理器130根据触摸事件的类型在显示器182的显示面板上提供相应的视觉输出。虽然在图1中,触控面板173与显示器182是作为两个独立的部件来实现个人计算机的输入和输出功能,但是在某些实施例中,可以将触控面板173与显示器182的显示面板集成而实现个人计算机的输入和输出功能。
网卡190是工作在数据链路层的网路组件,是局域网中连接个人计算机和传输介质的接口。网卡190又可以分为有线网卡、无线网卡。
尽管未示出,个人计算机还可以包括声卡、扬声器、传声器、摄像头等输入输出单元,以及蓝牙模块等通信单元,在此不再赘述。
在本发明实施例中,该个人计算机所包括的中央处理器130还具有以下功能:
在应用程序加载的插件运行过程中,监测该插件;监测到预定的崩溃特征后,重启该应用程序或者该插件。
其中,应用程序可以是指安装在个人计算机上的微端程序(例如微端网游),也可以是指安装在个人计算机上的浏览器。
本发明实施例提供的方法还可以运行在移动终端上,如图2所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该移动终端可以为包括手机、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以移动终端为手机为例:
图2示出的是与本发明实施例提供的方法实施例相关的手机的部分结构的框图。参考图2,手机包括:射频(Radio Frequency,RF)电路210、存储器220、输入单元230、显示单元240、传感器250、音频电路260、无线保真(wireless-fidelity,Wi-Fi)模块270、处理器280、以及电源290等部件。本领域技术人员可以理解,图2中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图2对手机的各个构成部件进行具体的介绍:
RF电路210可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器280处理;另外,将上行的数据发送给基站。通常,RF电路210包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路210还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System ofMobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband CodeDivision Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器220可用于存储软件程序以及模块,处理器280通过运行存储在存储器220的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元230可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元230可包括触控面板231以及其他输入设备232。触控面板231,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板231上或在触控面板231附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板231可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器280,并能接收处理器280发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板231。除了触控面板231,输入单元230还可以包括其他输入设备232。具体地,其他输入设备232可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元240可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元240可包括显示面板241,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板241。进一步的,触控面板231可覆盖显示面板241,当触控面板231检测到在其上或附近的触摸操作后,传送给处理器280以确定触摸事件的类型,随后处理器280根据触摸事件的类型在显示面板241上提供相应的视觉输出。虽然在图2中,触控面板231与显示面板241是作为两个独立的部件来实现手机的输入和输出功能,但是在某些实施例中,可以将触控面板231与显示面板241集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器250,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板241的亮度,接近传感器可在手机移动到耳边时,关闭显示面板241和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路260、扬声器261,传声器262可提供用户与手机之间的音频接口。音频电路260可将接收到的音频数据转换后的电信号,传输到扬声器261,由扬声器261转换为声音信号输出;另一方面,传声器262将收集的声音信号转换为电信号,由音频电路260接收后转换为音频数据,再将音频数据输出处理器280处理后,经RF电路210以发送给比如另一手机,或者将音频数据输出至存储器220以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块270可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图2示出了WiFi模块270,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器280是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器220内的应用程序和/或模块,以及调用存储在存储器220内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监测。可选的,处理器280可包括一个或多个处理单元;优选的,处理器280可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器280中。
手机还包括给各个部件供电的电源290(比如电池),优选的,电源可以通过电源管理系统与处理器280逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该移动终端所包括的处理器280还具有以下功能:
在应用程序加载的插件运行过程中,监测该插件;监测到预定的崩溃特征后,重启该应用程序或者该插件。
其中,应用程序可以是指安装在移动终端上的微端程序(例如微端网游),也可以是指安装在移动终端上的浏览器。
下面结合附图对上述个人计算机或移动终端实现的应用程序运行控制方法进行详细说明。
如图3所示,本发明实施例提供了一种应用程序的运行控制方法,该方法包括如下步骤:
步骤301、在应用程序加载的插件运行过程中,监测该插件。
步骤302、监测到预定的崩溃特征后,重启该应用程序或者该插件。
其中,崩溃特征是指反映插件崩溃的特征。本发明实施例不对预定的崩溃特征进行具体限定。对于不同的插件,其崩溃特征不尽相同,可以根据实际情况配置崩溃特征。
本发明实施例提供的方法,对应用程序加载的插件进行监测,若监测到预定的崩溃特征,则意味着插件崩溃,自动重启该应用程序或者插件,省去了用户查找应用程序或应用程序运行的网页网址并手动重启的时间,缩短了应用程序所执行的业务功能的中断时间,提高了业务功能的流畅度及稳定性。
应当指出的是,插件崩溃导致应用程序无法正常运行从而造成闪退需要一定的时间、过程。若算力、应用程序的业务逻辑等支持,可以在监测到插件崩溃后,立即对插件进行重启(即重新加载),而不需要重启应用程序,可以进一步提高业务功能的流畅度及稳定性。当然,若仅重启插件也无法保证应用程序继续正常运行,可以对应用程序进行重启。
本发明实施例对其具体实现方式不作限定。例如,可以在监测到插件崩溃(即监测到插件的崩溃特征)后,即重启应用程序;也可以在监测到插件崩溃后,即重启插件,若重启插件后监测到应用程序仍然无法正常运行,则重启应用程序。
另外,本发明实施例中,若重启应用程序,可以实现应用程序重启后,从崩溃断点处继续执行业务功能的业务逻辑。具体的,应用程序运行过程中,会实时保存业务功能执行过程中产生的数据,重启后,根据保存的数据可以识别崩溃断点,进而继续执行业务功能的业务逻辑。
本发明实施例提供的方法,可以但不仅限于通过监控代码实现对插件的监测。监控代码可以是写入应用程序中的代码,也可以是应用程序获取并调用的代码。
若监控代码是写入应用程序的代码,在应用程序加载的插件运行过程中,监测该插件,其实现方式可以是:上述应用程序加载上述插件,并在该应用程序对应的存储空间中查找监控代码,执行该监控代码监测该插件。
其中,应用程序可以同时加载上述插件和监控代码,也可以先加载监控代码再加载插件,还可以先加载插件随即加载监控代码。
应用程序加载插件,是指应用程序查找到该插件的代码,调用进程或线程执行插件的代码。
应用程序在运行前,其代码已经被读取到内存储器或者中央处理器的高速缓冲存储器、寄存器中,因此,应用程序在其对应的存储空间中查找监控代码,具体是指在内存储器或CPU的高速缓冲器、寄存器中对应的存储空间中查找监控代码。
应用程序执行监控代码具体是指调用进程或线程来执行监控代码,实现对插件的监测。
应用程序对应的存储空间用于保存应用程序的代码以及执行过程中所产生的数据,监控代码保存在应用程序对应的存储空间中,也就是说,监控代码是应用程序代码的一部分,不需要跨程序调用监控代码,其实现复杂度较低,且效率较高。
由于微端程序是有程序提供者提供的,程序提供者有对微端程序的代码进行修改的权限,因此该实现方式尤其适用于微端程序。
若监控代码是应用程序获取并调用的代码,在应用程序加载的插件运行过程中,监测该插件,其具体实现方式还可以是:上述应用程序获取待加载网页的数据,该数据包括网页内容、上述插件和监控代码;上述应用程序加载该网页内容和该插件,且该应用程序或该插件执行该监控代码监测该插件。
对于浏览器或者封装网页文件而成的微端程序,其需要加载网页的数据,以进行网页展示。若要加载网页的数据,首先需要从网页服务器请求获取数据,将数据保存到本地。具体的,可以将获取的数据直接保存到内存储器或者CPU的高速缓冲器、寄存器中,也可以将获取的数据保存到磁盘中,再从磁盘中读取数据到内存储器或者CPU的高速缓冲存储器或寄存器。
上述实现方式中,监测代码可以由应用程序执行,也可以由插件执行。执行监测代码,具体是指调用进程或线程执行监测代码。
待加载网页的数据中包括监控代码,即将监控代码下载到应用程序所在设备的本地,在本地执行监控代码以监视该插件。对于不包括监控代码的应用程序而言,采用这种方式仍然可以实现对插件的监控,从而实现插件崩溃后的自动重启。
由于网页提供者往往无法修改浏览器代码,在浏览器代码中加入监控代码,因此,该实现方式尤其适用于浏览器加载网页及插件的场景。
无论是否采用监控代码进行插件的监控,以及无论监控代码以何种方式被调用,监测插件的目的是及时发现插件崩溃,本发明实施例中,监测插件运行过程中所产生的数据、插件的运行状态等等,均可以发现插件崩溃。
若监测插件是指监测插件运行过程中所产生的数据,具体的,对该插件的运行数据存储空间进行监测,该运行数据存储空间用于以文件形式保存该插件运行过程中所产生的数据。
其中,由于插件运行过程中所产生的数据通常实时写入内存储器或者CPU的高速缓冲存储器、寄存器中,因此,插件的运行数据存储空间可以是指内存储器或者CPU的高速缓冲器、寄存器中的存储空间。为了避免系统断电后数据丢失,插件运行过程中所产生的数据还可能被保存到磁盘中,那么,插件的运行数据存储空间可以是指磁盘中的存储空间。
监测插件的目的在于及时发现插件崩溃,由于插件运行过程中所产生的数据均会保存在运行数据存储空间中,因此,一种较为简单、快捷的监测方式就是监测插件的运行数据存储空间。
上述对插件运行过程中所产生的数据进行监测的实现方式中,具体是监测该数据中是否存在预定的崩溃特征。根据预定的崩溃特征不同,上述步骤302的具体实现方式也不同,上述预定的崩溃特征为崩溃报告文件,相应的,监测到预定的崩溃特征后,重启上述应用程序或者上述插件,其具体实现方式可以是:在上述运行数据存储空间中监测到该插件的崩溃报告文件后,重启该应用程序或者该插件。更具体的,可以监测上述运行数据存储空间中新生成的文件的文件名,若监测到崩溃报告的文件名,即表示监测到插件的崩溃报告文件。
其中,可以预先将已知的崩溃报告文件名配置为预定的崩溃特征,将运行数据存储空间中新生成的文件名与崩溃特征进行匹配,若匹配成功则监测到崩溃报告文件名。
以fancy(幻想)插件为例,其崩溃报告文件名为crashreport(崩溃报告)。
应当指出的是,作为崩溃特征的崩溃特征文件名可以但不仅限于包括文件名后缀。
若插件崩溃,通常会产生崩溃报告文件,因此,若在运行数据存储空间中监测到该插件的崩溃报告文件,意味着该插件崩溃,自动重启该应用程序或者插件,这种实现方式简单、高效、准确性高,不会产生误判断。
若预定的崩溃特征是日志文件中的数据,那么,监测到预定的崩溃特征后,重启上述应用程序或者上述插件,其具体实现方式可以是:在上述运行数据存储空间中监测到上述插件的日志文件中存在预定的崩溃特征后,重启该应用程序或者该插件。
其中,日志文件中的崩溃特征可以根据经验预先确定,或者可以通过深度学习等算法建立崩溃特征监测模型,利用该模型进行监测。
即使插件崩溃后不会产生崩溃报告文件,也会在插件的日志文件中留有痕迹,即插件崩溃,在插件的日志文件中会记录预定的崩溃特征,因此,若监测到上述运行数据存储空间中日志文件存在崩溃特征,即认为插件崩溃,自动重启应用程序或插件。
应当指出的是,可以预先配置多种崩溃特征,相应的,可以采用不同手段进行插件的监测。例如,既对运行数据存储空间中新生成的文件名进行监控,也对文件(例如日志文件)的文件内容进行监控。
本发明实施例中,可以按照预定的时间间隔进行监测(例如1毫秒、5毫秒等),也可以在生成新的数据后触发监测。
本发明各个方法实施例中,重启应用程序可以由该应用程序自身实现;也可以由监控代码配合操作系统的核心程序重启应用程序,例如,监控代码监控到插件的崩溃特征后,向核心程序发送重启应用程序的指令,由核心程序重启该应用程序。
本发明各个方法实施例中,重启插件可以由应用程序实现,例如,监控代码监控到插件的崩溃特征后,向应用程序发送重启插件的指令,由应用程序重启该插件。
若监测插件是指监测插件的运行状态,具体的,对该插件对应的进程或线程的状态进行监测;相应的,预定的崩溃特征包括该插件对应的进程或线程的异常状态,监测到预定的崩溃特征后,重启上述应用程序或者上述插件具体可以包括:监测到该插件对应的进程或线程的异常状态后,重启该应用程序或者该插件。
本发明实施例不对插件对应的进程或线程的异常状态具体表现进行限定,可以根据需要或者经验配置。例如,若进程或线程的CPU占用率高于或者低于设定阈值,则该进程或线程处于异常状态。
若插件崩溃,那么插件对应的进程或者线程会处于异常状态,例如CPU占用率过高或者为零等等,因此也可以通过监测插件对应的进程或者线程的状态来判断插件是否崩溃。
在上述任意方法实施例的基础上,监测到预定的崩溃特征后,重启上述应用程序或者上述插件之前,还可以输出重启提示信息。输出重启提示信息,告知用户应用程序或者插件需要重启,以避免用户由于应用程序或插件突然自动重启而有误操作行为。
其中,输出重启提示信息的实现方式有多种,例如,可以通过显示单元输出重启提示信息,该重启提示信息可以但不仅限于以弹窗、屏闪等形式实现。又例如,可以通过扩音器输出重启提示信息,该重启提示信息可以是蜂鸣、提示语音等等。
如图4所示,本发明实施例提供了一种应用程序的运行控制装置,该装置包括:
插件监测模块401,用于在应用程序加载的插件运行过程中,监测该插件;
重启控制模块402,用于监测到预定的崩溃特征后,重启该应用程序或者该插件。
本发明实施例提供的装置,对应用程序加载的插件进行监测,若监测到预定的崩溃特征,则意味着插件崩溃,自动重启该应用程序或者插件,省去了用户查找应用程序或应用程序运行的网页网址并手动重启的时间,缩短了应用程序所执行的业务功能的中断时间,提高了业务功能的流畅度及稳定性。
本发明实施例提供的装置,可以但不仅限于通过监控代码实现对插件的监测。监控代码可以是写入应用程序中的代码,也可以是应用程序获取并调用的代码。
若监控代码是写入应用程序的代码,插件监测模块具体可以用于:通过上述应用程序加载上述插件,并在该应用程序对应的存储空间中查找监控代码,执行该监控代码监测该插件。
应用程序对应的存储空间用于保存应用程序的代码以及执行过程中所产生的数据,监控代码保存在应用程序对应的存储空间中,也就是说,监控代码是应用程序代码的一部分,不需要跨程序调用监控代码,其实现复杂度较低,且效率较高。
该实现方式尤其适用于微端程序。
若监控代码是应用程序获取并调用的代码,插件监测模块具体可以用于:
通过上述应用程序获取待加载网页的数据,该数据包括网页内容、上述插件和监控代码;
通过上述应用程序加载该网页内容和该插件,且该应用程序或该插件执行该监控代码监测该插件。
待加载网页的数据中包括监控代码,即将监控代码下载到应用程序所在设备的本地,在本地执行监控代码以监视该插件。对于不包括监控代码的应用程序而言,采用这种方式仍然可以实现对插件的监控,从而实现插件崩溃后的自动重启。
该实现方式尤其适用于浏览器加载网页及插件的场景。
无论是否采用监控代码进行插件的监控,以及无论监控代码以何种方式被调用,监测插件的目的是及时发现插件崩溃,本发明实施例中,监测插件运行过程中所产生的数据、插件的运行状态等等,均可以发现插件崩溃。
若监测插件是指监测插件运行过程中所产生的数据,具体的,插件监测模块具体可以用于:对该插件的运行数据存储空间进行监测,该运行数据存储空间用于以文件形式保存该插件运行过程中所产生的数据。
监测插件的目的在于及时发现插件崩溃,由于插件运行过程中所产生的数据均会保存在运行数据存储空间中,因此,一种较为简单、快捷的监测方式就是监测插件的运行数据存储空间。
上述对插件运行过程中所产生的数据进行监测的实现方式中,具体是监测该数据中是否存在预定的崩溃特征。根据预定的崩溃特征不同,上述重启控制模块的具体实现方式也不同,上述预定的崩溃特征为崩溃报告文件,重启控制模块具体可以用于:在上述运行数据存储空间中监测到该插件的崩溃报告文件后,重启该应用程序或者该插件。
若插件崩溃,通常会产生崩溃报告文件,因此,若在运行数据存储空间中监测到该插件的崩溃报告文件,意味着该插件崩溃,自动重启该应用程序或者插件,这种实现方式简单、高效、准确性高,不会产生误判断。
若预定的崩溃特征是日志文件中的数据,那么,重启控制模块具体可以用于:在上述运行数据存储空间中监测到上述插件的日志文件中存在预定的崩溃特征后,重启该应用程序或者该插件。
即使插件崩溃后不会产生崩溃报告文件,也会在插件的日志文件中留有痕迹,即插件崩溃,在插件的日志文件中会记录预定的崩溃特征,因此,若监测到上述运行数据存储空间中日志文件存在崩溃特征,即认为插件崩溃,自动重启应用程序或插件。
若监测插件是指监测插件的运行状态,具体的,插件监测模块具体可以用于:对该插件对应的进程或线程的状态进行监测;相应的,预定的崩溃特征包括该插件对应的进程或线程的异常状态,重启控制模块具体可以用于:监测到该插件对应的进程或线程的异常状态后,重启该应用程序或者该插件。
若插件崩溃,那么插件对应的进程或者线程会处于异常状态,例如CPU占用率过高或者为零等等,因此也可以通过监测插件对应的进程或者线程的状态来判断插件是否崩溃。
在上述任意装置实施例的基础上,上述装置还可以包括重启提示模块,用于:监测到预定的崩溃特征后,重启上述应用程序或者上述插件之前,还可以输出重启提示信息。
输出重启提示信息,告知用户应用程序或者插件需要重启,以避免用户由于应用程序或插件突然自动重启而有误操作行为。
本发明实施例提供的应用程序的运行控制装置,其实现方式可以参照上述方法实施例的说明,未尽之处不再赘述。
本发明实施例提供了一种计算机设备,其包括处理器和存储器:存储器用于存储执行上述任意实施例中的方法的程序;处理器被配置为用于执行该存储器中存储的程序。
本发明实施例提供的计算机设备可以是上述的个人计算机,也可以是上述的移动终端。以个人计算机为例,其存储器可以但不仅限于是指CPU寄存器、高速缓冲存储器、内存储器和磁盘,外加远程存储系统共同构成的存储体系。
本发明实施例提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述任意实施例中的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种计算机设备进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本发明公开了:A1、一种应用程序的运行控制方法,其特征在于,包括:
在应用程序加载的插件运行过程中,监测所述插件;
监测到预定的崩溃特征后,重启所述应用程序或者所述插件。
A2、根据A1所述的方法,其特征在于,所述在应用程序加载的插件运行过程中,监测所述插件,包括:
所述应用程序加载所述插件,并在所述应用程序对应的存储空间中查找监控代码,执行所述监控代码监测所述插件,所述应用程序对应的存储空间用于保存所述应用程序的代码和所述应用程序运行过程中所产生的数据。
A3、根据A1所述的方法,其特征在于,所述在应用程序加载的插件运行过程中,监测所述插件,包括:
所述应用程序获取待加载网页的数据,所述数据包括网页内容、所述插件和监控代码;
所述应用程序加载所述网页内容和所述插件,且所述应用程序或所述插件执行所述监控代码监测所述插件。
A4、根据A1~A3任一项所述的方法,其特征在于,所述监测所述插件,包括:
对所述插件的运行数据存储空间进行监测,所述运行数据存储空间用于以文件形式保存所述插件运行过程中所产生的数据。
A5、根据A4所述的方法,其特征在于,所述预定的崩溃特征为崩溃报告文件,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件,包括:
在所述运行数据存储空间中监测到所述插件的崩溃报告文件后,重启所述应用程序或者所述插件。
A6、根据A4所述的方法,其特征在于,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件,包括:
在所述运行数据存储空间中监测到所述插件的日志文件中存在预定的崩溃特征后,重启所述应用程序或者所述插件。
A7、根据A1~A3任一项所述的方法,其特征在于,所述监测所述插件,包括:对所述插件对应的进程或线程的状态进行监测;
所述预定的崩溃特征包括所述插件对应的进程或线程的异常状态,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件,包括:监测到所述插件对应的进程或线程的异常状态后,重启所述应用程序或者所述插件。
A8、根据A1~A3任一项所述的方法,其特征在于,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件之前,该方法还包括:
输出重启提示信息。
B9、一种应用程序的运行控制装置,其特征在于,包括:
插件监测模块,用于在应用程序加载的插件运行过程中,监测所述插件;
重启控制模块,用于监测到预定的崩溃特征后,重启所述应用程序或者所述插件。
B10、根据B9所述的装置,其特征在于,所述插件监测模块用于:
通过所述应用程序加载所述插件,并在所述应用程序对应的存储空间中查找监控代码,执行所述监控代码监测所述插件,所述应用程序对应的存储空间用于保存所述应用程序的代码和所述应用程序运行过程中所产生的数据。
B11、根据B9所述的装置,其特征在于,所述插件监测模块用于:
通过所述应用程序获取待加载网页的数据,所述数据包括网页内容、所述插件和监控代码;
通过所述应用程序加载所述网页内容和所述插件,且所述应用程序或所述插件执行所述监控代码监测所述插件。
B12、根据B9~B11任一项所述的装置,其特征在于,所述插件监测模块用于:
对所述插件的运行数据存储空间进行监测,所述运行数据存储空间用于以文件形式保存所述插件运行过程中所产生的数据。
B13、根据B12所述的装置,其特征在于,所述预定的崩溃特征为崩溃报告文件,所述重启控制模块用于:
在所述运行数据存储空间中监测到所述插件的崩溃报告文件后,重启所述应用程序或者所述插件。
B14、根据B12所述的装置,其特征在于,所述重启控制模块用于:
在所述运行数据存储空间中监测到所述插件的日志文件中存在预定的崩溃特征后,重启所述应用程序或者所述插件。
B15、根据B9~B11任一项所述的装置,其特征在于,所述插件监测模块用于:对所述插件对应的进程或线程的状态进行监测;
所述预定的崩溃特征包括所述插件对应的进程或线程的异常状态,所述重启控制模块用于:监测到所述插件对应的进程或线程的异常状态后,重启所述应用程序或者所述插件。
B16、根据B9~B11任一项所述的装置,其特征在于,所述装置还包括重启提示模块,用于:
监测到预定的崩溃特征后,重启所述应用程序或者所述插件之前,输出重启提示信息。
C17、一种计算机设备,其特征在于,包括处理器和存储器:
所述存储器用于存储执行AA1至A8任一项所述方法的程序;
所述处理器被配置为用于执行所述存储器中存储的程序。
D18、一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现A1至A8任一项所述的方法。
Claims (10)
1.一种应用程序的运行控制方法,其特征在于,包括:
在应用程序加载的插件运行过程中,监测所述插件;
监测到预定的崩溃特征后,重启所述应用程序或者所述插件。
2.根据权利要求1所述的方法,其特征在于,所述在应用程序加载的插件运行过程中,监测所述插件,包括:
所述应用程序加载所述插件,并在所述应用程序对应的存储空间中查找监控代码,执行所述监控代码监测所述插件,所述应用程序对应的存储空间用于保存所述应用程序的代码和所述应用程序运行过程中所产生的数据。
3.根据权利要求1所述的方法,其特征在于,所述在应用程序加载的插件运行过程中,监测所述插件,包括:
所述应用程序获取待加载网页的数据,所述数据包括网页内容、所述插件和监控代码;
所述应用程序加载所述网页内容和所述插件,且所述应用程序或所述插件执行所述监控代码监测所述插件。
4.根据权利要求1~3任一项所述的方法,其特征在于,所述监测所述插件,包括:
对所述插件的运行数据存储空间进行监测,所述运行数据存储空间用于以文件形式保存所述插件运行过程中所产生的数据。
5.根据权利要求4所述的方法,其特征在于,所述预定的崩溃特征为崩溃报告文件,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件,包括:
在所述运行数据存储空间中监测到所述插件的崩溃报告文件后,重启所述应用程序或者所述插件。
6.根据权利要求4所述的方法,其特征在于,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件,包括:
在所述运行数据存储空间中监测到所述插件的日志文件中存在预定的崩溃特征后,重启所述应用程序或者所述插件。
7.根据权利要求1~3任一项所述的方法,其特征在于,所述监测所述插件,包括:对所述插件对应的进程或线程的状态进行监测;
所述预定的崩溃特征包括所述插件对应的进程或线程的异常状态,所述监测到预定的崩溃特征后,重启所述应用程序或者所述插件,包括:监测到所述插件对应的进程或线程的异常状态后,重启所述应用程序或者所述插件。
8.一种应用程序的运行控制装置,其特征在于,包括:
插件监测模块,用于在应用程序加载的插件运行过程中,监测所述插件;
重启控制模块,用于监测到预定的崩溃特征后,重启所述应用程序或者所述插件。
9.一种计算机设备,其特征在于,包括处理器和存储器:
所述存储器用于存储执行权利要求1至7任一项所述方法的程序;
所述处理器被配置为用于执行所述存储器中存储的程序。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811161438.2A CN109344035A (zh) | 2018-09-30 | 2018-09-30 | 一种应用程序的运行控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811161438.2A CN109344035A (zh) | 2018-09-30 | 2018-09-30 | 一种应用程序的运行控制方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109344035A true CN109344035A (zh) | 2019-02-15 |
Family
ID=65308157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811161438.2A Pending CN109344035A (zh) | 2018-09-30 | 2018-09-30 | 一种应用程序的运行控制方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109344035A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110413450A (zh) * | 2019-07-22 | 2019-11-05 | 河南翔宇医疗设备股份有限公司 | 一种处理应用程序崩溃的方法、装置及设备 |
CN114020540A (zh) * | 2022-01-05 | 2022-02-08 | 湖南新云网科技有限公司 | 一种app重启方法、系统、装置及计算机可读存储介质 |
EP4092495A4 (en) * | 2020-01-19 | 2024-01-31 | Sharkgulf Technology (Qingdao) Co., Ltd | DOUBLE INDEPENDENT CONTROL UNIT BASED INTELLIGENT VEHICLE CONTROL SYSTEM AND VEHICLE |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294584A1 (en) * | 2006-04-28 | 2007-12-20 | Microsoft Corporation | Detection and isolation of data items causing computer process crashes |
CN102681891A (zh) * | 2012-05-04 | 2012-09-19 | 奇智软件(北京)有限公司 | 一种浏览器输入控件的进程控制方法和装置 |
CN104424043A (zh) * | 2013-09-02 | 2015-03-18 | 深圳中兴网信科技有限公司 | 一种应用平台与插件间异常隔离的方法及系统 |
CN104536776A (zh) * | 2014-11-28 | 2015-04-22 | 百度在线网络技术(北京)有限公司 | 一种在宿主端插件运行环境中运行插件应用的方法与装置 |
US20150261596A1 (en) * | 2014-03-17 | 2015-09-17 | Microsoft Corporation | Framework for user-mode crash reporting |
CN107357704A (zh) * | 2017-06-27 | 2017-11-17 | 努比亚技术有限公司 | 一种应用程序检测方法、终端及计算机可读存储介质 |
CN107622000A (zh) * | 2017-09-19 | 2018-01-23 | 北京京东尚科信息技术有限公司 | 一种应用程序崩溃信息的收集和上报方法、装置 |
CN107678801A (zh) * | 2017-10-09 | 2018-02-09 | 武汉斗鱼网络科技有限公司 | 一种插件加载的方法和装置 |
-
2018
- 2018-09-30 CN CN201811161438.2A patent/CN109344035A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294584A1 (en) * | 2006-04-28 | 2007-12-20 | Microsoft Corporation | Detection and isolation of data items causing computer process crashes |
CN102681891A (zh) * | 2012-05-04 | 2012-09-19 | 奇智软件(北京)有限公司 | 一种浏览器输入控件的进程控制方法和装置 |
CN104424043A (zh) * | 2013-09-02 | 2015-03-18 | 深圳中兴网信科技有限公司 | 一种应用平台与插件间异常隔离的方法及系统 |
US20150261596A1 (en) * | 2014-03-17 | 2015-09-17 | Microsoft Corporation | Framework for user-mode crash reporting |
CN104536776A (zh) * | 2014-11-28 | 2015-04-22 | 百度在线网络技术(北京)有限公司 | 一种在宿主端插件运行环境中运行插件应用的方法与装置 |
CN107357704A (zh) * | 2017-06-27 | 2017-11-17 | 努比亚技术有限公司 | 一种应用程序检测方法、终端及计算机可读存储介质 |
CN107622000A (zh) * | 2017-09-19 | 2018-01-23 | 北京京东尚科信息技术有限公司 | 一种应用程序崩溃信息的收集和上报方法、装置 |
CN107678801A (zh) * | 2017-10-09 | 2018-02-09 | 武汉斗鱼网络科技有限公司 | 一种插件加载的方法和装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110413450A (zh) * | 2019-07-22 | 2019-11-05 | 河南翔宇医疗设备股份有限公司 | 一种处理应用程序崩溃的方法、装置及设备 |
EP4092495A4 (en) * | 2020-01-19 | 2024-01-31 | Sharkgulf Technology (Qingdao) Co., Ltd | DOUBLE INDEPENDENT CONTROL UNIT BASED INTELLIGENT VEHICLE CONTROL SYSTEM AND VEHICLE |
CN114020540A (zh) * | 2022-01-05 | 2022-02-08 | 湖南新云网科技有限公司 | 一种app重启方法、系统、装置及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106453053B (zh) | 群组消息显示方法及装置 | |
CN107943683B (zh) | 一种测试脚本生成方法、装置、电子设备及存储介质 | |
CN105278937B (zh) | 一种显示弹出框消息的方法及装置 | |
CN106412093B (zh) | 一种数据的上传方法、装置及系统 | |
CN104238893B (zh) | 一种对视频预览图片进行显示的方法和装置 | |
US20160315999A1 (en) | Device and method for associating applications | |
CN106547844B (zh) | 一种用户界面的处理方法和装置 | |
CN108039963B (zh) | 一种容器配置方法、装置及存储介质 | |
CN105389259B (zh) | 一种进行应用程序测试的方法、装置及系统 | |
CN108958805A (zh) | 菜单显示方法及装置 | |
WO2014180171A1 (en) | Method, apparatus and terminal for selecting content | |
CN109246233A (zh) | 基于在线监控的数据处理方法、装置、设备及存储介质 | |
CN105868319B (zh) | 网页加载方法及装置 | |
CN110196795A (zh) | 检测移动终端应用运行状态的方法及相关装置 | |
CN109344035A (zh) | 一种应用程序的运行控制方法、装置、设备及存储介质 | |
WO2020057231A1 (zh) | 引擎适配方法、相关设备以及计算机可读存储介质 | |
CN109067981A (zh) | 分屏应用切换方法、装置、存储介质和电子设备 | |
CN108320148A (zh) | 一种资源转移方法及相关设备 | |
CN109743724A (zh) | 一种嵌入式sim卡的管理方法及移动终端 | |
CN109358931A (zh) | 一种界面显示方法及终端 | |
US20140372930A1 (en) | Method and device for displaying a list view through a sliding operation | |
CN109117054A (zh) | 一种显示控制方法及终端 | |
CN106708555B (zh) | 一种加载插件的方法和装置 | |
CN108804151A (zh) | 一种重启应用程序的方法及终端 | |
CN110012152A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190215 |