代码缺陷的处理方法和装置与流程

文档序号:12664641阅读:513来源:国知局
代码缺陷的处理方法和装置与流程

本发明涉及计算机应用领域,特别是涉及一种代码缺陷的处理方法和装置。



背景技术:

因Android碎片化的问题,Android应用的开发者经常会遇到在自己的测试机型的移动终端上没有问题,而在其他机型的移动终端会发生问题的现象。此时需要根据其他移动终端发生的问题查找原因,并尽量修改为兼容不同移动终端的修复包。其中,Android碎片化是指Android系统的版本有很多,每个版本的功能可能有不同的差异,或者使用Android系统的厂商很多,每个厂商可能根据自己的需求修改底层内容,使得相同的安装包安装到不同机械的移动终端上可能会发生不同的现象。

对于代码缺陷导致无法适应各种机型的问题,传统的处理方式是每次针对各个厂商反馈的问题,修复缺陷后,需要重新生成一个修复包,将修复包发送给各个厂商进行测试,处理缺陷效率低下。



技术实现要素:

基于此,本发明实施例提供一种代码缺陷的处理方法和装置,能提高代码缺陷的处理效率。

一种代码缺陷的处理方法,包括:

启动并运行应用程序;

获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息;

检测所述应用程序的代码文件中的缺陷标识,并从所述缺陷配置文件中读取所述缺陷标识对应的设备信息集合;

判断所述终端的设备信息是否在所述设备信息集合中;

若所述设备信息在所述设备信息集合中,则从所述应用程序的代码文件中找出与所述缺陷标识对应的修复代码,并执行所述修复代码。

一种代码缺陷的处理装置,包括:

启动模块,用于启动并运行应用程序;

获取模块,用于获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息;

读取模块,用于检测所述应用程序的代码文件中的缺陷标识,从所述缺陷配置文件中读取与所述缺陷标识对应的设备信息集合;

判断模块,用于判断所述终端的设备信息是否在所述设备信息集合中;

执行模块,用于若所述设备信息在所述设备信息集合中,则从所述应用程序的代码文件中找出与所述缺陷标识对应的修复代码,并执行所述修复代码。

上述代码缺陷的处理方法和装置,启动并运行应用程序后,获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息,检测应用程序的代码文件中的缺陷标识时,从缺陷配置文件中获取与所述缺陷标识对应的设备信息集合,判断终端的设备信息是否在缺陷配置文件的与缺陷标识对应的设备信息集合中,若在,则执行修复代码,快速实现了代码缺陷的处理,不需要修改本地代码,提高了代码缺陷的处理效率。

附图说明

图1为一个实施例中代码缺陷的处理方法的应用环境示意图;

图2A为一个实施例中终端的内部结构示意图;

图2B为一个实施例中服务器的内部结构示意图;

图3为一个实施例中代码缺陷的处理方法的流程图;

图4为另一个实施例中代码缺陷的处理方法的流程图;

图5为一个实施例中代码缺陷的处理方法的流程图;

图6为一个实施例中代码缺陷的处理方法的流程图;

图7为一个实施例中代码缺陷的处理装置的结构框图;

图8为另一个实施例中代码缺陷的处理装置的结构框图;

图9为另一个实施例中代码缺陷的处理装置的结构框图;

图10为另一个实施例中代码缺陷的处理装置的结构框图;

图11为另一个实施例中代码缺陷的处理装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。

图1为一个实施例中代码缺陷的处理方法的应用环境示意图。如图1所示,该应用环境包括终端110和服务器120。终端110与服务器120进行数据通信。服务器120上存储有应用程序对应的缺陷配置文件。该缺陷配置文件中记载有设备信息和缺陷标识等。终端110运行应用程序后从服务器120上下载更新的缺陷配置文件,并获取终端的设备信息,当执行到缺陷标识时,读取该缺陷配置文件与缺陷标识对应的设备信息集合,如终端的设备信息在该缺陷配置文件的与缺陷标识对应的设备信息集合中,则执行该与缺陷标识对应的修复代码,以对代码缺陷进行修复。若终端的设备信息不在所述缺陷配置文件中,则执行非修复代码。非修复代码是指对缺陷进行修复之前的代码。如此修复代码缺陷的处理效率较高。其中,终端110可为智能手机、平板电脑、个人数字助理、穿戴式设备等智能设备。服务器120可为一个或多个服务器构成的服务器集群或为云端服务器。

图2A为一个实施例中终端的内部结构示意图。如图2A所示,该终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,终端的非易失性存储介质存储有操作系统,还包括一种代码缺陷的处理装置,该代码缺陷的处理装置用于实现一种代码缺陷的处理方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。终端中的内存储器为非易失性存储介质中的代码缺陷的处理装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种代码缺陷的处理方法。网络接口用于与服务器进行网络通信,如发送更新请求至服务器,接收服务器返回的更新的缺陷配置文件等。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该终端可以是手机、平板电脑或者个人数字助理或穿戴式设备等。本领域技术人员可以理解,图2A中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图2B为一个实施例中服务器(或云端等)的内部结构示意图。如图2B所示,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,该服务器的非易失性存储介质存储有操作系统、数据库和代码缺陷的处理装置,数据库中存储有应用程序对应的缺陷配置文件,该代码缺陷的处理装置用于实现适用于服务器的一种代码缺陷的处理方法。该服务器的处理器用于提供计算和控制能力,支撑整个服务器的运行。该服务器的内存储器为非易失性存储介质中的代码缺陷的处理装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种代码缺陷的处理方法。该服务器的网络接口用于据以与外部的终端通过网络连接通信,比如接收终端发送的更新请求以及向终端返回更新后的缺陷配置文件等。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员可以理解,图2B中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图3为一个实施例中代码缺陷的处理方法的流程图。如图3所示,一种代码缺陷的处理方法,运行于图1和图2A中的终端上,包括:

步骤302,启动并运行应用程序。

本实施例中,在终端上安装有一个或多个应用程序。终端获取用户在应用程序的图标或快捷方式上的触控操作,启动并运行该应用程序。

步骤304,获取缺陷配置文件,以及获取所述应用程序所在的终端的设备信息。

本实施例中,缺陷配置文件用于记录代码被执行时导致应用程序出现故障的终端的设备信息和缺陷标识的文件。设备信息可包括机型信息,还可包括硬件信息。机型信息可为机型关键字,机型关键字是标示终端的机型的唯一身份信息。硬件信息可包括CPU(中央处理器)、内存储器、图形处理器等。缺陷标识用于唯一表示缺陷的身份凭证。缺陷标识可为缺陷编号等。应用程序的代码文件在不同终端上被执行时,有的终端会产生缺陷,有的终端不会产生缺陷。不同的终端运行应用程序出现的缺陷的位置可能相同,也可能不同。采用缺陷配置文件记录应用程序产生缺陷的缺陷标识以及与缺陷标识对应的设备信息集合。缺陷配置文件是终端从服务器上下载的与该应用程序对应的缺陷配置文件。

在终端上存储有应用程序标识和缺陷配置文件的对应关系。应用程序标识是用于唯一表示应用程序的字符串等。字符串可包括数字、字母、字符等中一种或多种。

该缺陷可为应用程序退出或卡死或闪屏等。

应用程序所在的终端的设备信息可包括机型信息,或者机型信息和硬件信息等。

步骤306,检测所述应用程序的代码文件中的缺陷标识,从所述缺陷配置文件中读取与所述缺陷标识对应的设备信息集合。

本实施例中,执行应用程序时,遇到应用程序的代码文件中的缺陷标识,获取该应用程序的代码文件中的缺陷标识。根据该缺陷标识从缺陷配置文件中读取与缺陷标识对应的设备信息集合。

步骤308,判断所述终端的设备信息是否在所述设备信息集合中,若是,执行步骤310,若否,执行步骤312。

步骤310,从所述应用程序的代码文件中找出与所述缺陷标识对应的修复代码,并执行所述修复代码。

步骤312,从所述应用程序的代码文件中找出与所述缺陷标识对应的非修复代码,并执行所述非修复代码。

本实施例中,判断该应用程序所在的终端的设备信息是否在该缺陷配置文件的与缺陷标识对应的设备信息集合中,是指将该应用程序所在的终端的设备信息与该缺陷配置文件中与缺陷标识对应的设备信息集合进行比较,若相同,则该应用程序所在的终端的设备信息在该缺陷配置文件的缺陷标识对应的设备信息集合中,若不相同,则该应用程序所在的终端的设备信息不在该缺陷配置文件的缺陷标识对应的设备信息集合中。

修复代码是指预先记录在应用程序的代码文件中对缺陷进行修复的代码。在代码文件中记录有两条支路,即在执行到缺陷标识时,判断出终端的设备信息在缺陷配置文件中与缺陷标识对应的设备信息集合中时,执行修复代码,若判断出终端的设备信息不在缺陷配置文件中与缺陷标识对应的设备信息集合中时,执行非修复代码。非修复代码是指对缺陷进行修复之前的代码。

上述代码缺陷的处理方法,启动并运行应用程序后,获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息,获取应用程序的代码文件中的缺陷标识时,从缺陷配置文件中获取与所述缺陷标识对应的设备信息集合,判断终端的设备信息是否在缺陷配置文件的与缺陷标识对应的设备信息集合中,若在,则执行修复代码,快速实现了代码缺陷的处理,不需要修改本地代码,提高了代码缺陷的处理效率。

在一个实施例中,如图4所示,上述获取与所述应用程序对应的缺陷配置文件包括:

步骤402,向服务器发起与所述应用程序对应的缺陷配置文件是否有更新的查询请求。

本实施例中,服务器上存储有与应用程序对应的缺陷配置文件。终端运行应用程序后,获取应用程序标识,向服务器发起与该应用程序对应的缺陷配置文件是否有更新的查询请求。该查询请求中可包括应用程序标识和终端上存储的与该应用程序标识对应的缺陷配置文件版本信息。

步骤404,接收所述服务器返回的缺陷配置文件有更新的响应结果。

本实施例中,服务器接收到查询请求后,根据查询请求中的应用程序标识从服务器上存储的应用程序标识与缺陷配置文件的对应关系中查找到对应的缺陷配置文件,获取服务器上存储的该应用程序对应的缺陷配置文件版本信息,将服务器上存储的缺陷配置文件版本信息与终端上的缺陷配置文件版本信息进行比较,若相同,则服务器向终端发送没有更新的结果,若不同,则服务器向终端发送缺陷配置文件有更新的响应结果。

步骤406,根据所述响应结果从所述服务器下载更新的缺陷配置文件。

本实施例中,终端根据响应结果从服务器下载更新的缺陷配置文件。

本实施例中,在启动并运行应用程序后,向服务器发送与该应用程序对应的缺陷配置文件是否有更新的查询请求,接收到有更新的响应结果后,从服务器下载更新的缺陷配置文件,可保证终端上存储的缺陷配置文件是最新的,避免应用程序执行出现错误,且只需从服务器下载缺陷配置文件,即可实现终端的代码缺陷的修复,不需要修改本地代码,节省了网络流量。

在一个实施例中,上述代码缺陷的处理方法还包括:获取所述应用程序在终端上出现缺陷的缺陷标识;将所述应用程序的缺陷标识与服务器上存储的与所述应用程序对应的缺陷配置文件中的缺陷标识进行比较;若相同,则获取所述终端的设备信息,将所述终端的设备信息添加到所述缺陷配置文件中与所述缺陷标识对应的设备信息集合中;若不同,则获取所述终端的设备信息,根据所述应用程序的缺陷标识生成对应的代码修复包,将所述缺陷标识及终端的设备信息添加到所述缺陷配置文件中。

图5为一个实施例中代码缺陷的处理方法的流程图。如图5所示,一种代码缺陷的处理方法,运行于图1和图2B的服务器上,包括:

步骤502,接收终端启动并运行应用程序后发起的与所述应用程序对应的缺陷配置文件是否有更新的查询请求。

本实施例中,服务器接收终端启动并运行应用程序后发起的与应用程序对应的缺陷配置文件是否有更新的查询请求。该查询请求中可包括应用程序标识和终端上存储的与该应用程序标识对应的缺陷配置文件版本信息。

步骤504,返回缺陷配置文件有更新的响应结果给所述终端。

本实施例中,服务器接收到查询请求后,根据查询请求中的应用程序标识从服务器上存储的应用程序标识与缺陷配置文件的对应关系中查找到对应的缺陷配置文件,获取服务器上存储的该应用程序对应的缺陷配置文件版本信息,将服务器上存储的缺陷配置文件版本信息与终端上的缺陷配置文件版本信息进行比较,若相同,则服务器向终端发送没有更新的结果,若不同,则服务器向终端发送缺陷配置文件有更新的响应结果。

步骤506,接收终端的下载请求,根据所述下载请求将更新的缺陷配置文件发送给所述终端,以使所述终端获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息;检测所述应用程序的代码文件中的缺陷标识,从所述缺陷配置文件中获取与所述缺陷标识对应的设备信息集合;判断所述终端的设备信息是否在所述设备信息集合中;若所述设备信息在所述设备信息集合中,则从所述应用程序的代码文件中找出与所述缺陷标识对应的修复代码,执行所述修复代码。

本实施例中,所述设备信息包括机型信息,或者包括机型信息和硬件信息。

本实施例中,服务器接收到终端在启动并运行应用程序后发送的与该应用程序对应的缺陷配置文件是否有更新的查询请求,对查询请求进行响应,发送更新的缺陷配置文件到终端,可保证终端上存储的缺陷配置文件是最新的,避免应用程序执行出现错误,且只需从服务器下载缺陷配置文件,即可实现终端的代码缺陷的修复,不需要修改本地代码,节省了网络流量,以及使得终端在执行到缺陷标识时,根据缺陷标识从缺陷配置文件中获取对应的设备信息,判断终端的设备信息是否在缺陷配置文件的与缺陷标识对应的设备信息集合中,若在设备信息集合中,则执行修复代码,若不在设备信息集合中,则执行非修复代码,快速实现了代码缺陷的处理,不需要修改本地代码,提高了代码缺陷的处理效率。

图6为一个实施例中代码缺陷的处理方法的流程图。如图6所示,上述代码缺陷的处理方法还包括:

步骤602,获取所述应用程序在终端上所出现的缺陷的缺陷标识。

本实施例中,缺陷标识用于唯一表示缺陷的身份凭证。缺陷可如应用程序退出、卡死等缺陷。

步骤604,将所述应用程序的缺陷标识与服务器上存储的与所述应用程序对应的缺陷配置文件中的缺陷标识进行比较。

服务器上存储有缺陷配置文件,该缺陷配置文件中记录有缺陷标识及对应的设备信息。

步骤606,若相同,则获取所述终端的设备信息,将所述设备信息添加到所述缺陷配置文件中与所述缺陷标识对应的设备信息集合中。

本实施例中,设备信息包括机型信息,或者包括机型信息和硬件信息。机型信息可为机型关键字,机型关键字是用于标示终端的机型的唯一身份信息。硬件信息可包括CPU、内存储器、图形处理器等。缺陷配置文件是终端从服务器上下载的与该应用程序对应的缺陷配置文件。

若缺陷标识相同,则表示已有其他机型的终端出现了相同的缺陷,将设备信息添加到缺陷配置文件中,可采用已有的修复代码修复该缺陷。若缺陷标识不同,则表示该缺陷为首次发生,则根据该缺陷标识生成对应的代码修复包。

步骤608,若不同,则获取所述终端的设备信息,根据所述应用程序的缺陷标识生成对应的代码修复包,将所述缺陷标识及终端的设备信息添加到所述缺陷配置文件中。

本实施例中,将应用程序的缺陷标识生成的对应的代码修复包添加到应用程序的代码文件中,以便下次出现相同的缺陷,则执行该代码修复包,以修复该缺陷标识所对应的缺陷。

当应用程序在终端上出现的缺陷标识与服务器上的缺陷配置文件中的缺陷标识相同时,直接将终端的设备信息添加到服务器上的缺陷配置文件与该缺陷标识对应的设备信息集合中,具有相同设备信息的终端启动应用程序时会下载最新的缺陷配置文件,从而解决了具有相同设备信息的终端上该应用程序的代码缺陷问题。

图7为一个实施例中代码缺陷的处理装置的结构框图。如图7所示,一种代码缺陷的处理装置700,运行于图1和图2A的终端上,包括启动模块702、获取模块704、读取模块706、判断模块708和执行模块710。其中:

启动模块702用于启动并运行应用程序。

本实施例中,在终端上安装有一个或多个应用程序。终端获取用户在应用程序的图标或快捷方式上的触控操作,启动并运行该应用程序。

获取模块704用于获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息。本实施例中,缺陷配置文件用于记录代码被执行时导致应用程序出现故障的终端的设备信息和缺陷标识的文件。设备信息可包括机型信息,还可包括硬件信息。机型信息可为机型关键字,机型关键字是标示终端的机型的唯一身份信息。硬件信息可包括CPU、内存储器、图形处理器等。缺陷标识用于唯一表示缺陷的身份凭证。缺陷标识可为缺陷编号等。应用程序的代码文件在不同终端上被执行时,有的终端会产生缺陷,有的终端不会产生缺陷。不同的终端运行应用程序出现的缺陷的位置可能相同,也可能不同。采用缺陷配置文件记录应用程序产生缺陷的缺陷标识以及与缺陷标识对应的设备信息集合。缺陷配置文件是终端从服务器上下载的与该应用程序对应的缺陷配置文件。

在终端上存储有应用程序标识和缺陷配置文件的对应关系。应用程序标识是用于唯一表示应用程序的字符串等。字符串可包括数字、字母、字符等中一种或多种。

该缺陷可为应用程序退出或卡死或闪屏等。

应用程序所在的终端的设备信息可包括机型信息,或者机型信息和硬件信息等。

读取模块706用于检测所述应用程序的代码文件中的缺陷标识,从所述缺陷配置文件中读取与所述缺陷标识对应的设备信息集合。

本实施例中,执行应用程序时,遇到应用程序的代码文件中的缺陷标识,获取该应用程序的代码文件中的缺陷标识。根据该缺陷标识从缺陷配置文件中获取与缺陷标识对应的设备信息集合。

判断模块708用于判断所述终端的设备信息是否在所述与所述缺陷标识对应的设备信息集合中。

执行模块710用于若所述设备信息在所述设备信息集合中,则从所述应用程序的代码文件中找出与所述缺陷标识对应的修复代码,执行所述修复代码。

本实施例中,判断该应用程序所在的终端的设备信息是否在该缺陷配置文件的与缺陷标识对应的设备信息集合中,是指将该应用程序所在的终端的设备信息与该缺陷配置文件中与缺陷标识对应的设备信息集合进行比较,若相同,则该应用程序所在的终端的设备信息在该缺陷配置文件的缺陷标识对应的设备信息集合中,若不相同,则该应用程序所在的终端的设备信息不在该缺陷配置文件的缺陷标识对应的设备信息集合中。

若所述终端的设备信息不在所述与所述缺陷标识对应的设备信息集合中,则从所述应用程序的代码文件中找出与所述缺陷标识对应的非修复代码,执行所述非修复代码。

修复代码是指预先记录在应用程序的代码文件中对缺陷进行修复的代码。在代码文件中记录有两条支路,即在执行到缺陷标识时,判断出终端的设备信息在缺陷配置文件中与缺陷标识对应的设备信息集合中时,执行修复代码,若判断出终端的设备信息不在缺陷配置文件中时,执行非修复代码。非修复代码是指对缺陷进行修复之前的代码。

上述代码缺陷的处理装置,启动并运行应用程序后,获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息,获取应用程序的代码文件中的缺陷标识时,从缺陷配置文件中获取与所述缺陷标识对应的设备信息集合,判断终端的设备信息是否在缺陷配置文件的与缺陷标识对应的设备信息集合中,若在,则执行修复代码,快速实现了代码缺陷的处理,不需要修改本地代码,提高了代码缺陷的处理效率。

图8为一个实施例中第一获取模块的结构框图。如图8所示,获取模块704包括查询请求发起单元7042、响应接收单元7044和下载单元7046。其中:

查询请求发起单元7042用于在所述启动并运行应用程序之后,向服务器发起与所述应用程序对应的缺陷配置文件是否有更新的查询请求。

本实施例中,服务器上存储有与应用程序对应的缺陷配置文件。终端运行应用程序后,获取应用程序标识,向服务器发起与该应用程序对应的缺陷配置文件是否有更新的查询请求。该查询请求中可包括应用程序标识和终端上存储的与该应用程序标识对应的缺陷配置文件版本信息。

响应接收单元7044用于接收所述服务器返回的缺陷配置文件有更新的响应结果。

本实施例中,服务器接收到查询请求后,根据查询请求中的应用程序标识从服务器上存储的应用程序标识与缺陷配置文件的对应关系中查找到对应的缺陷配置文件,获取服务器上存储的该应用程序对应的缺陷配置文件版本信息,将服务器上存储的缺陷配置文件版本信息与终端上的缺陷配置文件版本信息进行比较,若相同,则服务器向终端发送没有更新的结果,若不同,则服务器向终端发送缺陷配置文件有更新的响应结果。

下载单元7046用于根据所述响应结果从所述服务器下载更新的缺陷配置文件。

本实施例中,在启动并运行应用程序后,向服务器发送与该应用程序对应的缺陷配置文件是否有更新的查询请求,接收到有更新的响应结果后,从服务器下载更新的缺陷配置文件,可保证终端上存储的缺陷配置文件是最新的,避免应用程序执行出现错误,且只需从服务器下载缺陷配置文件,即可实现终端的代码缺陷的修复,不需要修改本地代码,节省了网络流量。

图9为另一个实施例中代码缺陷的处理装置的结构框图。如图9所示,一种代码缺陷的处理装置700,运行于图1和图2A的终端上,除了包括启动模块702、获取模块704、读取模块706、判断模块708和执行模块710,还包括缺陷标识获取模块712、比较模块714、添加模块716和生成模块718。

缺陷标识获取模块712用于获取所述应用程序在终端上所出现的缺陷的缺陷标识。

比较模块714用于将所述应用程序的缺陷标识与服务器上存储的与所述应用程序对应的缺陷配置文件中的缺陷标识进行比较。

添加模块716用于若相同,则获取所述终端的设备信息,将所述终端的设备信息添加到所述缺陷配置文件中与所述缺陷标识对应的设备信息集合中。

生成模块718用于若不同,则获取所述终端的设备信息,根据所述应用程序的缺陷标识生成对应的代码修复包,将所述缺陷标识及终端的设备信息添加到所述缺陷配置文件中。

图10为另一个实施例中代码缺陷的处理装置的结构框图。如图10所示,一种代码缺陷的处理装置,运行于图1和图2B的服务器上,包括请求接收模块1002、响应模块1004、发送模块1006。其中:

请求接收模块1002用于接收终端启动并运行应用程序后发起的与所述应用程序对应的缺陷配置文件是否有更新的查询请求。

本实施例中,服务器接收终端启动并运行应用程序后发起的与应用程序对应的缺陷配置文件是否有更新的查询请求。该查询请求中可包括应用程序标识和终端上存储的与该应用程序标识对应的缺陷配置文件版本信息。

响应模块1004用于返回缺陷配置文件有更新的响应结果给所述终端。

本实施例中,服务器接收到查询请求后,根据查询请求中的应用程序标识从服务器上存储的应用程序标识与缺陷配置文件的对应关系中查找到对应的缺陷配置文件,获取服务器上存储的该应用程序对应的缺陷配置文件版本信息,将服务器上存储的缺陷配置文件版本信息与终端上的缺陷配置文件版本信息进行比较,若相同,则服务器向终端发送没有更新的结果,若不同,则服务器向终端发送缺陷配置文件有更新的响应结果。

发送模块1006用于接收终端的下载请求,根据所述下载请求将更新的配置文件发送给所述终端,以使所述终端获取与所述应用程序对应的缺陷配置文件,以及获取所述应用程序所在的终端的设备信息;检测所述应用程序的代码文件中的缺陷标识,从所述缺陷配置文件中读取与所述缺陷标识对应的设备信息集合;判断所述终端的设备信息是否在所述与所述缺陷标识对应的设备信息集合中;若所述设备信息在所述缺陷配置文件中,则从所述应用程序的代码文件中找出与所述缺陷标识对应的修复代码,执行所述修复代码。

本实施例中,所述设备信息包括机型信息,或者包括机型信息和硬件信息。

本实施例中,服务器接收到终端在启动并运行应用程序后发送的与该应用程序对应的缺陷配置文件是否有更新的查询请求,对查询请求进行响应,发送更新的缺陷配置文件到终端,可保证终端上存储的缺陷配置文件是最新的,避免应用程序执行出现错误,且只需从服务器下载缺陷配置文件,即可实现终端的代码缺陷的修复,不需要修改本地代码,节省了网络流量,以及使得终端在执行到缺陷标识时,根据缺陷标识从缺陷配置文件中获取对应的设备信息,判断终端的设备信息是否在缺陷配置文件的与缺陷标识对应的设备信息集合中,若在缺陷配置文件中,则执行修复代码,若不在配置文件中,则执行非修复代码,快速实现了代码缺陷的处理,不需要修改本地代码,提高了代码缺陷的处理效率。

图11为另一个实施例中代码缺陷的处理装置的结构框图。如图11所示,一种代码缺陷的处理装置,运行于图1和图2B的服务器上,除了包括请求接收模块1002、响应模块1004、发送模块1006,还包括缺陷标识获取模块1008、比较模块1010、添加模块1012和生成模块1014。其中:

缺陷标识获取模块1008用于获取所述应用程序在终端上所出现的缺陷的缺陷标识。

比较模块1010用于将所述应用程序的缺陷标识与服务器上存储的与所述应用程序对应的缺陷配置文件中的缺陷标识进行比较。

添加模块1012用于若相同,则获取所述终端的设备信息,将所述终端的设备信息添加到所述缺陷配置文件中与所述缺陷标识对应的设备信息集合中。设备信息包括机型信息,或者包括机型信息和硬件信息。

生成模块1014用于若不同,则获取所述终端的设备信息,根据所述应用程序的缺陷标识生成对应的代码修复包,将所述缺陷标识及终端的设备信息添加到所述缺陷配置文件中。

本实施例中,当应用程序在终端上出现的缺陷标识与服务器上的缺陷配置文件中的缺陷标识相同时,直接将终端的设备信息添加到服务器上的缺陷配置文件与该缺陷标识对应的设备信息集合中,具有相同设备信息的终端启动应用程序时会下载最新的缺陷配置文件,从而解决了具有相同设备信息的终端上该应用程序的缺陷代码问题。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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