WO2016179957A1 - Method and device for repairing application programs, and storage medium - Google Patents

Method and device for repairing application programs, and storage medium Download PDF

Info

Publication number
WO2016179957A1
WO2016179957A1 PCT/CN2015/092066 CN2015092066W WO2016179957A1 WO 2016179957 A1 WO2016179957 A1 WO 2016179957A1 CN 2015092066 W CN2015092066 W CN 2015092066W WO 2016179957 A1 WO2016179957 A1 WO 2016179957A1
Authority
WO
WIPO (PCT)
Prior art keywords
script
plugin
application
version number
valid
Prior art date
Application number
PCT/CN2015/092066
Other languages
French (fr)
Chinese (zh)
Inventor
赵晖
刘思音
雷志海
Original Assignee
百度在线网络技术(北京)有限公司
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 百度在线网络技术(北京)有限公司 filed Critical 百度在线网络技术(北京)有限公司
Priority to JP2017508621A priority Critical patent/JP6458133B2/en
Priority to KR1020177004172A priority patent/KR101952225B1/en
Publication of WO2016179957A1 publication Critical patent/WO2016179957A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Abstract

A method and a device for repairing application programs, and a storage medium. The method comprises: receiving configuration information that is of a script plug-in and issued by a server end (110); acquiring, according to the configuration information, a corresponding effective script plug-in (120); and starting the effective script plug-in in a process of running an application program so as to repair the application program (130). Aiming at the problem in an application program of a client end, a server end issues configuration information of a script plug-in for fixing the problem to the client end, and the client end can automatically acquire, start and execute, according to the configuration information, a corresponding script plug-in, thereby fixing the problem without influencing use of a user.

Description

一种应用程序的修复方法、装置和存储介质Method, device and storage medium for repairing application
本专利申请要求于2015年5月14日提交的、申请号为201510246297.4、申请人为百度在线网络技术(北京)有限公司、发明名称为“一种应用程序的修复方法和装置”的中国专利申请的优先权,该申请的全文以引用的方式并入本申请中。This patent application claims the Chinese patent application filed on May 14, 2015, the application number is 201510246297.4, the applicant is Baidu Online Network Technology (Beijing) Co., Ltd., and the invention is entitled "An application repair method and device". Priority is hereby incorporated by reference in its entirety in its entirety.
技术领域Technical field
本发明涉及计算机技术领域,尤其涉及一种应用程序的修复方法、装置和存储介质。The present invention relates to the field of computer technologies, and in particular, to a method, an apparatus, and a storage medium for repairing an application.
背景技术Background technique
iOS系统是由美国苹果公司推出的当下最流行的移动操作系统,基于iOS系统开发的iOS端应用程序数量已逾百万,产品间竞争激烈,用户对产品的要求也不断提高。尤其是用户量较大的应用程序,产品质量对应用开发者是很大的挑战。The iOS system is the most popular mobile operating system launched by Apple Inc. in the United States. The number of iOS-based applications developed based on the iOS system has exceeded one million. The competition among products is fierce, and the requirements for users are constantly improving. Especially for applications with a large number of users, product quality is a big challenge for application developers.
现有iOS端应用程序在遇到较为严重,或急需修复的问题时,通常需要将应用程序进行修改后,重新打包提交给苹果公司的应用商店(App Store)审核、再更新,或者部分应用程序可通过服务端控制停止存在问题的功能。由于审核时间通常无法控制,所以带有问题的应用程序或者停用某些功能的应用程序都会影响用户使用,且带来较大损失。Existing iOS applications often need to modify the application and then repackage it and submit it to Apple's App Store for review, re-update, or part of the application. The ability to stop problems can be controlled through the server. Because audit time is often uncontrollable, applications with problems or applications that disable certain features can affect user usage and cause significant losses.
现有解决方式存在下述多种缺陷:Existing solutions have the following drawbacks:
(1)局限性,无法依赖服务端解决应用程序的所有问题,问题的存在可能带来严重的损失;(1) Limitations, can not rely on the server to solve all problems of the application, the existence of the problem may bring serious losses;
(2)时效性差,由于应用商店的审核时间无法预估,重新提交审核往往无法及时解决应用程序的线上问题; (2) The timeliness is poor. Since the review time of the app store cannot be estimated, resubmission of the review often fails to solve the online problem of the application in time;
(3)影响用户体验,由于线上问题的存在,导致用户无法正常使用应用程序客户端的功能;(3) Affecting the user experience, due to the existence of online problems, the user cannot use the function of the application client normally;
(4)增加开发量,对线上问题的修复会增加开发人员工作量。(4) Increase the amount of development, and the repair of online problems will increase the workload of developers.
发明内容Summary of the invention
本发明实施例的主要目的在于,提供一种应用程序的修复方法、装置和存储介质,以实现应用程序问题能够及时、便捷地修复。The main purpose of the embodiments of the present invention is to provide a method, an apparatus, and a storage medium for repairing an application program, so that the application problem can be repaired in a timely and convenient manner.
本发明实施例采用如下技术方案:The embodiment of the invention adopts the following technical solutions:
第一方面,本发明实施例提供了一种应用程序的修复方法,包括In a first aspect, an embodiment of the present invention provides a method for repairing an application, including
接收服务端下发的脚本插件的配置信息;Receiving configuration information of a script plugin delivered by the server;
根据所述配置信息获取对应的有效脚本插件;Obtaining a corresponding valid script plugin according to the configuration information;
在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。The active script plugin is launched to repair the application during the running of the application.
第二方面,本发明实施例还提供了一种应用程序的修复装置,包括:In a second aspect, an embodiment of the present invention further provides an application repair apparatus, including:
配置接收模块,用于接收服务端下发的脚本插件的配置信息;The receiving module is configured to receive configuration information of a script plug-in delivered by the server;
脚本获取模块,用于根据所述配置信息获取对应的有效脚本插件;a script obtaining module, configured to obtain a corresponding valid script plugin according to the configuration information;
程序修复模块,用于在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。a program repair module, configured to start the valid script plugin to repair the application during the running of the application.
第三方面,本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有一个或者多个模块,当所述一个或者多个模块被一个执行应用程序的修复方法的设备执行时,使得所述设备执行如下操作:In a third aspect, an embodiment of the present invention provides a non-volatile computer storage medium, where the computer storage medium stores one or more modules, when the one or more modules are executed by an application repair method. When the device is executed, the device is caused to perform the following operations:
接收服务端下发的脚本插件的配置信息;Receiving configuration information of a script plugin delivered by the server;
根据所述配置信息获取对应的有效脚本插件;Obtaining a corresponding valid script plugin according to the configuration information;
在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。The active script plugin is launched to repair the application during the running of the application.
本发明实施例中提供的一种应用程序的修复方法、装置和存储介质,针对客户端应用程序中的问题,由服务端向客户端下发用于修复问题的脚本插件的配置信息,客户端根据配置信息能够自动获取、启动、执行对应脚本插件,从而在不影响用户使用的情况下修复问题。 The method, the device and the storage medium for repairing an application provided by the embodiment of the present invention, for the problem in the client application, the server sends a configuration information of the script plugin for repairing the problem to the client, the client According to the configuration information, the corresponding script plug-in can be automatically obtained, started, and executed, thereby fixing the problem without affecting the user's use.
附图说明DRAWINGS
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需使用的附图作简单地介绍,当然,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以对这些附图进行修改和替换。In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings to be used in the description of the embodiments will be briefly described below. Of course, the drawings in the following description are only some embodiments of the present invention, Those skilled in the art can also modify and replace these drawings without paying any creative work.
图1为本发明实施例一提供的一种应用程序的修复方法的流程图;FIG. 1 is a flowchart of a method for repairing an application according to Embodiment 1 of the present invention;
图2为本发明实施例二提供的一种应用程序的修复方法的流程图;2 is a flowchart of a method for repairing an application program according to Embodiment 2 of the present invention;
图3为本发明实施例三提供的一种应用程序的修复方法的流程图;3 is a flowchart of a method for repairing an application program according to Embodiment 3 of the present invention;
图4为本发明实施例四提供的一种应用程序的修复方法的流程图;4 is a flowchart of a method for repairing an application according to Embodiment 4 of the present invention;
图5为本发明实施例五提供的一种应用程序的修复装置的结构示意图。FIG. 5 is a schematic structural diagram of an apparatus for repairing an application according to Embodiment 5 of the present invention.
具体实施方式detailed description
下面将结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,是为了阐述本发明的原理,而不是要将本发明限制于这些具体的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings. Rather than limiting the invention to these specific embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
实施例一Embodiment 1
图1为本发明实施例一提供的一种应用程序的修复方法的流程图,本实施例可适用于对已安装运行的应用程序进行动态修复的场景,具体是由服务端控制用户终端上运行的客户端应用程序,进行动态修改。该方法由应用程序的修复装置来执行,该装置可以采用软件的形式实现,配置在客户端所在用户终端上。如图1所示,该方法包括:FIG. 1 is a flowchart of a method for repairing an application program according to Embodiment 1 of the present invention. The embodiment is applicable to a scenario for dynamically repairing an installed application, specifically, the server is controlled by the server. The client application is dynamically modified. The method is performed by a repair device of an application, and the device can be implemented in the form of software and configured on a user terminal where the client is located. As shown in Figure 1, the method includes:
S110、接收服务端下发的脚本插件的配置信息;S110. Receive configuration information of a script plugin delivered by the server.
脚本插件是用于修复客户端应用程序中问题的,一般在程序开发者发现应用程序存在问题时,就会开发用于修复的脚本插件,或者在已有的脚本插件中进行更新。服务端在需要修复问题时,先向客户端下发脚本插件的配置信息, 可以是主动向客户端下发配置信息,以提示有脚本插件的更新,也可以是应客户端发起的更新请求下发配置信息。配置信息中包括了脚本插件的基本信息,例如至少包括脚本插件的版本号,还可以进一步包括下载地址和验证信息等。每次更新的脚本插件可以为一个或多个,因此一次下发的配置信息可包括一个或多个版本号。服务端可以根据客户端的版本,向其下发相应的脚本插件的版本号。The script plugin is used to fix problems in the client application. Generally, when the developer finds that there is a problem in the application, the script plugin is developed for repair or updated in the existing script plugin. When the server needs to fix the problem, the server first sends the configuration information of the script plugin to the client. The configuration information may be sent to the client to prompt the update of the script plug-in, or the configuration information may be delivered by the update request initiated by the client. The configuration information includes basic information of the script plug-in, for example, at least the version number of the script plug-in, and may further include a download address and verification information. Each time the updated script plugin can be one or more, the configuration information delivered at one time can include one or more version numbers. The server can issue the version number of the corresponding script plugin to the client according to the version of the client.
S120、根据所述配置信息获取对应的有效脚本插件;S120. Acquire a corresponding valid script plug-in according to the configuration information.
客户端在接收到配置信息之后可获知待更新的是哪个脚本插件,据此获取对应的有效脚本插件。具体可以从服务端下载,或者在本地查找是否已存在。即S120的操作具体可以为:从所述配置信息中获取所述脚本插件的版本号;如果在本地查询到存储有所述版本号对应的脚本插件,则作为有效脚本插件;如果在本地未查询到存储有所述版本号对应的脚本插件,则从所述服务端下载对应的有效脚本插件。After receiving the configuration information, the client can know which script plugin is to be updated, and obtain the corresponding valid script plugin accordingly. Specifically, you can download it from the server or find it locally. The operation of the S120 may be: obtaining the version number of the script plug-in from the configuration information; if the script plug-in corresponding to the version number is locally queried, it is used as a valid script plug-in; if not in the local query When the script plugin corresponding to the version number is stored, the corresponding valid script plugin is downloaded from the server.
在客户端可以存储多个脚本插件,并根据服务端的配置信息确定当前哪个脚本插件有效,从而启动有效脚本插件进行问题修复。这样可以避免客户端重复下载脚本插件,也使得服务端可以根据需要,利用客户端的已有脚本插件进行问题修改,方式更为灵活。服务端还可以配置使得客户端侧的已有脚本插件和新下发的脚本插件同时生效,这样可以减少新脚本插件的大小,节省传输所消耗的流量。The client can store multiple script plugins, and determine which script plugin is valid according to the configuration information of the server, so that the effective script plugin is started to fix the problem. This can prevent the client from repeatedly downloading the script plug-in, and also allows the server to use the existing script plug-in of the client to modify the problem according to the needs, and the method is more flexible. The server can also be configured to make the existing script plugin on the client side and the newly issued script plugin take effect at the same time, which can reduce the size of the new script plugin and save the traffic consumed by the transfer.
S130、在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。S130. During the running of the application, launch the valid script plugin to repair the application.
脚本插件是能够动态修复应用程序中问题的一种补丁文件,其能够在应用程序所支持的程序环境中运行,并且在不更改应用程序原有代码的情况下动态修复应用程序运行中的问题。A script plug-in is a patch file that dynamically fixes problems in an application, can run in a program environment supported by the application, and dynamically fix problems in the running of the application without changing the original code of the application.
S130的操作优选可以是通过如下方式进行应用程序地修复:The operation of S130 may preferably be an application repair by:
在运行应用程序的过程中,启动所述有效脚本插件以监听所述应用程序的函数入栈操作;In the process of running the application, launching the valid script plugin to listen to the function stacking operation of the application;
在监听到所述有效脚本插件中设置的目标函数的入栈请求时,以所述有效 脚本插件中的替换函数,代替所述目标函数执行入栈操作,以运行所述替换函数来修复所述应用程序。When the push request of the target function set in the valid script plugin is listened to, the above is valid A replacement function in the script plugin performs a push operation instead of the target function to run the replacement function to repair the application.
在脚本插件中确定有要替换的目标函数,可以是该目标函数的函数名称,并且脚本插件中提供了代替目标函数执行的替换函数。目标函数通常就是有问题的函数,以替换函数代替其执行,能够修复应用程序中存在的问题。或者,也可以是采用此方式丰富应用程序的功能。It is determined in the script plugin that there is an object function to be replaced, which may be the function name of the target function, and a replacement function that is executed instead of the target function is provided in the script plugin. The objective function is usually the problematic function, replacing the function with a replacement function, which can fix problems in the application. Or, it can be a feature that enriches the application in this way.
上述应用程序的修复方式,尤为适用于应用程序是基于iOS系统开发的封闭代码程序的情况。当应用程序存在问题时,开发者可通过脚本插件的形式,在不改变原应用程序的情况下修复问题,因此无需经过iOS系统应用商店的审核。脚本插件所采用的编程语言,是应用程序能够支持其运行环境,且能够替代其函数运行的语言,优选的,所述脚本插件的编程语言为Lua语言。Lua语言是一种轻量语言,体积小、启动速度快,可以很方便地嵌入别的应用程序中运行,并且拥有很好的扩展性,可以方便地使用宿主语言提供的功能,就像使用内置功能一样。在Lua语言的脚本插件下载到客户端后,运行客户端应用程序时,客户端将自动启动Lua引擎,使执行环境生效,脚本插件的代码生效,达到修复客户端应用程序问题的目的。The above-mentioned application repair method is especially suitable for the case where the application is a closed code program developed based on the iOS system. When there is a problem with the application, the developer can fix the problem without changing the original application in the form of a script plugin, so there is no need to go through the iOS app store for review. The programming language used by the script plug-in is a language that the application can support its running environment and can be replaced by its function. Preferably, the programming language of the script plug-in is Lua language. Lua language is a lightweight language, small size, fast startup, easy to embed in other applications, and has good extensibility, you can easily use the functions provided by the host language, just like using the built-in The same function. After the script plugin of Lua language is downloaded to the client, when the client application is run, the client will automatically start the Lua engine, the execution environment will take effect, and the code of the script plugin will take effect, which will solve the problem of repairing the client application.
采用本发明实施例提供的技术方案,针对客户端应用程序中的问题,由服务端向客户端下发用于修复问题的脚本插件的配置信息,客户端根据配置信息能够自动获取、启动、执行对应脚本插件,从而在不影响用户使用的情况下修复问题。According to the technical solution provided by the embodiment of the present invention, the configuration information of the script plug-in for repairing the problem is sent by the server to the client, and the client can automatically acquire, start, and execute according to the configuration information. Corresponds to the script plugin to fix the problem without affecting user usage.
客户端还可以进一步上报运行日志,例如在脚本插件下载成功后,或运行脚本插件成功后,上报运行日志给服务端,以便开发者能够了解脚本插件的请求、下载、执行等全过程,便于统计,进行问题定位及脚本插件的代码优化。The client can further report the running log. For example, after the script plug-in is successfully downloaded, or after the script plug-in is successfully executed, the running log is reported to the server, so that the developer can understand the request, download, and execution of the script plug-in, which is convenient for statistics. , problem positioning and code optimization for script plugins.
在上述技术方案的基础上,优选是基于配置信息对脚本插件进行有效性验证,以提高问题修复的可靠性。有效性验证可以从多方面进行,优选是通过脚本插件的版本号和验证信息来实现。 Based on the foregoing technical solution, it is preferable to verify the validity of the script plug-in based on the configuration information, so as to improve the reliability of the problem repair. Validation can be done in a number of ways, preferably through the version number and verification information of the script plugin.
实施例二Embodiment 2
图2为本发明实施例二提供的一种应用程序的修复方法的流程图,本实施例以上述实施例为基础,且具体是优化了根据所述配置信息获取对应的有效脚本插件的操作。本实施例的方法包括:FIG. 2 is a flowchart of a method for repairing an application program according to Embodiment 2 of the present invention. The embodiment is based on the foregoing embodiment, and specifically, the operation of obtaining a corresponding valid script plug-in according to the configuration information is optimized. The method of this embodiment includes:
S210、接收服务端下发的脚本插件的配置信息;S210. Receive configuration information of a script plugin delivered by the server.
S220、从所述配置信息中获取脚本插件的第一版本号;S220. Obtain a first version number of the script plugin from the configuration information.
S230、获取本地当前采用的有效脚本插件的第二版本号;S230. Obtain a second version number of a valid script plugin currently used locally.
S240、比对所述第一版本号和第二版本号,验证所述第一版本号的有效性;S240. Align the first version number and the second version number to verify validity of the first version number.
S250、如果所述第一版本号有效,则获取对应的有效脚本插件;S250. If the first version number is valid, obtain a corresponding valid script plugin.
S260、在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。S260. During the running of the application, the valid script plugin is started to repair the application.
上述方案中,第一版本号是服务端配置的需要生效使用的脚本插件的版本号,客户端本地的第二版本号是客户端已生效正在使用的脚本插件的版本号。可以通过比较两个版本号的方式来验证当前配置的脚本插件的有效性。例如,当第一版本号的排序高于第二版本号,则确定第一版本号有效。否则,客户端实际上已更新至较新的版本,无需再进行脚本插件的更新。In the above solution, the first version number is the version number of the script plug-in that needs to be in effect for the server configuration, and the second version number of the client local is the version number of the script plug-in that the client has in effect. You can verify the validity of the currently configured script plugin by comparing the two version numbers. For example, when the order of the first version number is higher than the second version number, it is determined that the first version number is valid. Otherwise, the client has actually been updated to a newer version, eliminating the need to update the script plugin.
实施例三Embodiment 3
图3为本发明实施例三提供的一种应用程序的修复方法的流程图,本实施例以上述实施例为基础,且具体是优化了通过下载方式获取有效脚本插件的方案。本实施例的方法包括:FIG. 3 is a flowchart of a method for repairing an application program according to Embodiment 3 of the present invention. The embodiment is based on the foregoing embodiment, and specifically, a solution for obtaining an effective script plug-in by downloading is optimized. The method of this embodiment includes:
S310、接收服务端下发的脚本插件的配置信息;S310. Receive configuration information of a script plug-in delivered by the server.
S320、根据所述配置信息下载对应的有效脚本插件;S320. Download a corresponding valid script plug-in according to the configuration information.
S330、从所述配置信息中获取所述脚本插件的第一摘要算法值;S330. Acquire a first digest algorithm value of the script plugin from the configuration information.
S340、计算下载完成的所述脚本插件的第二摘要算法值;S340. Calculate a second digest algorithm value of the script plugin that is downloaded and completed.
S350、比对所述第一摘要算法值和第二摘要算法值,以验证下载的所述脚本插件的有效性,如果有效,则执行S360,如果无效,则重复执行S320,或者结束本次操作,提示出现异常; S350. Align the first digest algorithm value and the second digest algorithm value to verify the validity of the downloaded script plugin. If yes, execute S360. If invalid, execute S320 repeatedly, or end the operation. , the prompt is abnormal;
S360、在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。S360. During the running of the application, launch the valid script plugin to repair the application.
上述方案中,可以采用MD5的摘要算法,第一摘要算法值是服务端对完整的脚本插件进行计算获取的摘要算法值,作为验证信息;第二摘要算法值是客户端在将脚本插件下载完成后计算获取的摘要算法值,若脚本插件下载完整且正确,则两个摘要算法值相同,下载的脚本插件有效。基于摘要算法对脚本插件进行验证,可以保证下载的完整性。In the foregoing solution, the digest algorithm of the MD5 may be used. The first digest algorithm value is a digest algorithm value obtained by the server for calculating the complete script plug-in, and the digest algorithm value is used as the verification information; the second digest algorithm value is that the client downloads the script plug-in. After calculating the obtained digest algorithm value, if the script plug-in download is complete and correct, the two digest algorithm values are the same, and the downloaded script plug-in is valid. The script plugin is verified based on the digest algorithm to ensure the integrity of the download.
实施例四Embodiment 4
图4为本发明实施例四提供的一种应用程序的修复方法的流程图,该实施例以前述实施例为基础,提供一应用实例。该方法具体包括:FIG. 4 is a flowchart of a method for repairing an application according to Embodiment 4 of the present invention. The embodiment provides an application example based on the foregoing embodiment. The method specifically includes:
S401、开发者创建用于修复客户端问题的Lua脚本插件,部署在服务端;S401. The developer creates a Lua script plugin for fixing the client problem and deploys it on the server side;
S402、生成对应上述Lua脚本插件的配置信息,存储在服务端,配置信息包括该脚本插件的版本号、在服务端的下载地址、以及MD5值;S402. Generate configuration information corresponding to the Lua script plug-in, and store the information on the server. The configuration information includes a version number of the script plug-in, a download address on the server, and an MD5 value.
S403、服务端按照客户端的版本,下发适用于该客户端的脚本插件的配置信息;S403. The server delivers configuration information of a script plugin applicable to the client according to the version of the client.
S404、客户端接收服务端下发的脚本插件的配置信息;S404. The client receives configuration information of a script plugin delivered by the server.
S405、客户端校验脚本插件的版本信息,判断下发的版本号是否高于当前生效脚本插件的版本号,若是,则有效,执行S406,否则,结束流程;S405, the version information of the client verification script plug-in, determining whether the issued version number is higher than the version number of the currently valid script plug-in, and if yes, executing, S406 is performed; otherwise, the process ends;
S406、配置信息有效时,客户端重置生效的配置信息;S406. When the configuration information is valid, the client resets the configuration information that is valid.
具体是,客户端将当前生效脚本插件的版本号进行替换。对于已存在的其他脚本插件,客户端可以删除,也可以存储以备后续使用。Specifically, the client replaces the version number of the currently active script plugin. For other script plugins that already exist, the client can be deleted or stored for later use.
客户端可以在接收到配置信息后,直接执行有效性验证和下载操作,也可以在接收到配置信息并验证有效后,提示用户,根据用户的指令执行下载操作。After receiving the configuration information, the client can directly perform the validity verification and download operation, or after receiving the configuration information and verifying the validity, the client can prompt the user to perform the download operation according to the user's instruction.
S407、客户端重新下载配置的脚本插件,下载成功则执行S408,否则,结束流程;S407. The client re-downloads the configured script plug-in. If the download succeeds, the process proceeds to S408. Otherwise, the process ends.
S408、客户端在下载成功后上报日志到服务端;S408. The client reports the log to the server after the download succeeds.
S409、客户端校验已下载脚本插件的MD5值,即比较配置信息中的MD5值 与下载脚本插件计算获得的MD5值是否一致,若是,则为有效脚本插件,执行S410,否则,结束流程;S409. The client verifies the MD5 value of the downloaded script plugin, that is, compares the MD5 value in the configuration information. Whether it is consistent with the MD5 value obtained by the download script plugin, if yes, it is a valid script plugin, and S410 is executed; otherwise, the process ends;
S410、脚本插件有效时,启动Lua引擎,使Lua脚本插件执行环境生效,若启动成功则执行S411,否则,结束流程;S410. When the script plug-in is valid, the Lua engine is started to make the Lua script plug-in execution environment take effect. If the startup is successful, S411 is executed; otherwise, the process ends;
S411、Lua引擎启动成功后,客户端上报日志至服务端。After the S411 and the Lua engine are successfully started, the client reports the log to the server.
S412、当客户端运行到问题所在部分时,触发Lua脚本插件执行生效,修复问题。S412. When the client runs to the part where the problem is located, the Lua script plug-in is triggered to take effect and fix the problem.
本发明实施例的技术方案,可以使用Lua+Wax框架,通过客户端与服务端协作,动态的对iOS客户端中存在的问题进行动态、快速的修复,从而避免提交新版本或影响用户正常使用的问题,可为产品带来如下收益:The technical solution of the embodiment of the present invention can use the Lua+Wax framework to dynamically and quickly repair problems existing in the iOS client through cooperation between the client and the server, thereby avoiding submitting a new version or affecting normal use of the user. The problem can bring the following benefits to the product:
1、可以动态、快速、灵活地修复部分iOS应用程序问题,无需再次打包提交审核,且不影响用户正常使用;1, can repair some iOS application problems dynamically, quickly and flexibly, no need to package and submit the review again, and does not affect the normal use of the user;
2、整个修复过程完全可控,风险低;2. The entire repair process is completely controllable and the risk is low;
3、Lua脚本体积小,节约用户数据流量;3, Lua script is small, saving user data traffic;
4、扩展性强,可同步、高效修复多个问题。4, strong scalability, can solve multiple problems synchronously and efficiently.
实施例五Embodiment 5
图5为本发明实施例五提供的一种应用程序的修复装置的结构示意图,该装置包括:配置接收模块510、脚本获取模块520和程序修复模块530。FIG. 5 is a schematic structural diagram of an apparatus for repairing an application program according to Embodiment 5 of the present invention. The apparatus includes: a configuration receiving module 510, a script obtaining module 520, and a program repairing module 530.
其中,配置接收模块510,用于接收服务端下发的脚本插件的配置信息;脚本获取模块520,用于根据所述配置信息获取对应的有效脚本插件;程序修复模块530,用于在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。The configuration receiving module 510 is configured to receive configuration information of a script plug-in that is sent by the server, and the script obtaining module 520 is configured to obtain a corresponding valid script plug-in according to the configuration information, and the program repairing module 530 is configured to run the application. During the process, the valid script plugin is launched to repair the application.
具体的,程序修复模块530可包括:入栈监听单元531和程序替换单元532。Specifically, the program repair module 530 can include: a stack listening unit 531 and a program replacing unit 532.
其中,入栈监听单元531,用于在运行应用程序的过程中,启动所述有效脚本插件以监听所述应用程序的函数入栈操作;程序替换单元532,用于在监听到所述有效脚本插件中设置的目标函数的入栈请求时,以所述有效脚本插件中的替换函数,代替所述目标函数执行入栈操作,以运行所述替换函数来修复所述 应用程序。The stacking unit 531 is configured to start the function script plug-in to listen to the function stacking operation of the application in the process of running the application, and the program replacing unit 532 is configured to listen to the valid script. a push request of the target function set in the plugin, performing a push operation in place of the target function with a replacement function in the valid script plugin, to run the replacement function to repair the application.
本发明实施例的技术方案中,所述应用程序可以为基于iOS系统开发的封闭代码程序,所述脚本插件的编程语言优选为Lua语言。In the technical solution of the embodiment of the present invention, the application program may be a closed code program developed based on an iOS system, and the programming language of the script plug-in is preferably a Lua language.
上述技术方案中,优选是进一步对脚本插件进行有效性验证。In the above technical solution, it is preferable to further verify the validity of the script plugin.
则脚本获取模块具体可包括:第一版本号获取单元、第二版本号获取单元、有效性验证单元和脚本获取单元。The script acquisition module may specifically include: a first version number acquisition unit, a second version number acquisition unit, a validity verification unit, and a script acquisition unit.
其中,第一版本号获取单元,用于从所述配置信息中获取脚本插件的第一版本号;第二版本号获取单元,用于获取本地当前采用的有效脚本插件的第二版本号;有效性验证单元,用于比对所述第一版本号和第二版本号,验证所述第一版本号的有效性;脚本获取单元,用于如果所述第一版本号有效,则获取对应的有效脚本插件。The first version number obtaining unit is configured to obtain a first version number of the script plugin from the configuration information, and the second version number obtaining unit is configured to obtain a second version number of the valid script plugin currently used locally; a verification unit, configured to compare the first version number and the second version number, verify validity of the first version number; and a script obtaining unit, configured to acquire a corresponding one if the first version number is valid Valid script plugin.
此外,脚本获取模块还可以具体包括:版本号获取单元、本地获取单元和下载获取单元。其中,版本号获取单元,从所述配置信息中获取所述脚本插件的版本号;本地获取单元,用于如果在本地查询到存储有所述版本号对应的脚本插件,则作为有效脚本插件;下载获取单元,用于如果在本地未查询到存储有所述版本号对应的脚本插件,则从所述服务端下载对应的有效脚本插件。In addition, the script obtaining module may further include: a version number obtaining unit, a local obtaining unit, and a download obtaining unit. The version number obtaining unit obtains the version number of the script plug-in from the configuration information, and the local obtaining unit is configured to: if the script plug-in corresponding to the version number is stored locally, the effective plug-in plug-in; And a downloading unit, configured to download a corresponding valid script plugin from the server if the script plugin corresponding to the version number is not queried locally.
进一步的,该装置还可以包括:摘要验证模块,用于从所述服务端下载对应的有效脚本插件之后,从所述配置信息中获取所述脚本插件的第一摘要算法值;计算下载完成的所述脚本插件的第二摘要算法值;比对所述第一摘要算法值和第二摘要算法值,以验证下载的所述脚本插件的有效性。Further, the device may further include: a digest verification module, configured to: after downloading the corresponding valid script plug-in from the server, obtain the first digest algorithm value of the script plug-in from the configuration information; a second digest algorithm value of the script plugin; comparing the first digest algorithm value and the second digest algorithm value to verify validity of the downloaded script plugin.
上述应用程序的修复装置可执行本发明任意实施例所提供的应用程序的修复方法,具备执行方法相应的功能模块和有益效果。The repairing device of the above application can perform the repairing method of the application program provided by any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the executing method.
采用本发明实施例提供的技术方案,针对客户端应用程序中的问题,由服务端向客户端下发用于修复问题的脚本插件的配置信息,客户端根据配置信息能够自动获取、启动、执行对应脚本插件,从而在不影响用户使用的情况下修复问题。 According to the technical solution provided by the embodiment of the present invention, the configuration information of the script plug-in for repairing the problem is sent by the server to the client, and the client can automatically acquire, start, and execute according to the configuration information. Corresponds to the script plugin to fix the problem without affecting user usage.
实施例六Embodiment 6
本实施例提供一种非易失性计算机存储介质,所述计算机存储介质存储有一个或者多个模块,当所述一个或者多个模块被一个执行应用程序的修复方法的设备执行时,使得所述设备执行如下操作:The embodiment provides a non-volatile computer storage medium storing one or more modules, when the one or more modules are executed by a device executing a repair method of an application, The device performs the following operations:
接收服务端下发的脚本插件的配置信息;Receiving configuration information of a script plugin delivered by the server;
根据所述配置信息获取对应的有效脚本插件;Obtaining a corresponding valid script plugin according to the configuration information;
在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。The active script plugin is launched to repair the application during the running of the application.
上述存储介质中存储的模块被所述设备执行时,在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序可包括:在运行应用程序的过程中,启动所述有效脚本插件以监听所述应用程序的函数入栈操作;When the module stored in the storage medium is executed by the device, in the process of running the application, starting the valid script plugin to repair the application may include: starting the valid script during running the application The plugin pushes the function to listen to the application;
在监听到所述有效脚本插件中设置的目标函数的入栈请求时,以所述有效脚本插件中的替换函数,代替所述目标函数执行入栈操作,以运行所述替换函数来修复所述应用程序。When listening to the push request of the target function set in the valid script plugin, performing a push operation in place of the target function with a replacement function in the valid script plugin to run the replacement function to repair the application.
上述存储介质中存储的模块被所述设备执行时,可包括:When the module stored in the foregoing storage medium is executed by the device, the method may include:
所述应用程序为基于iOS系统开发的封闭代码程序,所述脚本插件的编程语言为Lua语言。The application is a closed code program developed based on the iOS system, and the programming language of the script plugin is Lua language.
上述存储介质中存储的模块被所述设备执行时,根据所述配置信息获取对应的有效脚本插件可包括:When the module stored in the foregoing storage medium is executed by the device, obtaining a corresponding valid script plug-in according to the configuration information may include:
从所述配置信息中获取脚本插件的第一版本号;Obtaining a first version number of the script plugin from the configuration information;
获取本地当前采用的有效脚本插件的第二版本号;Get the second version number of the valid script plugin currently used locally;
比对所述第一版本号和第二版本号,验证所述第一版本号的有效性;Verifying the validity of the first version number by comparing the first version number and the second version number;
如果所述第一版本号有效,则获取对应的有效脚本插件。If the first version number is valid, the corresponding valid script plugin is obtained.
上述存储介质中存储的模块被所述设备执行时,根据所述配置信息获取对应的有效脚本插件可包括:When the module stored in the foregoing storage medium is executed by the device, obtaining a corresponding valid script plug-in according to the configuration information may include:
从所述配置信息中获取所述脚本插件的版本号;Obtaining a version number of the script plugin from the configuration information;
如果在本地查询到存储有所述版本号对应的脚本插件,则作为有效脚本插件; If the script plugin corresponding to the version number is stored locally, it is used as a valid script plugin;
如果在本地未查询到存储有所述版本号对应的脚本插件,则从所述服务端下载对应的有效脚本插件。If the script plugin corresponding to the version number is not queried locally, the corresponding valid script plugin is downloaded from the server.
上述存储介质中存储的模块被所述设备执行时,从所述服务端下载对应的有效脚本插件之后,还可包括:When the module stored in the foregoing storage medium is executed by the device, after downloading the corresponding valid script plug-in from the server, the method may further include:
从所述配置信息中获取所述脚本插件的第一摘要算法值;Obtaining, from the configuration information, a first digest algorithm value of the script plugin;
计算下载完成的所述脚本插件的第二摘要算法值;Calculating a second digest algorithm value of the script plugin that is downloaded and completed;
比对所述第一摘要算法值和第二摘要算法值,以验证下载的所述脚本插件的有效性。The first digest algorithm value and the second digest algorithm value are compared to verify the validity of the downloaded script plugin.
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。Through the above description of the embodiments, those skilled in the art can clearly understand that the present invention can be implemented by software and necessary general hardware, and can also be implemented by hardware, but in many cases, the former is a better implementation. . Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product, which may be stored in a computer readable storage medium, such as a floppy disk of a computer. , Read-Only Memory (ROM), Random Access Memory (RAM), Flash (FLASH), hard disk or optical disk, etc., including a number of instructions to make a computer device (can be a personal computer) The server, or network device, etc.) performs the methods described in various embodiments of the present invention.
值得注意的是,上述应用程序的修复装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。It should be noted that, in the embodiment of the repair apparatus of the above application, each unit and module included is only divided according to functional logic, but is not limited to the above division, as long as the corresponding function can be implemented; The specific names of the functional units are also only for convenience of distinguishing from each other, and are not intended to limit the scope of protection of the present invention.
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。 The above is only a specific embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or substitutions within the technical scope of the present disclosure. All should be covered by the scope of the present invention. Therefore, the scope of the invention should be determined by the scope of the appended claims.

Claims (13)

  1. 一种应用程序的修复方法,其特征在于,包括:A method for repairing an application, comprising:
    接收服务端下发的脚本插件的配置信息;Receiving configuration information of a script plugin delivered by the server;
    根据所述配置信息获取对应的有效脚本插件;Obtaining a corresponding valid script plugin according to the configuration information;
    在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。The active script plugin is launched to repair the application during the running of the application.
  2. 根据权利要求1所述的方法,其特征在于:在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序包括:The method of claim 1, wherein in the running of the application, launching the valid script plugin to repair the application comprises:
    在运行应用程序的过程中,启动所述有效脚本插件以监听所述应用程序的函数入栈操作;In the process of running the application, launching the valid script plugin to listen to the function stacking operation of the application;
    在监听到所述有效脚本插件中设置的目标函数的入栈请求时,以所述有效脚本插件中的替换函数,代替所述目标函数执行入栈操作,以运行所述替换函数来修复所述应用程序。When listening to the push request of the target function set in the valid script plugin, performing a push operation in place of the target function with a replacement function in the valid script plugin to run the replacement function to repair the application.
  3. 根据权利要求2所述的方法,其特征在于:The method of claim 2 wherein:
    所述应用程序为基于iOS系统开发的封闭代码程序,所述脚本插件的编程语言为Lua语言。The application is a closed code program developed based on the iOS system, and the programming language of the script plugin is Lua language.
  4. 根据权利要求1-3任一所述的方法,其特征在于,根据所述配置信息获取对应的有效脚本插件包括:The method according to any one of claims 1-3, wherein the obtaining a corresponding valid script plugin according to the configuration information comprises:
    从所述配置信息中获取脚本插件的第一版本号;Obtaining a first version number of the script plugin from the configuration information;
    获取本地当前采用的有效脚本插件的第二版本号;Get the second version number of the valid script plugin currently used locally;
    比对所述第一版本号和第二版本号,验证所述第一版本号的有效性;Verifying the validity of the first version number by comparing the first version number and the second version number;
    如果所述第一版本号有效,则获取对应的有效脚本插件。If the first version number is valid, the corresponding valid script plugin is obtained.
  5. 根据权利要求1-3任一所述的方法,其特征在于,根据所述配置信息获取对应的有效脚本插件包括:The method according to any one of claims 1-3, wherein the obtaining a corresponding valid script plugin according to the configuration information comprises:
    从所述配置信息中获取所述脚本插件的版本号;Obtaining a version number of the script plugin from the configuration information;
    如果在本地查询到存储有所述版本号对应的脚本插件,则作为有效脚本插件;If the script plugin corresponding to the version number is stored locally, it is used as a valid script plugin;
    如果在本地未查询到存储有所述版本号对应的脚本插件,则从所述服务端下载对应的有效脚本插件。If the script plugin corresponding to the version number is not queried locally, the corresponding valid script plugin is downloaded from the server.
  6. 根据权利要求5所述的方法,其特征在于,从所述服务端下载对应的有 效脚本插件之后,还包括:The method according to claim 5, wherein the corresponding download from the server is After the script plugin, it also includes:
    从所述配置信息中获取所述脚本插件的第一摘要算法值;Obtaining, from the configuration information, a first digest algorithm value of the script plugin;
    计算下载完成的所述脚本插件的第二摘要算法值;Calculating a second digest algorithm value of the script plugin that is downloaded and completed;
    比对所述第一摘要算法值和第二摘要算法值,以验证下载的所述脚本插件的有效性。The first digest algorithm value and the second digest algorithm value are compared to verify the validity of the downloaded script plugin.
  7. 一种应用程序的修复装置,其特征在于,包括:An application repairing device, comprising:
    配置接收模块,用于接收服务端下发的脚本插件的配置信息;The receiving module is configured to receive configuration information of a script plug-in delivered by the server;
    脚本获取模块,用于根据所述配置信息获取对应的有效脚本插件;a script obtaining module, configured to obtain a corresponding valid script plugin according to the configuration information;
    程序修复模块,用于在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。a program repair module, configured to start the valid script plugin to repair the application during the running of the application.
  8. 根据权利要求7所述的装置,其特征在于,程序修复模块包括:The apparatus according to claim 7, wherein the program repair module comprises:
    入栈监听单元,用于在运行应用程序的过程中,启动所述有效脚本插件以监听所述应用程序的函数入栈操作;a stacking listening unit, configured to start the valid scripting plugin to listen to the function stacking operation of the application during the running of the application;
    程序替换单元,用于在监听到所述有效脚本插件中设置的目标函数的入栈请求时,以所述有效脚本插件中的替换函数,代替所述目标函数执行入栈操作,以运行所述替换函数来修复所述应用程序。a program replacement unit, configured to perform a push operation in place of the target function in a replacement function in the valid script plugin when the push request of the target function set in the valid script plugin is monitored, to run the Replace the function to fix the application.
  9. 根据权利要求8所述的装置,其特征在于:The device of claim 8 wherein:
    所述应用程序为基于iOS系统开发的封闭代码程序,所述脚本插件的编程语言为Lua语言。The application is a closed code program developed based on the iOS system, and the programming language of the script plugin is Lua language.
  10. 根据权利要求7-9任一所述的装置,其特征在于,脚本获取模块包括:The device according to any one of claims 7-9, wherein the script acquisition module comprises:
    第一版本号获取单元,用于从所述配置信息中获取脚本插件的第一版本号;a first version number obtaining unit, configured to obtain a first version number of the script plugin from the configuration information;
    第二版本号获取单元,用于获取本地当前采用的有效脚本插件的第二版本号;a second version number obtaining unit, configured to obtain a second version number of a valid script plugin currently used locally;
    有效性验证单元,用于比对所述第一版本号和第二版本号,验证所述第一版本号的有效性;a validity verification unit, configured to compare the first version number and the second version number, and verify validity of the first version number;
    脚本获取单元,用于如果所述第一版本号有效,则获取对应的有效脚本插件。a script obtaining unit, configured to acquire a corresponding valid script plugin if the first version number is valid.
  11. 根据权利要求7-9任一所述的装置,其特征在于,脚本获取模块包括: The device according to any one of claims 7-9, wherein the script acquisition module comprises:
    版本号获取单元,从所述配置信息中获取所述脚本插件的版本号;a version number obtaining unit, obtaining a version number of the script plugin from the configuration information;
    本地获取单元,用于如果在本地查询到存储有所述版本号对应的脚本插件,则作为有效脚本插件;a local obtaining unit, configured to be a valid script plugin if the script plugin corresponding to the version number is stored locally;
    下载获取单元,用于如果在本地未查询到存储有所述版本号对应的脚本插件,则从所述服务端下载对应的有效脚本插件。And a downloading unit, configured to download a corresponding valid script plugin from the server if the script plugin corresponding to the version number is not queried locally.
  12. 根据权利要求11所述的装置,其特征在于,还包括:The device according to claim 11, further comprising:
    摘要验证模块,用于从所述服务端下载对应的有效脚本插件之后,从所述配置信息中获取所述脚本插件的第一摘要算法值;计算下载完成的所述脚本插件的第二摘要算法值;比对所述第一摘要算法值和第二摘要算法值,以验证下载的所述脚本插件的有效性。a summary verification module, configured to obtain a first digest algorithm value of the script plugin from the configuration information after downloading a corresponding valid script plugin from the server, and calculate a second digest algorithm of the script plugin that is downloaded and downloaded a value; comparing the first digest algorithm value and the second digest algorithm value to verify validity of the downloaded script plugin.
  13. 一种非易失性计算机存储介质,所述计算机存储介质存储有一个或者多个模块,其特征在于,当所述一个或者多个模块被一个执行应用程序的修复方法的设备执行时,使得所述设备执行如下操作:A non-volatile computer storage medium storing one or more modules, wherein when the one or more modules are executed by a device executing a repair method of an application, The device performs the following operations:
    接收服务端下发的脚本插件的配置信息;Receiving configuration information of a script plugin delivered by the server;
    根据所述配置信息获取对应的有效脚本插件;Obtaining a corresponding valid script plugin according to the configuration information;
    在运行应用程序的过程中,启动所述有效脚本插件以修复所述应用程序。 The active script plugin is launched to repair the application during the running of the application.
PCT/CN2015/092066 2015-05-14 2015-10-16 Method and device for repairing application programs, and storage medium WO2016179957A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017508621A JP6458133B2 (en) 2015-05-14 2015-10-16 Application program restoration method, apparatus, and recording medium
KR1020177004172A KR101952225B1 (en) 2015-05-14 2015-10-16 Method and device for repairing application programs, and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510246297.4 2015-05-14
CN201510246297.4A CN104866307B (en) 2015-05-14 2015-05-14 The restorative procedure and device of a kind of application program

Publications (1)

Publication Number Publication Date
WO2016179957A1 true WO2016179957A1 (en) 2016-11-17

Family

ID=53912158

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/092066 WO2016179957A1 (en) 2015-05-14 2015-10-16 Method and device for repairing application programs, and storage medium

Country Status (4)

Country Link
JP (1) JP6458133B2 (en)
KR (1) KR101952225B1 (en)
CN (1) CN104866307B (en)
WO (1) WO2016179957A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543323A (en) * 2019-09-11 2019-12-06 北京搜狐新动力信息技术有限公司 Application program repairing method and device
CN113110864A (en) * 2021-03-19 2021-07-13 深圳市腾讯网络信息技术有限公司 Application program updating method and device and storage medium

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104866307B (en) * 2015-05-14 2018-04-27 百度在线网络技术(北京)有限公司 The restorative procedure and device of a kind of application program
CN106020786A (en) * 2015-11-02 2016-10-12 广州市动景计算机科技有限公司 Method and device for dynamically restoring application program, and related system
CN107239267A (en) * 2016-03-29 2017-10-10 百度在线网络技术(北京)有限公司 The reparation extended method and device of application program
CN106021043A (en) * 2016-05-10 2016-10-12 浪潮电子信息产业股份有限公司 Method and device for acquiring configuration information of server
CN106372005B (en) * 2016-09-20 2019-10-11 深圳市华美兴泰科技股份有限公司 The method and device of image data is accessed in IOS system using external memorizer
CN106897095B (en) * 2017-02-24 2020-10-13 网易(杭州)网络有限公司 Method and device for hot repairing application program, readable storage medium and computing equipment
CN108829431A (en) * 2018-06-27 2018-11-16 杭州贝购科技有限公司 Update method, device, equipment and the storage medium of iOS application program
CN109725923A (en) * 2018-12-27 2019-05-07 广州华多网络科技有限公司 A kind of software light weight update method, device and equipment
CN110362330B (en) * 2019-07-18 2023-09-01 腾讯科技(深圳)有限公司 Application program updating method, device, terminal and storage medium
CN114025037B (en) * 2021-10-28 2024-04-30 北京百度网讯科技有限公司 Cloud mobile phone overhaul method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622241A (en) * 2011-01-26 2012-08-01 腾讯科技(深圳)有限公司 Software upgrading method and software upgrading device
CN103176809A (en) * 2011-12-23 2013-06-26 腾讯科技(深圳)有限公司 Application upgrading method and application upgrading system
CN104407889A (en) * 2014-11-11 2015-03-11 百度在线网络技术(北京)有限公司 Method and device for repairing application program
CN104504341A (en) * 2015-01-21 2015-04-08 联想(北京)有限公司 Operating system bug repairing method and device
CN104866307A (en) * 2015-05-14 2015-08-26 百度在线网络技术(北京)有限公司 Application repairing method and apparatus

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745385B1 (en) * 1999-09-01 2004-06-01 Microsoft Corporation Fixing incompatible applications by providing stubs for APIs
JP3960961B2 (en) * 2003-09-19 2007-08-15 富士通株式会社 Apparatus and method for applying correction information to software
JP5499584B2 (en) * 2009-09-09 2014-05-21 株式会社リコー Print control program, information processing apparatus, and recording medium
JP2011164916A (en) * 2010-02-09 2011-08-25 Noria Co Ltd Software patch download solution
CN102253850A (en) * 2011-07-08 2011-11-23 烽火通信科技股份有限公司 Incremental software updating method of internet protocol television (IPTV) set top box
CN102955700A (en) * 2011-08-18 2013-03-06 腾讯科技(深圳)有限公司 System and method for upgrading software
CN103246528A (en) * 2012-02-10 2013-08-14 中兴通讯股份有限公司 Software updating method and device
JP5330565B2 (en) * 2012-04-24 2013-10-30 株式会社東芝 Computer
JP6209854B2 (en) * 2013-05-10 2017-10-11 株式会社リコー Information processing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622241A (en) * 2011-01-26 2012-08-01 腾讯科技(深圳)有限公司 Software upgrading method and software upgrading device
CN103176809A (en) * 2011-12-23 2013-06-26 腾讯科技(深圳)有限公司 Application upgrading method and application upgrading system
CN104407889A (en) * 2014-11-11 2015-03-11 百度在线网络技术(北京)有限公司 Method and device for repairing application program
CN104504341A (en) * 2015-01-21 2015-04-08 联想(北京)有限公司 Operating system bug repairing method and device
CN104866307A (en) * 2015-05-14 2015-08-26 百度在线网络技术(北京)有限公司 Application repairing method and apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543323A (en) * 2019-09-11 2019-12-06 北京搜狐新动力信息技术有限公司 Application program repairing method and device
CN113110864A (en) * 2021-03-19 2021-07-13 深圳市腾讯网络信息技术有限公司 Application program updating method and device and storage medium

Also Published As

Publication number Publication date
JP6458133B2 (en) 2019-01-23
KR101952225B1 (en) 2019-02-26
CN104866307A (en) 2015-08-26
CN104866307B (en) 2018-04-27
KR20170034901A (en) 2017-03-29
JP2017526069A (en) 2017-09-07

Similar Documents

Publication Publication Date Title
WO2016179957A1 (en) Method and device for repairing application programs, and storage medium
US10949191B2 (en) Patch-upgrade-based file processing method and apparatus, terminal, and storage medium
US9575830B2 (en) Run-time error repairing method, device and system
CN110147240B (en) Cloud storage-based application program installation method, system and storage medium
WO2017067448A1 (en) Firmware-over-the-air upgrade method, system and computer storage medium
CN109358888A (en) Server firmware upgrade method, device, system and computer readable storage medium
CN110879713B (en) Android terminal strong encryption plug-in thermal update management method
US20130346957A1 (en) Auto-update while running client interface with handshake
RU2005110042A (en) EFFECTIVE CORRECTION OF PROGRAMS
WO2013117039A1 (en) Software upgrading method and device
CN106775873B (en) Method and equipment for updating mobile phone software and acquiring patch file
TW201621647A (en) Operating system updating method
WO2018024198A1 (en) Application upgrade method and system for set-top box, and set-top box
WO2017016282A1 (en) Software upgrading method and apparatus, and computer storage medium
JP2023505844A (en) Package-based remote firmware update
CN102981872A (en) Start-up and upgrade method of terminal equipment and terminal equipment
CN106293790B (en) application program upgrading method and device based on Firefox operating system
WO2018166322A1 (en) Repairing method and device for system partition
US11520891B1 (en) Secure boot of an integrated circuit
CN111679842B (en) Application program hot update processing method, device and system
WO2011110097A1 (en) Method and device for software downloading
CN114327574A (en) Differential upgrading method, electronic device and storage medium
CN111679850B (en) Application program hot update processing method, device and system
CN108234414B (en) Upgrading method and device for APP
CN110647383A (en) Application management method based on docker container and computing device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15891657

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017508621

Country of ref document: JP

Kind code of ref document: A

Ref document number: 20177004172

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15891657

Country of ref document: EP

Kind code of ref document: A1