专利名称:一种监控应用程序的方法、系统及移动终端的制作方法
技术领域:
本发明属于移动终端领域,尤其涉及一种监控应用程序的方法、系统及移动终端。 背景 技术目前,移动终端中的应用程序越来越多,但当普通的移动终端中的应用程序出现 异常时,不能自动恢复功能,一旦某些应用程序出现异常,特别是一些关键的应用程序出现 异常时,很可能造成移动终端死机或其他严重的问题。
发明内容
本发明实施例的目的在于提供一种监控应用程序的方法,旨在解决现有技术中普 通的移动终端中的应用程序出现异常时,不能自动恢复功能的问题。本发明实施例是这样实现的,一种监控应用程序的方法,所述方法包括以下步 骤获取应用程序的信息,并创建与所述应用程序对应的用于按照预先设定的第一周 期上报应用程序的运行状态的线程,所述应用程序的信息包括与所述应用程序对应的进程 ID、允许使用的最大内存上限、可能出现的异常状态及与所述异常状态对应的处理方式;创建监控对象,将所述监控对象与获取的应用程序的信息进行绑定;判断在预先设置的第二周期内是否接收到所述线程上报的应用程序的运行状态, 所述第二周期大于第一周期,若否,则按照与所述异常状态对应的处理方式处理应用程序; 和/或判断所述应用程序的当前内存是否超过允许使用的最大内存上限,若是,则按照 与所述异常状态对应的处理方式处理应用程序。本发明实施例还提供了一种监控应用程序的系统,所述系统包括获取模块,用于获取应用程序的信息,并创建与所述应用程序对应的用于按照预 先设定的第一周期上报应用程序的运行状态的线程,所述应用程序的信息包括与所述应用 程序对应的进程ID、允许使用的最大内存上限、可能出现的异常状态及与所述异常状态对 应的处理方式;监控对象创建模块,用于创建监控对象,将所述监控对象与获取的应用程序的信 息进行绑定;第一判断模块,用于判断在预先设置的第二周期内是否接收到所述线程上报的应 用程序的运行状态,所述第二周期大于第一周期;和/或第二判断模块,用于判断所述应用程序的当前内存是否超过允许使用的最大内存 上限;处理模块,用于当所述第一判断模块判断在预先设置的第二周期内没有接收到所 述线程上报的应用程序的运行状态时或所述第二判断模块判断所述应用程序的当前内存 超过允许使用的最大内存上限时,则按照与所述异常状态对应的处理方式处理应用程序。
本发明实施例还提供了一种移动终端,所述移动终端包括所述的监控应用程序的 方法。本发明实施例与现有技术相比,有益效果在于通过获取应用程序的可能出现的 异常状态及与所述异常状态对应的处理方式信息,可按照与所述异常状态对应的处理方式 处理应用程序,从而实现自动恢复应用程序的功能。
图1是本发明实施例提供的一种监控应用程序的方法的流程图;
图2是本发明实施例提供的一种监控应用程序的系统的模块框图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。本发明实施例中,通过获取应用程序的可能出现的异常状态及与所述异常状态对 应的处理方式信息,可按照与所述异常状态对应的处理方式处理应用程序,从而实现自动 恢复应用程序的功能。请参阅图1,本发明实施例提供一种监控应用程序的方法,所述方法包括以下步 骤SlOl 获取应用程序的信息,并创建与所述应用程序对应的用于按照预先设定的 第一周期上报应用程序的运行状态的线程,所述应用程序的信息包括与所述应用程序对应 的进程ID、允许使用的最大内存上限、可能出现的异常状态及与所述异常状态对应的处理 方式;S102 创建监控对象,将所述监控对象与获取的应用程序的信息进行绑定;S103:判断在预先设置的第二周期内是否接收到所述线程上报的应用程序的运行 状态,所述第二周期大于第一周期,若否,则进入步骤S105 按照与所述异常状态对应的处 理方式处理应用程序;和/或S104:判断所述应用程序的当前内存是否超过允许使用的最大内存上限,若是,则 进入步骤S105 按照与所述异常状态对应的处理方式处理应用程序。在步骤S103中,若在预先设置的第二周期内接收到所述线程上报的应用程序的 运行状态,则进入步骤S106 不响应。在步骤S104中,若所述应用程序的当前内存没有超过允许使用的最大内存上限, 则进入步骤S107 不响应。作为本发明的一个实施例,所述步骤S102之后还包括以下步骤将监控对象插入监控队列;所述将监控对象插入监控队列之后还包括以下步骤返回给应用程序一个注册ID ;当接收到用户注销所述注册ID的信息时,则将所述注册ID对应的监控对象从监 控队列中移除,以撤销对所述应用程序的监控。
所述当接收到用户注销所述注册ID的信息时,则将所述注册ID对应的监控对象 从监控队列中移除,以撤销对所述应用程序的监控的步骤之后还包括以下步骤更新监控队列。其中,所述创建监控对象,将所述监控对象与获取的应用程序的信息进行绑定,并 将监控对象插入监控队列之后还包括以下步骤更新监控队列。在本发明的实施例中,通过当接收到用户注销所述注册ID的信息时,则将所述注 册ID对应的监控对象从监控队列中移除,可以方便的撤销对应用程序的监控。作为本发明的一个实施例所述步骤S102之后还包括以下步骤将创建的监控对象串联成一个监控队列;在 预先设置的第二周期内遍历所述监控队列。在本发明的实施例中,当有多个应用程序需要监控时,可方便快捷的遍历监控队 列来进行监控。请参阅图2,本发明实施例还提供一种监控应用程序的系统,所述系统包括获取模块201,用于获取应用程序的信息,并创建与所述应用程序对应的用于按照 预先设定的第一周期上报应用程序的运行状态的线程,所述应用程序的信息包括与所述应 用程序对应的进程ID、允许使用的最大内存上限、可能出现的异常状态及与所述异常状态 对应的处理方式;监控对象创建模块202,用于创建监控对象,将所述监控对象与获取的应用程序的 信息进行绑定;第一判断模块203,用于判断在预先设置的第二周期内是否接收到所述线程上报 的应用程序的运行状态,所述第二周期大于第一周期;和/或第二判断模块204,用于判断所述应用程序的当前内存是否超过允许使用的最大 内存上限;处理模块205,用于当所述第一判断模块203判断在预先设置的第二周期内没有 接收到所述线程上报的应用程序的运行状态时或所述第二判断模块204判断所述应用程 序的当前内存超过允许使用的最大内存上限时,则按照与所述异常状态对应的处理方式处
理应用程序。作为本发明的一个实施例,所述系统还包括插入模块,用于将监控对象插入监控队列。作为本发明的一个实施例,所述系统还包括注册ID模块,用于返回给应用程序一个注册ID ;撤销模块,用于当接收到用户注销所述注册ID的信息时,将所述注册ID对应的监 控对象从监控队列中移除,以撤销对所述应用程序的监控。作为本发明的一个实施例,所述系统还包括监控队列模块,用于将创建的监控对象串联成一个监控队列;遍历模块,用于在预先设置的第二周期内遍历所述监控队列。本发明实施例还提供一种移动终端,所述移动终端包括所述的监控应用程序的系 统。
本发明的监控应用程序的方法、系统及移动终端,通过获取应用程序的可能出现 的异常状态及与所述异常状态对应的处理方式信息,可按照与所述异常状态对应的处理方 式处理应用程序,从而实现自动恢复应用程序的功能。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神 和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
一种监控应用程序的方法,其特征在于,所述方法包括以下步骤获取应用程序的信息,并创建与所述应用程序对应的用于按照预先设定的第一周期上报应用程序的运行状态的线程,所述应用程序的信息包括与所述应用程序对应的进程ID、允许使用的最大内存上限、可能出现的异常状态及与所述异常状态对应的处理方式;创建监控对象,将所述监控对象与获取的应用程序的信息进行绑定;判断在预先设置的第二周期内是否接收到所述线程上报的应用程序的运行状态,所述第二周期大于第一周期,若否,则按照与所述异常状态对应的处理方式处理应用程序;和/或判断所述应用程序的当前内存是否超过允许使用的最大内存上限,若是,则按照与所述异常状态对应的处理方式处理应用程序。
2.如权利要求1所述的监控应用程序的方法,其特征在于,所述创建监控对象,将所述 监控对象与获取的应用程序的信息进行绑定的步骤之后还包括以下步骤将监控对象插入监控队列。
3.如权利要求2所述的监控应用程序的方法,其特征在于,所述将监控对象插入监控 队列的步骤之后还包括以下步骤返回给应用程序一个注册ID ;当接收到用户注销所述注册ID的信息时,则将所述注册ID对应的监控对象从监控队 列中移除,以撤销对所述应用程序的监控。
4.如权利要求1所述的监控应用程序的方法,其特征在于,所述创建监控对象,将所述 监控对象与获取的应用程序的信息进行绑定的步骤之后还包括以下步骤将创建的监控对象串联成一个监控队列;在预先设置的第二周期内遍历所述监控队列。
5.一种监控应用程序的系统,其特征在于,所述系统包括获取模块,用于获取应用程序的信息,并创建与所述应用程序对应的用于按照预先设 定的第一周期上报应用程序的运行状态的线程,所述应用程序的信息包括与所述应用程序 对应的进程ID、允许使用的最大内存上限、可能出现的异常状态及与所述异常状态对应的 处理方式;监控对象创建模块,用于创建监控对象,将所述监控对象与获取的应用程序的信息进 行绑定;第一判断模块,用于判断在预先设置的第二周期内是否接收到所述线程上报的应用程 序的运行状态,所述第二周期大于第一周期;和/或第二判断模块,用于判断所述应用程序的当前内存是否超过允许使用的最大内存上限;处理模块,用于当所述第一判断模块判断在预先设置的第二周期内没有接收到所述线 程上报的应用程序的运行状态时或所述第二判断模块判断所述应用程序的当前内存超过 允许使用的最大内存上限时,则按照与所述异常状态对应的处理方式处理应用程序。
6.如权利要求5所述的监控应用程序的系统,其特征在于,所述系统还包括插入模块,用于将监控对象插入监控队列。
7.如权利要求6所述的监控应用程序的系统,其特征在于,所述系统还包括注册ID模块,用于返回给应用程序一个注册ID ;撤销模块,用于当接收到用户注销所述注册ID的信息时,将所述注册ID对应的监控对 象从监控队列中移除,以撤销对所述应用程序的监控。
8.如权利要求5所述的监控应用程序的系统,其特征在于,所述系统还包括 监控队列模块,用于将创建的监控对象串联成一个监控队列;遍历模块,用于在预先设置的第二周期内遍历所述监控队列。
9.一种移动终端,其特征在于,所述移动终端包括权利要求5所述的监控应用程序的 系统。
全文摘要
本发明适用于移动终端领域,提供了一种监控应用程序的方法、系统及移动终端,所述方法包括以下步骤获取应用程序的信息,并创建与所述应用程序对应的用于按照预先设定的第一周期上报应用程序的运行状态的线程;创建监控对象,将所述监控对象与获取的应用程序的信息进行绑定;判断在预先设置的第二周期内是否接收到所述线程上报的应用程序的运行状态,若否,则按照与所述异常状态对应的处理方式处理应用程序。本发明的监控应用程序的方法、系统及移动终端,通过获取应用程序的可能出现的异常状态及与所述异常状态对应的处理方式信息,可按照与所述异常状态对应的处理方式处理应用程序,从而实现自动恢复应用程序的功能。
文档编号G06F11/36GK101859275SQ20101011992
公开日2010年10月13日 申请日期2010年3月8日 优先权日2010年3月8日
发明者王斌 申请人:宇龙计算机通信科技(深圳)有限公司