Application repairing method, device and system and medium
By generating and matching hot fix patch files, the low efficiency and high cost problems caused by multiple independent hot fixes are solved, efficient application repair on a single platform is achieved, and operating costs are reduced.
Patent Information
- Application Number
- CN202410343579.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-25
- Publication Date
- 2025-10-03
AI Technical Summary
In the existing technology, multiple hot repairs are performed independently, resulting in low application repair efficiency and high operating costs. There are also problems such as concurrent execution conflicts, redundant requests that increase server pressure, and high platform development and maintenance costs.
By detecting application anomalies, a hot fix patch file is generated, a patch package is generated, and the corresponding patch package is obtained by matching parameter information with configuration information for repair, thereby achieving unified processing of multiple hot fixes on a single platform.
It improves application repair efficiency, reduces operation and maintenance costs, avoids concurrent execution conflicts and redundant requests, and optimizes platform management.
Smart Images

Figure CN120743583A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of computer technology and relates to an application repair method, and in particular to an application repair method, device, system and medium. Background Art
[0002] New features in Flutter apps must be released to the app store before they can be downloaded and updated by users. The process of releasing new versions is cumbersome and time-consuming. When anomalies occur in the production environment, they can only be resolved by forcibly releasing new versions, which can prolong the problem and expand its scope. Multiple hotfix types can address different hotfix issues, but existing hotfix download methods have the following drawbacks: First, when multiple hotfix tasks are executed concurrently, conflicts may arise between the Dart hotfix logic and the native hotfix logic, leading to hotfix failures. For example, if the Dart logic and the native logic are interdependent, concurrent execution can lead to uncertainty in the order in which the Dart hotfix takes effect, resulting in hotfix failures. Second, each hotfix in an app maintains its own independent patch download logic, increasing uncontrollable factors and increasing app stability risks. Furthermore, the download timing for multiple hotfixes is largely the same, such as when the app is launched or when switching between the foreground and background layers. These redundant requests increase server-side system pressure. Finally, multiple sets of different types of hot fixes are independent of each other and require multiple platforms to configure and manage, which increases platform development and maintenance costs and reduces work efficiency.
[0003] In summary, the current hot repair methods for different types of applications are independent of each other, resulting in low application repair efficiency and the need for cooperation among multiple platforms, resulting in high operating costs. Summary of the Invention
[0004] In view of the above-mentioned shortcomings of the prior art, the purpose of this application is to provide an application repair method, device, system and medium to solve the problems in the prior art that multiple thermal repairs are independent of each other, application repair efficiency is low and cost is high.
[0005] In a first aspect, the present application provides an application repair method. The application repair method includes: detecting whether an application is operating abnormally, obtaining a hotfix that has occurred to the application based on the abnormal operating status of the application; generating a corresponding hotfix patch file based on each hotfix that has occurred to the application, and generating a patch package based on each hotfix patch file; responding to an application request, matching parameter information carried in the application request with pre-stored configuration information of each patch package, obtaining a corresponding patch package based on the matching result, and repairing the application corresponding to the application request; wherein the configuration information of the patch package includes a parameter information list of patchable applications.
[0006] In this application, the hot fixes that occurred in the application are obtained based on the abnormal operation of the application, and the hot fixes that occurred in the application are used to generate the corresponding hot fix patch file, and then generate a patch package. After the application sends a request, the application request is responded to, and the parameter information carried by the application request is matched with the configuration information of the patch package. According to the matching result, the corresponding patch package is obtained to repair the corresponding application. This application repair method can realize the unified processing of multiple hot fixes on a single platform, improve the efficiency of application repair, and reduce the operation and maintenance costs.
[0007] In an implementation of the first aspect, the application repair method includes: generating at least one hot fix patch file according to the type of hot fix; and compressing each of the hot fix patch files to generate a patch package.
[0008] In an implementation of the first aspect, the application repair method includes: mapping the hotfix file and the type of the hotfix into a correspondence table, wherein a suffix of the hotfix file corresponds to the type of the hotfix.
[0009] In an implementation of the first aspect, the application repair method includes: creating a hot patch configuration for inputting configuration information of the patch package; updating a hot patch list based on the hot patch configuration, and publishing the hot patch configuration; in response to the application request, matching the hot patch configuration in the hot patch list with parameter information carried by the application request to obtain a matching result; and obtaining a corresponding patch package based on the matching result to repair the application corresponding to the application request.
[0010] In an implementation of the first aspect, the application repair method includes: matching the parameter information with the configuration information of the patch package one by one; wherein the parameter information includes application version number information, patch version number information, device model information, and device system version information; the configuration information includes patch package version number information, patch version number information, device model information, and device system version information; when the parameter information successfully matches each item of information in the configuration information, the matching result is a successful match; when the parameter information fails to match any item of information in the configuration information, the matching result is a failed match; the successfully matched patch package is the patch package corresponding to the application request.
[0011] In an implementation of the first aspect, the application repair method further includes: verifying a verification code of the corresponding patch package with a verification code of the configuration information to verify the integrity of the corresponding patch package.
[0012] In a second aspect, the present application provides an application repair method. The application repair method includes: sending an application request; receiving configuration information of a patch package that successfully matches the parameter information carried in the application request; determining whether the configuration information meets the application's hotfix requirements; if so, downloading the patch package; if not, failing to download; decompressing the downloaded patch package, obtaining at least one hotfix patch file therein, and repairing the application.
[0013] In an implementation of the second aspect, the application repair method includes: obtaining a corresponding hot fix type based on the suffix name of the hot fix patch file; storing the hot fix patch file in a specified path based on the hot fix type, and using the configuration information as a configuration attribute of the hot fix patch file; and repairing the application based on the hot fix patch file and the configuration attributes of the hot fix patch file.
[0014] In an implementation of the second aspect, the application repair method further includes: obtaining an effectiveness condition of the hotfix file according to the configuration information, and performing node-by-node repair on the application according to the effectiveness condition.
[0015] In a third aspect, the present application provides an application repair device. The application repair device includes: an operation detection module for detecting whether an application is operating abnormally, and obtaining a hotfix that has occurred to the application based on the abnormal operation of the application; a patch package generation module for generating a corresponding hotfix patch file based on each hotfix that has occurred to the application, and generating a patch package based on each hotfix patch file; a repair processing module for responding to an application request, matching the parameter information carried by the application request with the configuration information of each pre-stored patch package, obtaining a corresponding patch package based on the matching result, and repairing the application corresponding to the application request; wherein the configuration information of the patch package includes a parameter information list of patchable applications.
[0016] In a fourth aspect, the present application provides an application repair system. The application repair system includes: a server, configured to detect whether an application is running abnormally, obtain the hot repair of the application according to the abnormal running situation of the application, generate a corresponding hot repair patch file according to each hot repair of the application, generate a patch package according to each hot repair patch file, respond to an application request, and match the parameter information carried by the application request with the pre-stored configuration information of each patch package, obtain the corresponding patch package according to the matching result, so as to repair the application corresponding to the application request, wherein the configuration information of the patch package includes a parameter information list of patchable applications; a client, configured to send an application request, receive the configuration information of the patch package that successfully matches the parameter information carried by the application request, determine whether the configuration information meets the hot repair requirements of the application, if so, download the patch package; if not, fail to download, decompress the downloaded patch package, and obtain at least one hot repair patch file to repair the application.
[0017] In a fifth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the application repair method described in any one of the first aspects and / or the application repair method described in any one of the second aspects. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1A Shown is a schematic diagram of an application scenario of the repair processing device described in this application.
[0019] Figure 1B Shown are structural diagrams of the client-cloud interaction scenarios in these implementations.
[0020] Figure 2 Shown is a flow chart of the application repair method described in an embodiment of the present application.
[0021] Figure 3 Shown is a flow chart of the application repair method described in an embodiment of the present application.
[0022] Figure 4 Shown is a flow chart of the application repair method described in an embodiment of the present application.
[0023] Figure 5 Shown is a flow chart of the application repair method described in an embodiment of the present application.
[0024] Figure 6 Shown is a flow chart of the application repair method described in an embodiment of the present application.
[0025] Figure 7 Shown is a flow chart of the application repair method described in an embodiment of the present application.
[0026] Figure 8 Shown is a structural schematic diagram of the application repair device described in an embodiment of the present application.
[0027] Figure 9 Shown is a structural diagram of the application repair system described in an embodiment of the present application.
[0028] Figure 10 Shown is a structural schematic diagram of an electronic device described in an embodiment of the present application. DETAILED DESCRIPTION
[0029] The following describes the embodiments of the present application through specific examples. Those skilled in the art can easily understand the other advantages and effects of the present application from the content disclosed in this specification. The present application can also be implemented or applied through other different specific embodiments. The details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of the present application. It should be noted that the following embodiments and features in the embodiments can be combined with each other unless they conflict.
[0030] It should be noted that the illustrations provided in the following embodiments are only schematic illustrations of the basic concept of the present application. Therefore, the illustrations only show components related to the present application and are not drawn according to the number, shape and size of components in actual implementation. In actual implementation, the type, quantity and proportion of each component can be changed at will, and the component layout type may also be more complicated.
[0031] In order to clearly describe the technical solutions of the embodiments of the present application, the following definitions are given first:
[0032] Flutter: Flutter is an open-source application development framework for building cross-platform applications on mobile, web, and desktop platforms.
[0033] APP: APP is the abbreviation of Application, which usually refers to application software running on mobile devices.
[0034] Hot patch: A hot patch is a small file containing fix or update code that is used to apply changes while the application is running. These patches usually only require replacing a small part of the application code rather than the entire application.
[0035] Hot fixes: Hot fixes dynamically update installed clients by issuing patch packages, fixing software defects without requiring users to reinstall the app. Common hot fix frameworks include Alibaba Dexposed, Alibaba AndFix, QQ Space, Meituan Robust, WeChat Tinker, and Alibaba Sophix.
[0036] Figure 1A The diagram shows an application scenario of the repair processing device described in this application. The repair processing device 1 can be used to implement the application repair method provided in the embodiment of this application, but the application scenario of the application repair method provided in the embodiment of this application is not limited to Figure 1A The repair processing device 1 shown. Figure 1A As shown, the repair processing apparatus 1 includes a local device 11 and a processor 12. The application processing method provided in the embodiment of the present application can be applied to the processor 12.
[0037] in, Figure 1A The processor 12 in the embodiment can be a single processor or a processor cluster or a cloud computing center composed of multiple processors, and the specific details are not limited here. Figure 1A Only one local device 11 and one processor 12 are shown, but it should be understood that Figure 1A The examples are only used to understand this solution, and the specific numbers of local devices 11 and processors 12 should be flexibly determined based on actual conditions.
[0038] The processor 12 may include a tablet computer, a laptop computer, a PDA, a mobile phone, a personal computer (PC), an interactive device, etc., which is not limited here.
[0039] In still other implementations, the application repair method described in this application can be applied to end-cloud interaction scenarios. Figure 1B Shown is a schematic diagram of the structure of the end-cloud interaction scenario in these implementation methods. Figure 1B As shown, the terminal-cloud interaction system 2 includes a terminal 20 and a cloud server 21. The terminal 20 and the cloud server 21 can communicate with each other, and the communication method is not limited to wired or wireless.
[0040] The terminal 20 may be mobile or fixed. For example, the terminal 20 may be a wireless terminal or a wired terminal. A wireless terminal may refer to a device with wireless transceiver capabilities that can be deployed indoors, outdoors, and in industrial workshops. The terminal 20 may be a mobile phone, a tablet computer, a laptop computer, and the like, which are not limited here. The cloud server 21 may include one or more servers, or one or more processing nodes, or one or more virtual machines running on the server. The cloud server 21 may also be referred to as a server cluster, a management platform, a data processing center, and the like, which are not limited in the embodiments of the present application.
[0041] The technical solutions in the embodiments of the present application will be described in detail below with reference to the accompanying drawings in the embodiments of the present application.
[0042] The following embodiments of the present application provide an application repair method, which can be used, for example, to Figure 1A The processor 12 shown or Figure 1B It is implemented by the cloud server 21 shown. Figure 2 The flowchart of the application repair method according to the embodiment of the present application is shown as follows: Figure 2 As shown, the application repair method includes the following steps S11 to S13.
[0043] Step S11 , detecting whether the application is running abnormally, and obtaining the hotfix of the application according to the abnormal running condition of the application.
[0044] Step S12: Generate corresponding hotfix files based on each hotfix of the application, and generate a patch package based on each hotfix file. Optionally, the hotfix file is a hotfix file based on the flutter application multi-hotfix framework. The patch package is a patch file after processing the hotfix file, and the format of the patch package is unique.
[0045] Step S13, responding to the application request, and matching the parameter information carried by the application request with the configuration information of each pre-stored patch package, obtaining the corresponding patch package according to the matching result to repair the application corresponding to the application request; wherein the configuration information of the patch package includes a list of parameter information of the patchable application.
[0046] In an embodiment of the present application, a hotfix that occurs in an application is obtained based on an abnormality in the application's operation, and a corresponding hotfix patch file is generated using the hotfix that occurred in the application, thereby generating a patch package. After the application issues a request, the application request is responded to, and the parameter information carried in the application request is matched with the configuration information of the patch package. Based on the matching result, the corresponding patch package is obtained to repair the corresponding application. This application repair method can achieve unified processing of multiple hotfixes on a single platform, improving application repair efficiency and reducing operating and maintenance costs.
[0047] Figure 3 The flowchart of the application repair method according to the embodiment of the present application is shown as follows: Figure 3 As shown, the step S12 includes the following steps S121 to S122.
[0048] Step S121: Generate at least one hotfix patch file according to the hotfix type.
[0049] Step S122: compress each of the hotfix files to generate a patch package.
[0050] In some possible implementations, one or more of the hotfix files are processed to obtain a .zip file as the patch package. In other possible implementations, only the Android native hotfix type is used for hot repair, and only the Android native hotfix type hotfix file can be generated. If the Android native hotfix type and the Dart hotfix type are required for hot repair, then the Android native hotfix type hotfix file and the Dart hotfix type hotfix file are generated. By analogy, hotfix files of various hot repair types can be flexibly combined, and this application is not limited to this.
[0051] In one embodiment of the present application, the hotfix files and the types of the hotfixes are mapped into a correspondence table, and the suffix of the hotfix files corresponds to the type of the hotfix.
[0052] As shown in the table below, in some possible implementations, the hot patch file suffix based on the Android native hot patch type is .jar, the hot patch file suffix based on the Dart hot patch type is .dav, and the hot patch file suffix based on the Android so hot patch type is .so. This application is not limited to this.
[0053] Hotfix Type Hotfix file suffix Android native hotfix .jar Dart Hotfix .dav Android so hot repair .so
[0054] Table 1 Correspondence between hotfix files and hotfix types
[0055] Figure 4The flowchart of the application repair method according to the embodiment of the present application is shown as follows: Figure 4 As shown, step S13 includes the following steps S131 to S134.
[0056] Step S131: Create a hotfix configuration file for inputting configuration information of the patch package.
[0057] Step S132: updating the hotfix list based on the hotfix configuration, and publishing the hotfix configuration.
[0058] Step S133 : In response to the application request, matching the hotfix configuration in the hotfix list with the parameter information carried in the application request to obtain a matching result.
[0059] Step S134: Obtain a corresponding patch package according to the matching result to repair the application corresponding to the application request.
[0060] In some possible implementations, a new hotfix configuration is created on a shared hotfix release platform and configuration information is entered. The configuration information includes, but is not limited to, build version information (build Version), patch version information (patch Version), device model information (device Model), device OS version information (device OSVersion), and / or device processor architecture information (CPU Arch).
[0061] In some other possible implementations, after the configuration information of the patch package is input into the hot fix release platform, the patch package is uploaded and a patch download link is generated, along with a patch verification code, an effectiveness condition (immediate effectiveness / effective at the next startup / effective at the switch) and a patch description, to determine that the hot fix configuration is complete. The hot fix list is updated based on the hot fix configuration, and the hot fix configuration is released. In response to the application request, the parameter information carried by the application request is matched with the hot fix configuration in the hot fix list to obtain a matching result, and the corresponding patch package is obtained based on the matching result to repair the application corresponding to the application request.
[0062] In one embodiment of the present application, the parameter information is matched one by one with the configuration information of the patch package. The parameter information includes the application version number information, the patch version number information, the device model information, and the device system version information. The configuration information includes the patch package version number information, the patch version number information, the device model information, and the device system version information.
[0063] Among them, the version number information, patch version number information, device model information, device system version information and / or device processor framework information is only a name meaning, and its specific naming may depend on the situation, and this application is not limited to this.
[0064] When the parameter information matches each item of information in the configuration information successfully, the matching result is a successful match; when the parameter information fails to match any item of information in the configuration information, the matching result is a failed match; the successfully matched patch package is the patch package corresponding to the application request.
[0065] In some possible implementations, Figure 5 The flowchart of the application repair method according to the embodiment of the present application is shown as follows: Figure 5 As shown, matching the parameter information with the configuration information of the patch package one by one includes the following steps S1331 to S1335.
[0066] Step S1331 : Match the parameter version number information carried in the application request with the version number information of the configuration information. If they are different, the match fails; if they are the same, proceed to the next match.
[0067] Step S1332: The parameter patch version number information carried in the application request is matched with the patch version number information in the configuration information. If they are different, the match fails; if they are the same, the next match is performed. Optionally, when a patch is first released, there is no stored patch version number information. In this case, the difference in patch version number information does not affect subsequent matching.
[0068] Step S1333: Match the parameter device model information carried in the application request with the device model information in the configuration information. If they are different, the match fails; if they are the same, proceed to the next match.
[0069] Step S1334: Match the parameter device system version information carried in the application request with the device system version information in the configuration information. If they are different, the match fails; if they are the same, proceed to the next match.
[0070] Step S1335: The parameter device processor framework information carried in the application request is matched with the device processor framework information in the configuration information. If they are different, the match fails. If they are the same, the parameter information is confirmed to match each item in the configuration information successfully. Optionally, if the device processor framework information of both is 32-bit or 64-bit, the matching information is confirmed to be a successful match.
[0071] When the parameter information matches each item of information in the configuration information successfully, the matching result is a successful match; when the parameter information fails to match any item of information in the configuration information, the matching result is a failed match; the successfully matched patch package is the patch package corresponding to the application request.
[0072] It should be noted that the above is only one possible implementation method of the embodiment of the present application, and the implementation order of each matching step is not limited to this.
[0073] In one embodiment of the present application, the verification code of the corresponding patch package and the verification code of the configuration information are verified to verify the integrity of the corresponding patch package.
[0074] Optionally, the configuration information of the patch package includes an md5 value for verifying file integrity. The corresponding patch package is obtained, and the md5 value of the corresponding patch package is verified with the md5 value of the configuration information to verify the integrity of the corresponding patch package.
[0075] Figure 6 The flowchart of the application repair method according to the embodiment of the present application is shown as follows: Figure 6 As shown, the application repair method includes the following steps S21 to S24.
[0076] Step S21: Send an application request.
[0077] Step S22: receiving configuration information of a patch package that successfully matches the parameter information carried in the application request.
[0078] Step S23, determining whether the configuration information meets the hotfix requirement of the application, if so, downloading the patch package; if not, failing to download.
[0079] Step S24: decompress the downloaded patch package to obtain at least one hotfix file to repair the application.
[0080] In some possible implementations, the configuration information includes version number information, patch version number information, device model information, device system version information and / or device processor framework information. The parameter information carried by the application request is matched with each configuration information of the patch package in turn. If all matches are successful, the matching result is a successful match. If any information match is inconsistent, the matching result is a failed match. The successfully matched patch package is the patch package corresponding to the application request. It is determined whether the corresponding patch package configuration information meets the hot repair requirements of the application. If it meets the requirements, the patch package is downloaded. If it does not meet the requirements, the download is not performed. The downloaded patch package is decompressed to obtain at least one of the hot repair patch files to repair the application.
[0081] Figure 7 Shown is a flow chart of the application repair process described in the embodiment of this application. Figure 7 As shown, the step S24 includes the following steps S241 to S243.
[0082] Step S241: Obtain the corresponding hotfix type according to the suffix of the hotfix file.
[0083] In some possible implementations, the suffixes of the hotfix files in the patch package are determined in sequence according to a correspondence table between the hotfix files and the types of the hotfixes, and the hotfix files of multiple types of hotfixes are distributed.
[0084] If the hotfix file has a suffix of .jar, it is determined to be an Android native hotfix type hotfix file. The hotfix file is copied to the corresponding folder, and its corresponding configuration information is passed to the Android native hotfix type hotfix file as independent configuration information.
[0085] If the hotfix file has a suffix of .dav, it is determined to be a Dart native hotfix type hotfix file. The hotfix file is copied to the corresponding folder, and its corresponding configuration information is passed to the Dart native hotfix type hotfix file as independent configuration information.
[0086] If the hotfix file has the suffix .so, it is determined to be an Android so native hotfix type patch file, and the hotfix file is copied to the corresponding folder, and then its corresponding configuration information is passed to the Android so native hotfix type hotfix file as independent configuration information.
[0087] Step S242: storing the hotfix file in a designated path according to the hotfix type, and using the configuration information as a configuration attribute of the hotfix file.
[0088] In some possible implementations, the hotfix type is determined based on the hotfix file's suffix, and the hotfix file is stored in a specified path based on the hotfix type. For example, the downloaded .zip file of the patch package is stored in a specified folder path with the version number as the sub-file path name. Alternatively, the hotfix file in the patch package is stored in / data / data / packageName / files / hotfix / buildVersion / .
[0089] It should be noted that the above is only one possible implementation method of the embodiment of the present application, and the present application is not limited thereto.
[0090] Step S243: Repair the application according to the hotfix file and the configuration attributes of the hotfix file.
[0091] In an embodiment of the present application, the application repair method further includes: obtaining an effective condition of the hotfix file according to the configuration information, and performing node-by-node repair on the application according to the effective condition.
[0092] In some possible implementations, the conditions for the hotfix file to take effect include immediate effect, effect at the next startup, and / or effect at the time of switching. If the information fed back by the hotfix file is true that it takes effect immediately, it means that the effectiveness rule of the hotfix file is immediate effect, and the corresponding hotfix types are called in sequence to download and install the hotfix file. If the information fed back by the hotfix file is effective at the next startup, it means that the effectiveness rule of the hotfix file is the next startup of the APP, and the corresponding hotfix types are called in sequence to download and install the hotfix file when the APP is started next time.
[0093] In some other possible implementations, if the independent configuration information of the patch file indicates that the hotfix is effective immediately, the corresponding patch is installed immediately, otherwise the patch is installed the next time the corresponding application is started. When the corresponding application is started or switched between the foreground and background, all subfolders under the / data / data / packageName / files / hotfix / folder are queried.
[0094] / buildVersion, based on the comparison between the subfolder path name and the version number information, delete the subfolder of the hotfix file and all files in the subfolder that have different version number information.
[0095] Figure 8 Shown is a schematic diagram of the structure of the application repair device according to the embodiment of the present application. Figure 8 As shown, the application repairing device 100 includes a running detection module 110 , a patch package generating module 120 and a repair processing module 130 .
[0096] The operation detection module 110 is used to detect whether the application is running abnormally, and obtain the hot fix of the application according to the abnormal operation of the application.
[0097] The patch package generation module 120 is configured to generate corresponding hotfix files according to each hotfix of the application, and generate a patch package according to each hotfix file.
[0098] The repair processing module 130 is used to respond to an application request and match the parameter information carried by the application request with the configuration information of each pre-stored patch package, and obtain the corresponding patch package based on the matching result to repair the application corresponding to the application request; wherein the configuration information of the patch package includes a list of parameter information of the patchable application.
[0099] It should be noted that the actions or steps executed by the modules 110 to 130 included in the application repair device 100 may correspond one-to-one to steps S11 to S13 in the application repair method in each embodiment described above, and are not described in detail here.
[0100] Figure 9 Shown is a structural diagram of the application repair system according to an embodiment of the present application, as shown in FIG. Figure 9 As shown, the application repair system 200 includes a server 210 and a client 220 .
[0101] The server 210 is configured to detect whether an application is running abnormally, obtain hot fixes that have occurred to the application based on the abnormal running of the application, generate corresponding hot fix patch files based on each hot fix that has occurred to the application, generate a patch package based on each hot fix patch file, respond to an application request, and match the parameter information carried by the application request with the pre-stored configuration information of each patch package, obtain the corresponding patch package based on the matching result, and repair the application corresponding to the application request, wherein the configuration information of the patch package includes a parameter information list of patchable applications.
[0102] The client 220 is configured to send an application request, receive configuration information of a patch package that successfully matches the parameter information carried by the application request, and determine whether the configuration information meets the hot repair requirements of the application. If so, the patch package is downloaded; if not, the download fails, the downloaded patch package is decompressed, and at least one hot repair patch file is obtained to repair the application.
[0103] It should be noted that the actions or steps performed by the server 210 included in the application repair system 200 can correspond one-to-one to steps S11 to S13 in the application repair method in each embodiment described above, and the actions or steps performed by the client 220 can correspond one-to-one to steps S21 to S24 in the application repair method in each embodiment described above, which will not be repeated here.
[0104] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices or methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of modules / units is only a logical function division. There may be other division methods in actual implementation. For example, multiple modules or units can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or modules or units, which can be electrical, mechanical or other forms.
[0105] The modules / units described as separate components may or may not be physically separate, and the components displayed as modules / units may or may not be physical modules, that is, they may be located in one place or distributed across multiple network elements. Some or all of the modules / units may be selected according to actual needs to achieve the purpose of the embodiments of the present application. For example, the functional modules / units in the various embodiments of the present application may be integrated into a processing module, or each module / unit may exist physically separately, or two or more modules / units may be integrated into a single module / unit.
[0106] Those skilled in the art should further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the composition and steps of each example according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0107] An embodiment of the present application also provides an electronic device. Figure 10 The structure diagram of the electronic device 300 according to the embodiment of the present application is shown. Figure 10 As shown, in this embodiment, the electronic device 300 includes a memory 310 and a processor 320 .
[0108] The memory 310 is used to store computer programs; preferably, the memory 310 includes: ROM, RAM, magnetic disk, USB flash drive, memory card or optical disk, etc., various media that can store program codes.
[0109] Specifically, the memory 310 may include a computer system readable medium in the form of a volatile memory, such as a random access memory (RAM) and / or a cache memory. The electronic device 300 may further include other removable / non-removable, volatile / non-volatile computer system storage media. The memory 310 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of the various embodiments of the present application.
[0110] The processor 320 is connected to the memory 310 and is used to execute the computer program stored in the memory 310 so that the electronic device 300 executes the application repair method described in any embodiment of the present application.
[0111] Optionally, the processor 320 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, and discrete hardware components.
[0112] Optionally, the electronic device 300 in this embodiment may further include a display 330. The display 330 is communicatively connected to the memory 310 and the processor 320, and is used to display a graphical user interface (GUI) interactive interface related to the application repair method described in any embodiment of the present application.
[0113] The present application also provides a computer-readable storage medium having a computer program stored thereon. When the program is executed by a processor, the application repair method described in any embodiment of the present application is implemented.
[0114] The descriptions of the processes or structures corresponding to the above figures have different emphases. For parts that are not described in detail in a certain process or structure, please refer to the relevant descriptions of other processes or structures.
[0115] The above embodiments are merely illustrative of the principles and effects of this application and are not intended to limit this application. Anyone skilled in the art may modify or alter the above embodiments without departing from the spirit and scope of this application. Therefore, all equivalent modifications or alterations made by persons skilled in the art without departing from the spirit and technical concepts disclosed in this application shall be covered by the claims of this application.
Claims
1. An application repair method, characterized in that: include: Detecting whether an application is running abnormally, and obtaining a hotfix for the application based on the abnormal running of the application; Generate corresponding hotfix patch files according to each hotfix occurred in the application, and generate patch packages according to each hotfix patch file; In response to an application request, the parameter information carried by the application request is matched with the configuration information of each pre-stored patch package, and the corresponding patch package is obtained according to the matching result to repair the application corresponding to the application request; wherein the configuration information of the patch package includes a list of parameter information of the patchable applications.
2. The application repair method according to claim 1, characterized in that: include: Generate at least one hotfix patch file according to the type of hotfix; The hotfix files are compressed to generate a patch package.
3. The application repair method according to claim 2, characterized in that: include: The hotfix files and the types of the hotfixes are mapped into a correspondence table, and the suffixes of the hotfix files correspond to the types of the hotfixes.
4. The application repair method according to claim 1, characterized in that: include: Creating a hotfix configuration for inputting configuration information of the patch package; Updating a hotfix list based on the hotfix configuration and publishing the hotfix configuration; In response to the application request, matching the hotfix configuration in the hotfix list with the parameter information carried in the application request to obtain a matching result; A corresponding patch package is obtained according to the matching result to repair the application corresponding to the application request.
5. The application repair method according to claim 4, characterized in that: include: Matching the parameter information with the configuration information of the patch package one by one; wherein the parameter information includes application version number information, patch version number information, device model information, and device system version information; the configuration information includes patch package version number information, patch version number information, device model information, and device system version information; When the parameter information matches each item of information in the configuration information successfully, the matching result is a successful match; when the parameter information fails to match any item of information in the configuration information, the matching result is a failed match; the successfully matched patch package is the patch package corresponding to the application request.
6. The application repair method according to claim 4, characterized in that: Also includes: The verification code of the corresponding patch package is verified with the verification code of the configuration information to verify the integrity of the corresponding patch package.
7. An application repair method, characterized in that: include: Send application request; receiving configuration information of a patch package that successfully matches the parameter information carried in the application request; Determine whether the configuration information meets the application's hotfix requirements, and if so, download the patch package; if not, fail to download; The downloaded patch package is decompressed to obtain at least one hotfix patch file to repair the application.
8. The application repair method according to claim 7, characterized in that: include: Obtain the corresponding hotfix type according to the suffix of the hotfix patch file; storing the hotfix file in a designated path according to the hotfix type, and using the configuration information as a configuration attribute of the hotfix file; The application is repaired according to the hotfix file and configuration attributes of the hotfix file.
9. The application repair method according to claim 7, characterized in that: Also includes: The effective condition of the hotfix file is obtained according to the configuration information, and the application is repaired node by node according to the effective condition.
10. An application repair device, characterized in that: include: An operation detection module is used to detect whether an application is running abnormally, and obtain a hot fix of the application based on the abnormal operation of the application; A patch package generation module, configured to generate corresponding hotfix patch files according to each hotfix occurring in the application, and to generate a patch package according to each hotfix patch file; A repair processing module is used to respond to an application request and match the parameter information carried by the application request with the configuration information of each pre-stored patch package, and obtain the corresponding patch package based on the matching result to repair the application corresponding to the application request; wherein the configuration information of the patch package includes a list of parameter information of the patchable application.
11. An application repair system, characterized in that: include: The server is configured to detect whether an application is operating abnormally, obtain a hotfix occurring to the application based on the abnormal operating status of the application, generate a corresponding hotfix patch file based on each hotfix occurring to the application, generate a patch package based on each hotfix patch file, respond to an application request, and match parameter information carried in the application request with pre-stored configuration information of each patch package, obtain a corresponding patch package based on the matching result, and repair the application corresponding to the application request, wherein the configuration information of the patch package includes a parameter information list of patchable applications; The client is configured to send an application request, receive configuration information of a patch package that successfully matches the parameter information carried in the application request, determine whether the configuration information meets the hot repair requirements of the application, and if so, download the patch package; if not, fail to download, decompress the downloaded patch package, and obtain at least one hot repair patch file to repair the application.
12. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the application repair method according to any one of claims 1 to 9 is implemented.