应用程序的修复扩展方法和装置与流程

文档序号:11215924阅读:371来源:国知局
应用程序的修复扩展方法和装置与流程

本发明实施例涉及信息技术领域,尤其涉及一种应用程序的修复扩展方法和装置。



背景技术:

随着智能手机等终端设备的快速普及和网络速度、资源等的快速提升,互联网已经颠覆性地改变了人们的传统生活理念和出行消费以及日常生活交互方式,各种各样的移动式和嵌入式终端设备与应用程序更是层出不穷。

对于运营商而言,有越来越多的新内容信息可以借助于不同的应用程序进行不同方式的推送。

对于终端的用户而言,越来越多的人每时每刻都在寻找与其自身的诸多不同需求所匹配的应用程序,并期望能得到更好的推送内容和更安全更健壮的应用体验,而不希望所安装的应用程序出现各种缺陷(bug)和崩溃等问题,不希望下载安装的应用程序影响其它已安装的应用程序的运行,更不希望影响终端系统的直接运行。

相应的,对于应用程序的开发者而言,新的商务合作与运营活动和推送需求对应用程序的功能样式、以及扩展支持能力等提出了更多更快的需求,从而直接导致现在的诸多应用程序为了尽快的推出新功能需求样式或者尽早超越竞争对手等不断加快应用程序的开发速度,缩短应用程序的上线修复扩展周期。

应用程序一旦发布后,受限于开发速度等原因,可能需要修复扩展,对出现的一些问题进行修复,或者,根据所合作的运营商的推送需求或者终端用户的需求对应用程序的功能需要扩展。当应用程序需要修复扩展时,一般是通过 发布新版本的应用程序,使用户通过下载安装新版本的应用程序的操作来实现。

存在的缺陷在于:需要用户通过不断修复扩展应用程序的版本,以实现问题修复或者功能扩展,操作繁琐,且系统性能开销较大,可能导致用户卸载应用程序,浪费开发者辛辛苦苦投入的诸多人力、物力和财力,给开发者和合作的运营商都带来严重损失;更甚至通过版本修复扩展的开发周期和用户的实际修复扩展到新版本的应用程序的收敛周期都会比较长,导致难于全面快速及时的修复问题,或者难以及时实现功能的扩展。



技术实现要素:

本发明实施例提供一种应用程序的修复扩展方法和装置,以优化应用程序的修复扩展方案。

第一方面,本发明实施例提供了一种应用程序的修复扩展方法,包括:

获取安装同一应用程序的至少两个客户端的属性信息;

根据所述属性信息,确定待修复扩展的至少一个目标客户端,以及对应的待修复扩展内容;

将所述待修复扩展内容配置为修复扩展插件,下发至对应的目标客户端,以使所述目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展。

第二方面,本发明实施例提供了一种应用程序的修复扩展装置,包括:

属性信息获取模块,用于获取安装同一应用程序的至少两个客户端的属性信息;

修复扩展对象确定模块,用于根据所述属性信息,确定待修复扩展的至少一个目标客户端,以及对应的待修复扩展内容;

修复扩展模块,用于将所述待修复扩展内容配置为修复扩展插件,下发至 对应的目标客户端,以使所述目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展。

本发明实施例提供的应用程序的修复扩展方法和装置,通过获取安装同一应用程序的至少两个客户端的属性信息,既可以将具有相同属性信息的客户端批量确定为待修复扩展的目标客户端,并确定对应的待修复扩展内容,基于此,配置修复扩展插件,并下发至对应的目标客户端,从而实现对具有相同属性信息的目标客户端中的同一应用程序进行批量修复扩展;又可以将具有个性化属性信息的客户端精确确定为待修复扩展的目标客户端,并确定对应的待修复扩展内容,基于此,配置修复扩展插件,并下发至该目标客户端,从而实现对具有个性化属性信息的某个目标客户端中的应用程序的指定修复扩展,一方面,在实现有效修复扩展的同时,减少了对无关用户的打扰;另一方面,针对已经发布出去的应用程序,进行在线修复扩展,无需下载安装新版本的应用程序,降低了系统性能开销,提升了用户体验,且提升了开发者和合作的运营商的利益;再一方面,避免了针对各种修复扩展需求单独开发相应的版本,节省了时间、人力、财力、和物力等诸多成本;此外,并不受限于新版本的开发周期和用户的实际修复扩展到新版本的应用程序的收敛周期都比较长的影响,能够及时在线修复扩展,实现对已经发布出去的各个版本的应用程序的同步有效维护。

附图说明

为了更清楚地说明本发明,下面将对本发明中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一提供的一种应用程序的修复扩展方法的流程图;

图2为本发明实施例二提供的一种应用程序的修复扩展方法的流程图;

图3为本发明实施例三提供的一种应用程序的修复扩展装置的结构示意图;

图4为本发明实施例四提供的一种应用程序的修复扩展方法的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例中的技术方案作进一步详细描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。

实施例一

请参阅图1,为本发明实施例一提供的一种应用程序的修复扩展方法的流程图。本发明实施例的方法可以由配置以硬件和/或软件实现的应用程序的修复扩展装置来执行,该实现装置典型的是配置于能够提供应用程序的修复扩展服务的设备中。

该方法包括:

110、获取安装同一应用程序的至少两个客户端的属性信息。

在本操作中,所述属性信息是体现客户端自身属性以及该应用程序在该客户端中的自有属性,例如可包括下述至少一项:所属终端标识信息、应用渠道信息、应用版本信息和地域信息。

其中,应用程序开发完成后,可以通过各种应用渠道进行发布,以供客户端获取并安装。本操作中,所述应用渠道信息表明该客户端获取该应用程序的 渠道,可包括下述至少一项:主版渠道、分版本渠道、高速下载渠道、分升级渠道、m站渠道,web渠道以及应用商店渠道。地域信息为该客户端所属客户端当前所处的地域,可通过定位技术获取。

120、根据所述属性信息,确定待修复扩展的至少一个目标客户端,以及对应的待修复扩展内容。

本操作可包括以下两种实现方式:

一种是,将具有相同属性信息的客户端批量确定为待修复扩展的目标客户端,例如,将应用渠道信息相同、应用版本信息相同或地域信息相同的各客户端确定为待修复扩展的目标客户端。相应的,将所述目标客户端中的所述应用程序的待修复问题和/或待扩展功能确定为对应的待修复扩展内容。

这种实现方式中,可以批量确定待修复扩展的目标客户端,并确定所述目标客户端中的所述应用程序的待修复扩展内容。

另一种是,将具有个性化属性信息的客户端精确确定为待修复扩展的目标客户端,例如,将与所属终端标识信息对应的客户端确定为待修复扩展的目标客户端。相应的,将该目标客户端中的所述应用程序的待修复问题和/或待扩展功能确定为对应的待修复扩展内容。

这种实现方式中,可以精确确定某个客户端为待修复扩展的目标客户端,并确定该目标客户端中的所述应用程序的待修复扩展内容。

130、将所述待修复扩展内容配置为修复扩展插件,下发至对应的目标客户端,以使所述目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展。

在本操作中,目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展,具体是指:目标客户端对获取到的修复扩展插件进行验证;在 通过验证后,在判断到该应用程序启动时,调用所述插件进行修复扩展。

在本操作中,在将修复扩展插件下发时,可以单独下发,也可以随推送信息一同下发。具体可以基于云平台实现下发,其中,云平台是由一群松散耦合的计算机组成的一个超级虚拟计算机或者cdn(contentdeliverynetwork,内容分发网络)服务器集群等。

示例性地,所述目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展可包括:修改某些错误数据、修改某些配置信息、对某些文件进行重命名,或者替换所述应用程序中某些类或方法对应的代码等;还可以是对复杂问题进行修复,例如可以直接修复或者替换目标客户端中的应用程序的部分程序文件、程序代码或者资源数据库等;还可以结合运营合作功能需求进行新功能模块的自动替换或追加扩展。本实施例对此不进行限制。

本实施例的技术方案,通过获取安装同一应用程序的至少两个客户端的属性信息,既可以将具有相同属性信息的客户端批量确定为待修复扩展的目标客户端,并确定对应的待修复扩展内容,基于此,配置修复扩展插件,并下发至对应的目标客户端,从而实现对具有相同属性信息的目标客户端中的同一应用程序进行批量修复扩展;又可以将具有个性化属性信息的客户端精确确定为待修复扩展的目标客户端,并确定对应的待修复扩展内容,基于此,配置修复扩展插件,并下发至该目标客户端,从而实现对具有个性化属性信息的某个目标客户端中的应用程序的指定修复扩展。一方面,针对客户端个性化的属性信息确定目标客户端和待修复扩展内容,针对性更强,且修复扩展措施更灵活,在实现有效修复扩展的同时,减少了对无关用户的打扰;另一方面,针对已经发布出去的应用程序,进行在线修复扩展,无需下载安装新版本的应用程序,降低了系统性能开销,提升了用户体验,且提升了开发者和合作运营商的利益; 再一方面,避免了针对各种修复扩展需求单独开发相应的版本,节省了时间、人力、财力、和物力等诸多成本;此外,并不受限于新版本的开发周期和用户实际修复扩展到新版本的应用程序的收敛周期都比较长的影响,能够及时在线修复扩展,实现对已经发布出去的各个版本的应用程序的同步有效维护兼容。

本实施例的技术方案,可以应用于对具有相同属性信息(例如,相同应用渠道信息、相同应用版本信息或相同地域信息)的目标客户端中的同一应用程序批量进行问题修复和/或功能扩展;又可以应用于对具有个性化属性信息的某个目标客户端中的应用程序进行个性化的问题修复和/或功能扩展。

需要说明的是,可以结合需求,不断扩展更多其它合作方功能需求的修复扩展插件,即可直接使用其它第三方的相关功能,进而减少客户端开发升级的时效限制,而更重要的是其它合作方的某些应用程序除了可以直接安装应用,还可以直接作为目标客户端中的应用程序的插件组合运行,进而使得插件服务扩展变得非常通用灵活,也更能减少冗余开发维护的人力、物力、以及财力开销,从而大大节约合作多方的成本,提升多方盈收变现,实现真正共盈和更好的维护品牌并推广合作,并可以更加灵活地结合第三方的合作功能内容需求等进行灵活地进行针对性合作和增删处理等,同时更可以有效地对用户的所需数据进行高效复合和统一排序优化处理。

在上述方案中,将所述修复扩展插件下发至对应的目标客户端,可具体包括:

当检测到所述目标客户端在判断到所属终端的网络数据可拉取并拉取所述网络数据时,将所述修复扩展插件直接下发至所述目标客户端;

或者:

接收所述目标客户端在判断到所属终端的网络数据可拉取并拉取所述网络 数据时,发送的插件服务请求;

根据所述插件服务请求,将所述修复扩展插件下发至所述目标客户端。

在上述方案中,在将所述修复扩展插件下发至对应的目标客户端时,所述方法还可包括:

下发插件自启控制命令至对应的目标客户端,以使所述修复扩展插件在对应的目标客户端自动运行。

在上述方案中,可以采用客户端本地后台静默修复扩展处理,而不会给用户带来过多的感知和打扰,具体可以是:在将所述修复扩展插件下发至对应的目标客户端时,所述方法还可包括:下发后台静默修复扩展控制命令至对应的目标客户端,以控制所述修复扩展插件进行后台静默修复扩展处理。

在上述方案中,也可以结合实际需求进行一定的用户可选性引导操作,从而方便用户进行自主选择和处理。例如,对于某些特殊的问题修复或者功能扩展处理,可以在用户进入到指定场景后触发运行修复扩展插件,更或者某些问题修复或功能扩展是需要或者可以根据用户的不同选择而进行不同引导处理;或者也可以直接建议引导用户进行相应问题修复或功能扩展处理。具体以何种形式,取决于问题修复或者功能扩展的策略需求以及具体的时效性。

实施例二

请参阅图2,为本发明实施例二提供的一种应用程序的修复扩展方法的流程图。该方法包括:

210、获取安装同一应用程序的至少两个客户端的属性信息。

220、获取所述至少两个客户端针对所述应用程序而提供的应用运行报告。

具体地,可以通过每个客户端中的同一应用程序中的错误统计模块获取该 应用程序的应用运行报告。

230、从所述应用运行报告中获取所述应用程序的运行状态信息。

其中,所述运行状态信息可包括下述至少一项:运行异常信息、运行错误信息、应用程序无响应信息,以及用户反馈的运行故障描述信息。

240、根据所述属性信息,确定待修复扩展的至少一个目标客户端;根据所述运行状态信息和所述属性信息,确定对应的待修复扩展内容。

本操作中,可以采用上述实施例中操作120中的两种实现方式确定待修复扩展的至少一个目标客户端,不再赘述。

在将具有相同属性信息的客户端批量确定为待修复扩展的目标客户端这种实现方式中,根据所述运行状态信息和所述属性信息,确定待修复扩展内容,可具体包括:

将所述运行状态信息按照所述属性信息进行分类统计,并将分类统计结果对应的运行状态信息进行整合;

根据整合结果,确定待修复扩展内容。

示例性地,将各客户端提供的应用运行报告中的运行状态信息按照应用渠道信息、应用版本信息或地域信息进行分类统计,并将分类统计结果对应的应用运行报告中的运行状态信息进行整合,根据整合结果确定待修复扩展内容。

例如,假设共有4个客户端安装有应用程序“百度糯米”,客户端1的属性信息包括:所属终端标识信息“1”、应用渠道信息“应用商店渠道”(如,乐商店)、应用版本信息“6.1.5”,以及地域信息“北京”,从该客户端提供的该应用程序的应用运行报告中获取到的运行状态信息包括:页面m对应的应用程序无响应信息;

客户端2的属性信息包括:所属终端标识信息“2”、应用渠道信息“高速 下载渠道”、应用版本信息“6.2.0”,以及地域信息“北京”,从该客户端提供的该应用程序的应用运行报告中获取到的运行状态信息包括:商品x图标加载错误的运行错误信息,以及页面m对应的应用程序无响应信息;

客户端3的属性信息包括:所属终端标识信息“3”、应用渠道信息“应用商店渠道”、应用版本信息“6.2.0”,以及地域信息“北京”,从该客户端提供的该应用程序的应用运行报告中获取到的运行状态信息包括:商品x图标加载错误的运行错误信息,以及页面m对应的应用程序无响应信息;

客户端4的属性信息包括:所属终端标识信息“4”、应用渠道信息“m站渠道”、应用版本信息“6.2.0”,以及地域信息“安徽”,从该客户端提供的该应用程序的应用运行报告中获取到的运行状态信息包括:页面m对应的应用程序无响应信息,以及页面n对应的运行异常信息;

假设将具有相同属性信息(具体是,应用版本信息“6.2.0”)的客户端2、客户端3、和客户端4批量确定为待修复扩展的目标客户端,相应的,将各客户端(即,客户端1、客户端2、客户端3、和客户端4)提供的应用运行报告中的运行状态信息按照应用版本信息进行分类统计,得到应用版本信息“6.1.5”的类别,以及应用版本信息“6.2.0”的类别,并将应用版本信息“6.2.0”的类别对应的客户端2、客户端3和客户端4各自的应用运行报告中的运行状态信息进行整合,根据整合结果确定目标客户端(即,客户端2、客户端3、和客户端4)的待修复扩展内容为:商品x图标加载错误的运行错误信息,页面m对应的应用程序无响应信息,以及页面n对应的运行异常信息。

250、将所述待修复扩展内容配置为修复扩展插件,下发至对应的目标客户端,以使所述目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展。

本操作中,上述实施例提供的修复扩展插件的下发方式、以及修复扩展方式同样适用于本实施例,不再赘述。

本实施例的技术方案,通过获取安装同一应用程序的至少两个客户端的属性信息以及应用运行报告,既可以将具有相同属性信息的客户端批量确定为待修复扩展的目标客户端,并根据该相同属性信息和对应的应用运行报告中的运行状态信息,确定对应的待修复扩展内容,基于此,配置修复扩展插件,并下发至对应的目标客户端,从而实现对具有相同属性信息的目标客户端中的同一应用程序进行批量修复扩展;又可以将具有个性化属性信息的客户端精确确定为待修复扩展的目标客户端,并根据该个性化属性信息和对应的应用运行报告中的运行状态信息,确定对应的待修复扩展内容,基于此,配置修复扩展插件,并下发至该目标客户端,从而实现对具有个性化属性信息的某个目标客户端中的应用程序的指定修复扩展,一方面,在实现有效修复扩展的同时,减少了对无关用户的打扰;另一方面,针对已经发布出去的应用程序,进行在线修复扩展,无需下载安装新版本的应用程序,降低了系统性能开销,提升了用户体验,且提升了开发者和合作的运营商的利益;再一方面,避免了针对各种修复扩展需求单独开发相应的版本,节省了时间、人力、财力、和物力等诸多成本;此外,并不受限于新版本的开发周期和用户的实际修复扩展到新版本的应用程序的收敛周期都比较长的影响,能够及时在线修复扩展,实现对已经发布出去的各个版本的应用程序的同步有效维护兼容。

本实施例的技术方案,可以应用于对具有相同属性信息(例如,相同应用渠道信息、相同应用版本信息或相同地域信息)的目标客户端中的同一应用程序批量进行问题修复;又可以应用于对具有个性化属性信息的某个目标客户端中的应用程序进行个性化的问题修复。

需要说明的是,本实施例中,至少两个客户端的属性信息和所述至少两个客户端提供的应用运行报告的获取是独立进行的,对两者的执行顺序不进行限制。

实施例三

请参阅图3,为本发明实施例三提供的一种应用程序的修复扩展装置的结构示意图。该装置包括:属性信息获取模块310、修复扩展对象确定模块320和修复扩展模块330。

其中,属性信息获取模块310用于获取安装同一应用程序的至少两个客户端的属性信息;修复扩展对象确定模块320用于根据所述属性信息,确定待修复扩展的至少一个目标客户端,以及对应的待修复扩展内容;修复扩展模块330用于将所述待修复扩展内容配置为修复扩展插件,下发至对应的目标客户端,以使所述目标客户端运行所述修复扩展插件,在所述应用程序启动时进行修复扩展。

在上述方案中,所述属性信息可包括下述至少一项:所属终端标识信息、应用渠道信息、应用版本信息和地域信息。

进一步地,所述应用渠道可包括下述至少一项:主版渠道、分版本渠道、高速下载渠道、分升级渠道、m站渠道,web渠道以及应用商店渠道。

进一步地,修复扩展对象确定模块320具体用于:

将应用渠道信息相同、应用版本信息相同或地域信息相同的各客户端确定为待修复扩展的目标客户端;或者

将与所属终端标识信息对应的客户端确定为待修复扩展的目标客户端。

在上述方案中,修复扩展模块330可包括:第一修复扩展子模块或者第二 修复扩展子模块。

其中,第一修复扩展子模块用于当检测到所述目标客户端在判断到所属终端的网络数据可拉取并拉取所述网络数据时,将所述修复扩展插件直接下发至所述目标客户端;第二修复扩展子模块用于接收所述目标客户端在判断到所属终端的网络数据可拉取并拉取所述网络数据时,发送的插件服务请求;根据所述插件服务请求,将所述修复扩展插件下发至所述目标客户端。

在上述方案中,所述修复扩展模块330还可用于在将所述修复扩展插件下发至对应的目标客户端时,下发插件自启控制命令至对应的目标客户端,以使所述修复扩展插件在对应的目标客户端自动运行。

在上述方案中,所述修复扩展模块330还可用于在将所述修复扩展插件下发至对应的目标客户端时,下发后台静默修复扩展控制命令至对应的目标客户端,以控制所述修复扩展插件进行后台静默修复扩展处理。

在上述方案中,所述待修复扩展内容可包括:所述应用程序的待修复问题和/或待扩展功能。

在上述方案中,所述装置还可包括:应用运行报告获取模块和运行状态信息获取模块。

其中,应用运行报告获取模块用于获取所述至少两个客户端针对所述应用程序而提供的应用运行报告;运行状态信息获取模块用于从所述应用运行报告中获取所述应用程序的运行状态信息;

相应的,所述修复扩展对象确定模块可具体用于:

根据所述运行状态信息和所述属性信息,确定待修复扩展内容。

进一步地,所述运行状态信息可包括下述至少一项:运行异常信息、运行错误信息、应用程序无响应信息,以及用户反馈的运行故障描述信息。

进一步地,所述修复扩展对象确定模块320可具体用于:

将所述运行状态信息按照所述属性信息进行分类统计,并将分类统计结果对应的运行状态信息进行整合;

根据整合结果,确定待修复扩展内容。

本发明实施例提供的应用程序的修复扩展装置可执行本发明上述任意实施例所提供的应用程序的修复扩展方法,具备执行方法相应的功能模块和有益效果。

实施例四

请参阅图4,为本发明实施例四提供的一种应用程序的修复扩展方法的流程图。该方法包括:

410、服务器端获取安装同一应用程序的至少两个客户端的属性信息;

420、服务器端配置添加插件控制命令;如,插件自启控制命令,或者后台静默修复扩展控制命令等;

430、服务器端根据所述属性信息,确定待修复扩展的至少一个目标客户端,以及对应的待修复扩展内容;将所述待修复扩展内容配置为修复扩展插件;

440、服务器端将修复扩展插件以及插件控制命令下发至目标客户端,可以随推送信息一起下发;

450、目标客户端接收修复扩展插件以及插件控制命令,根据插件控制命令,运行修复扩展插件,在所述应用程序启动时进行修复扩展。

具体地,可以在判断到该应用程序所属终端的网络数据可拉取时,拉取网络数据,直接接收所述服务器端下发的修复扩展插件以及插件控制命令;

或者:

在判断到该应用程序所属终端的网络数据可拉取时,拉取网络数据,并向所述服务器端发送插件服务请求;

接收所述服务器端根据所述插件服务请求下发的修复扩展插件以及插件控制命令。

示例性地,根据插件控制命令,运行修复扩展插件,在所述应用程序启动时进行修复扩展,可以包括:

目标客户端结合插件控制命令,运行修复扩展插件,在所述应用程序启动时进行相关问题的修复;或者

目标客户端判断所接收到的修复扩展插件是否是通用服务功能扩展支持插件;若是,则结合相关插件控制命令,运行修复扩展插件,在所述应用程序启动时进行通用服务功能的扩展支持;否则在判断到所接收到的修复扩展插件是新产品功能需求交互扩展插件时,结合插件控制命令,运行修复扩展插件,在所述应用程序启动时,结合新产品功能需求进行相应插件功能扩展提升交互支持。

最后应说明的是:以上各实施例仅用于说明本发明的技术方案,而非对其进行限制;实施例中优选的实施方式,并非对其进行限制,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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