A remote updating method and device for an application
Patent Information
- Application Number
- CN202611021740.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-09
- Publication Date
- 2026-09-29
AI Technical Summary
[0003]现有的应用更新,多基于应用发布最新版本与终端当前版本的差异进行更新,但在应用的框架本身较为庞杂,且扩展功能较多的情况下,往往会不间断存在较多的错误需要更新修复,导致用户在进行更新修复时,需要等待能够完整修复错误的更新包,影响用户使用体验
[0015]上述一种应用的远程更新方法及装置,能够按照预设时间间隔抓取终端目标应用的错误日志进行主动更新检测,在根据错误日志中的版本信息和错误码确定服务器端的数据库存在应用更新的情况下,通过与错误日志对应的错误类型的更新版本进行针对性修复更新,避免由不同更新版本进行更新导致更新不兼容,或者更新不必要的冗余功能导致应用占用内存过大的情况,并在进行更新的过程中,比较当前应用与新版本之间的差异,并仅传输这些差异从而进行差分数据的更新,从而有效避免用户在进行更新修复时,需要等待能够完整修复错误的更新包,影响用户使用体验的问题。
Smart Images

Figure CN122837880A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method and apparatus for remotely updating an application. Background Technology
[0002] Remote updates typically refer to performing software or system updates on a computer or device over a network without physical access to the device. This process is very common across many fields and platforms, including operating systems, applications, firmware, and more.
[0003] Current application updates are mostly based on the differences between the latest version of the application and the current version on the device. However, when the application framework itself is complex and has many extended functions, there are often many errors that need to be updated and fixed. This causes users to wait for an update package that can completely fix the errors when they want to update and fix the errors, which affects the user experience. Summary of the Invention
[0004] Therefore, it is necessary to provide a method and apparatus for remotely updating applications to address the aforementioned technical problems.
[0005] Firstly, this application provides a method for remotely updating an application, the method comprising: Access the terminal at preset time intervals and capture the error logs of the target application; the error logs include the version information of the target application and the error codes; The error type is determined based on the error code, and the database is searched for an updated version that fixes the corresponding error type among the published application updates. The updated version matches the version information of the target application. If they match, the program file corresponding to the version information is retrieved from the database and compared with the program file corresponding to the updated version. Based on the comparison differences, an incremental upgrade package is generated to repair the fault, and a fault repair prompt is output to the terminal; the fault repair prompt is used to instruct the terminal to download the incremental upgrade package.
[0006] In one embodiment, the error log further includes the location of the anomaly and prompts indicating the fault level; the prompts include danger information, error information, and warning information categorized by fault level from high to low; the method further includes: If multiple error logs exist, obtain the terminal's bandwidth and memory information; If the terminal's bandwidth is less than a first preset threshold, or the terminal's memory is less than a second preset threshold, execute a first fault repair strategy. The first fault repair strategy includes: performing fault repair according to the error log corresponding to the fault level of the prompt message being an error message or higher. If the terminal's bandwidth exceeds a first preset threshold and the terminal's memory exceeds a second preset threshold, a second fault repair strategy is executed; the second repair strategy is used to instruct fault repair to be performed according to all error logs.
[0007] In one embodiment, the target application includes a main program and subroutines for extended functionality; danger information indicates that the target application cannot run, error information indicates that the subroutines of the target application cannot run, and warning information indicates that the target application can run but an unexpected interruption has occurred; the method further includes: If the terminal's bandwidth is less than the third preset threshold, or the terminal's memory is less than the fourth preset threshold, a third fault repair strategy is executed. The third fault repair strategy includes: determining whether the location of the anomaly in each error log includes the main program's configuration file; if so, fault repair is performed according to the error log of the main program corresponding to the warning message or above, and fault repair is performed according to the error log of the subroutine corresponding to the error message or above; if not, fault repair is performed according to the error log corresponding to the error message or above.
[0008] In one embodiment, the method includes: If multiple error logs exist, determine the location of the exception in each error log. If a first preset number of error logs all originate from the main program, then output an exception message for the target application. If a second preset number of error logs are found to originate from both the main program and the subroutine, an application environment check is performed; if the application environment is normal, an error message for the target application is output.
[0009] In one embodiment, the method includes: If no error log is captured, the terminal's update log is captured. The update log includes the target application's version information, the main program's function information corresponding to the version information, and the subprogram's function information describing the extended functions. When the version information in the terminal's update log differs from the latest version information in the database, the differences in the main program's functional information and the differences in the subprogram's functional information are compared based on the update log and the latest version, respectively. If there are differences in the main program's functional information, the first update prompt message will be output; if there are differences in the subprogram's functional information, the user's intention to extend the functionality will be collected, and if the user has an intention to extend the functionality of the corresponding subprogram, the second update prompt message will be output.
[0010] In one embodiment, the method further includes: The terminal's underlying library data is obtained as the underlying library for the main program's operation, and the main program is tested to obtain the first test result. In response to the normal test results of the main program, based on the user's intention to expand the functionality, the corresponding subroutine in the database is selected and merged with the main program as a functional module. The merged program is then tested to obtain the second test result. If the first and second test results are normal, a message indicating that the compatibility test is normal will be output.
[0011] In one embodiment, testing the main program includes: running a main program test example to sequentially execute the main program operations and collecting output information; if the output information matches the first preset information, then outputting a first test result indicating that the program is normal. Testing the merged program includes running test examples of subroutines within the main program framework and collecting output information. If the output information matches the second preset information, the second test result is output as normal.
[0012] Secondly, this application provides a remote update device for an application, the device comprising: The capture module is used to access the terminal and capture the error logs of the target application at preset time intervals; the error logs include the version information of the target application and the error code. The judgment module is used to determine the error type based on the error code and search the database for an updated version that fixes the corresponding error type among the published application updates; the updated version matches the version information of the target application; if so, the program file corresponding to the version information is obtained from the database and compared with the program file corresponding to the updated version. The output module is used to generate incremental upgrade packages based on the comparison differences to perform fault repair, and output fault repair prompts to the terminal; the fault repair prompts are used to instruct the terminal to download the incremental upgrade packages.
[0013] Thirdly, this application provides a computer device including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method provided in the first aspect of this application.
[0014] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method provided in the first aspect of this application.
[0015] The aforementioned remote update method and apparatus can actively detect and update errors by capturing error logs of the target application on the terminal at preset time intervals. If the error logs indicate that the server-side database has an application update, the method performs targeted repair updates using the update version corresponding to the error type in the error logs. This avoids incompatibility caused by different update versions or excessive memory usage due to unnecessary redundant updates. Furthermore, during the update process, the method compares the differences between the current application and the new version, transmitting only these differences for differential data updates. This effectively prevents users from waiting for a complete error-fixing update package, thus avoiding negative impacts on user experience. Attached Figure Description
[0016] To more clearly illustrate the technical solutions in the embodiments or related technologies of this application, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0017] Figure 1 This is a flowchart of the steps for fault repair via error logs in one embodiment; Figure 2 This is a flowchart illustrating the steps of selecting a fault repair strategy based on bandwidth and memory availability in one embodiment. Figure 3 This is a flowchart illustrating the steps involved in application and environmental detection in one embodiment. Figure 4 This is a flowchart of the steps for updating based on the update log in one embodiment; Figure 5 This is a flowchart of the compatibility testing steps in one embodiment; Figure 6 This is a structural diagram of a remote update device used in one embodiment. Detailed Implementation
[0018] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0019] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "multiple" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0020] In this application, unless otherwise expressly specified and limited, the terms "connected" and "linked" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components, unless otherwise expressly limited. Those skilled in the art can understand the specific meaning of the above terms in this application based on the specific circumstances.
[0021] It should be noted that when one element is considered to be "connected" to another element, it can be directly connected to the other element or connected to the other element through an intermediary element. Furthermore, in the following embodiments, "connection" should be understood as "electrical connection," "communication connection," etc., if there is transmission of electrical signals or data between the connected objects.
[0022] In one exemplary embodiment, a remote update method for an application is provided, such as... Figure 1 As shown, the method includes the following steps S102 to S106. Wherein: S102, access the terminal and capture the error log of the target application at preset time intervals; the error log includes the version information of the target application and the error code.
[0023] Specifically, after a released version is installed and run on a terminal, unknown errors that did not appear during the testing phase often occur and are recorded in the error log. During subsequent maintenance, staff will update and fix these unknown errors. However, when the application software has extensive extended functions and the application itself is complex, the number of update and fix versions derived from the main version will also increase. Therefore, when customers actively perform updates, it is difficult to choose effectively. Therefore, by obtaining the error type and corresponding version through the version information and error code in the error log, errors can be actively fixed without waiting for a new version of the application to be released for a unified update, thus avoiding impact on user experience.
[0024] S104. Determine the error type based on the error code and search the database for an updated version that fixes the corresponding error type among the published application updates. If the updated version matches the version information of the target application, retrieve the program file corresponding to the version information from the database and compare it with the program file corresponding to the updated version.
[0025] Specifically, the server can store the fixes and updates for each version by setting up a database, so that they can be effectively invoked when needed.
[0026] Furthermore, if an error of the type found in the error log matches the version information of the target application, the error can be fixed by calling the updated version of the program file from the database and transmitting it to the user's device.
[0027] S106, Based on the comparison difference, an incremental upgrade package is generated to repair the fault, and a fault repair prompt is output to the terminal; the fault repair prompt is used to instruct the terminal to download the incremental upgrade package.
[0028] Specifically, fault / error repair can be achieved through differential data. By comparing the differences, the differential text is obtained and an incremental upgrade package is generated. This avoids the need to transfer the entire file due to a single error, making the repair process simpler and easier, and also avoiding user resistance.
[0029] This application aims to achieve continuous release of updates for various bugs through a piecemeal bug-fixing approach, minimizing memory usage and focusing on targeted bug fixes. This effectively avoids the need to wait for a single update package that fixes the vast majority of bugs when upgrading and fixing the application, thus providing a better user experience. Furthermore, it proactively detects and updates the target application's error logs at preset time intervals. If the version information and error codes in the error logs indicate an application update in the server-side database, it performs targeted updates using the update version corresponding to the error type in the error log. This avoids incompatibility issues caused by different update versions or excessive memory consumption due to unnecessary redundant updates. During the update process, it compares the differences between the current application and the new version, transmitting only these differences for differential data updates. This effectively prevents users from struggling to obtain updates suitable for their local needs when performing update repairs. In one exemplary embodiment, the error log also includes the location of the exception and information indicating the fault level; the information includes critical, error, and warning messages, categorized by fault level from highest to lowest. Figure 2 As shown, the method further includes steps S202 to S206. Wherein: S202, if multiple error logs exist, obtain the terminal's bandwidth and memory information.
[0030] Specifically, during the initial period after a new application is released, there are often a large number of bugs, both large and small, that need to be fixed. Therefore, when updating and fixing the application, it is necessary to consider the user experience and avoid lag issues on different user terminals due to limited bandwidth and memory.
[0031] S204, if the terminal's bandwidth is less than a first preset threshold or the terminal's memory is less than a second preset threshold; execute a first fault repair strategy; the first fault repair strategy includes: performing fault repair according to the error log corresponding to the fault level of the prompt message being an error message or higher.
[0032] Specifically, since the fault levels of danger messages, error messages, and warning messages are classified in sequence, when there are a large number of errors to be fixed, it is necessary to filter and update the messages to take into account user experience.
[0033] Furthermore, if the terminal bandwidth is less than the first preset threshold, or the terminal memory is less than the second preset threshold, only the error logs corresponding to the error and danger information are repaired, so that users will not experience the inability to use the application.
[0034] The first preset threshold can be a threshold to avoid affecting the user's daily internet operation; the second preset threshold can be a threshold to avoid excessive memory usage that could cause the user's terminal to lag or be restricted.
[0035] S206, if the terminal's bandwidth exceeds a first preset threshold and the terminal's memory exceeds a second preset threshold, execute a second fault repair strategy; the second repair strategy is used to instruct fault repair to be performed according to all error logs.
[0036] Specifically, while ensuring that the terminal does not experience lag or internet access restrictions, all error logs can be repaired to prevent other unknown errors that may occur during program execution from affecting the user experience.
[0037] In an exemplary embodiment, the target application includes a main program and subroutines for extended functionality; danger information indicates that the target application cannot run, error information indicates that the subroutines of the target application cannot run, and warning information indicates that the target application can run but an unexpected interruption has occurred; the method further includes the following steps: If the terminal's bandwidth is less than the third preset threshold, or the terminal's memory is less than the fourth preset threshold, a third fault repair strategy is executed. The third fault repair strategy includes: determining whether the location of the anomaly in each error log includes the main program's configuration file; if so, fault repair is performed according to the error log of the main program corresponding to the warning message or above, and fault repair is performed according to the error log of the subroutine corresponding to the error message or above; if not, fault repair is performed according to the error log corresponding to the error message or above.
[0038] Specifically, the main program of an application typically serves as the application's entry point, responsible for initiating the execution of the entire application. It contains code that controls the overall application logic; it controls the application's flow, calls other modules or subroutines, and can handle user input or other event initialization, manage application configuration and resources, and provide a user interface framework or command-line interface. Subroutines, on the other hand, can be part of the main program or a separate independent module, used to perform specific tasks or logic; they are used to accept input parameters and return results, and to extend functionality.
[0039] Furthermore, given that danger messages indicate the target application cannot run, error messages indicate the target application's subroutines cannot run, and warning messages indicate the target application can run but is unexpectedly interrupted, it is necessary to ensure that the main program can run effectively, and if it contains subroutines, that the subroutines can run effectively to meet the user's extended needs. Therefore, by setting a third and a fourth preset threshold, when the source of the configuration file error is the main program, the main program is completely repaired to reduce the failure rate. And when the source of the error is a subroutine, the errors in the error logs corresponding to the main impact error messages and danger messages are repaired, thereby maximizing the user experience and reducing the failure rate.
[0040] It should be noted that the third preset threshold is greater than the first preset threshold, and the fourth preset threshold is greater than the second preset threshold.
[0041] In one exemplary embodiment, in the event of a large number of errors, if the terminal malfunctions and the problem is not recognized by the server, performing an invalid application update will only further burden the terminal and thus affect the user experience. Therefore, it is possible to determine whether the problem lies with the terminal or the application itself based on the source of the error logs; for example... Figure 3 As shown, the method further includes the following steps S302 to S306. Wherein: S302, in response to the existence of multiple error logs, determine the location of the exception in each error log.
[0042] S304. If a first preset number of error logs all originate from the main program, then output the target application exception message.
[0043] Specifically, if multiple errors originate from the main program, the user should be prompted that the application may have download or expansion errors. Therefore, the user should be instructed to reinstall the application through the target application error message.
[0044] S306, if there are a second preset number of error logs from the main program and the subroutine respectively, then perform application environment detection; if the application environment is normal, then output the target application error message.
[0045] Specifically, in the event of an abnormal application environment, both the main program and subroutines may encounter errors. Therefore, in order to avoid false prompts, it is necessary to first check whether the application environment of the terminal is normal. If it is, then output an application error message.
[0046] In one exemplary embodiment, such as Figure 4 As shown, the method includes the following steps S402 to S406. Wherein: S402, in response to the failure to capture error logs, capture the terminal's update logs; the update logs include the version information of the target application, the function information of the main program corresponding to the version information, and the function information of the subroutines describing the extended functions.
[0047] Specifically, even if no errors are found, this solution can be used for piecemeal application updates, thereby increasing the update frequency and avoiding excessively large updates that increase user waiting time.
[0048] S404: When the version information in the terminal's update log differs from the latest version information in the database, compare the differences in the main program's functional information and the differences in the subprogram's functional information based on the update log and the latest version, respectively.
[0049] Specifically, application updates can also be performed using differential data updates, thereby improving user experience and reducing the update time per update.
[0050] S406, if there are differences in the functional information of the main program, output the first update prompt message; if there are differences in the functional information of the subprogram, collect the user's intention to extend the function, and if the user has the intention to extend the function of the corresponding subprogram, output the second update prompt message.
[0051] Specifically, users' expansion intentions can be collected based on the expansion features selected by the user during the initial installation, or by popping up a prompt box to collect information from the user during each update.
[0052] In one exemplary embodiment, such as Figure 5 As shown, the method further includes the following steps S502 to S506. Wherein: S502: Obtain the terminal's underlying library data as the underlying library for the main program's operation, and test the main program to obtain the first test result.
[0053] Specifically, the application's performance can be tested by running the underlying libraries on the server side, simulating the user terminal; and the application's performance can be obtained through the first test result. The first test result can be test data output during the simulated application process.
[0054] S504: In response to the normal test result of the main program, based on the user's intention to expand the function, the corresponding subroutine in the database is selected and merged with the main program as a functional module, and the merged program is tested to obtain the second test result.
[0055] Specifically, since extended functions usually depend on the main program framework, the subroutines are merged with the main program as functional modules and tested based on the user's underlying runtime library.
[0056] S506 If the first and second test results are normal, output a message indicating that the compatibility test is normal.
[0057] In an exemplary embodiment, testing the main program includes: running a main program test example to sequentially execute the main program operations and collecting output information; if the output information matches the first preset information, then outputting a first test result indicating that the program is normal. Testing the merged program includes running test examples of subroutines within the main program framework and collecting output information. If the output information matches the second preset information, the second test result is output as normal.
[0058] Specifically, if the first preset information and the first output information match, it means that the running effect has reached the expected level; similarly, if the second preset information and the second output information match, it means that the running effect has reached the expected level.
[0059] For example, the test can be a regression test, or it can be used to determine whether the expected result is achieved by testing whether there are maximum and minimum values, null values or incomplete data, and data with special characters or non-standard format; it can also be used to check the application's ability to protect against malicious input (such as SQL injection, XSS attacks, etc.).
[0060] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0061] Based on the same inventive concept, this application also provides a remote update apparatus for implementing the remote update method of the aforementioned application. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations of one or more embodiments of the remote update apparatus for an application provided below can be found in the limitations of the remote update method for an application described above, and will not be repeated here.
[0062] Secondly, such as Figure 6 As shown, this application provides a remote update device 600 for an application, the device comprising: The capture module 601 is used to access the terminal and capture the error logs of the target application at preset time intervals; the error logs include the version information of the target application and the error code. The judgment module 602 is used to determine the error type based on the error code and search the database for an updated version that fixes the corresponding error type among the published application updates; the updated version matches the version information of the target application; if so, the program file corresponding to the version information is obtained from the database and compared with the program file corresponding to the updated version. The output module 603 is used to generate an incremental upgrade package based on the comparison difference to perform fault repair, and output a fault repair prompt to the terminal; the fault repair prompt is used to instruct the terminal to download the incremental upgrade package.
[0063] The modules in the remote update device described above can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.
[0064] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the remote update method for the application as described above.
[0065] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the remote update method for the application as described above.
[0066] Fifthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the remote update method for the application as described above.
[0067] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0068] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0069] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A remote update method for an application, characterized in that, The method includes: Access the terminal at preset time intervals and capture the error logs of the target application; the error logs include the version information and error codes of the target application; The error type is determined based on the error code, and the database is searched for an application update version that fixes the corresponding error type. The update version matches the version information of the target application. If so, the program file corresponding to the version information is obtained from the database and compared with the program file corresponding to the update version. Based on the comparison differences, an incremental upgrade package is generated to repair the fault, and a fault repair prompt is output to the terminal; the fault repair prompt is used to instruct the terminal to download the incremental upgrade package.
2. The method according to claim 1, characterized in that, The error log also includes the location of the anomaly and prompts indicating the fault level; the prompts include danger information, error information, and warning information categorized by fault level from high to low; the method further includes: If multiple error logs exist, obtain the bandwidth and memory information of the terminal. If the bandwidth of the terminal is less than a first preset threshold, or the memory of the terminal is less than a second preset threshold, a first fault repair strategy is executed. The first fault repair strategy includes: performing fault repair according to the error log corresponding to the fault level of the prompt information being an error message or higher. If the bandwidth of the terminal is above the first preset threshold and the memory of the terminal is above the second preset threshold, a second fault repair strategy is executed; the second repair strategy is used to instruct fault repair to be performed according to all error logs.
3. The method according to claim 2, characterized in that, The target application includes a main program and subroutines for extended functionality; the danger information indicates that the target application cannot run, the error information indicates that the subroutines of the target application cannot run, and the warning information indicates that the target application can run but an unexpected interruption has occurred; the method further includes: If the bandwidth of the terminal is less than a third preset threshold, or the memory of the terminal is less than a fourth preset threshold, a third fault repair strategy is executed. The third fault repair strategy includes: determining whether the location of the exception in each error log includes the configuration file of the main program; if so, fault repair is performed according to the error log of the main program corresponding to the warning message and the above prompt message, and fault repair is performed according to the error log of the subroutine corresponding to the error message and the above prompt message; if not, fault repair is performed according to the error log corresponding to the error message and the above prompt message.
4. The method according to claim 3, characterized in that, The method includes: If multiple error logs exist, determine the location where the anomaly occurred in each error log. If a first preset number of error logs all originate from the main program, then output an exception message for the target application. If a second preset number of error logs are found to originate from both the main program and the subroutine, an application environment check is performed. If the application environment is normal, an error message for the target application is output.
5. The method according to claim 3, characterized in that, The method includes: In response to the failure to capture the error log, the update log of the terminal is captured; the update log includes the version information of the target application, the function information of the main program corresponding to the version information, and the function information of the subroutine describing the extended functions; If the version information in the update log of the terminal is different from the latest version information in the database, the differences in the functional information of the main program and the differences in the functional information of the subprogram are compared based on the update log and the latest version, respectively. If there are differences in the functional information of the main program, a first update prompt message is output; if there are differences in the functional information of the subprogram, the user's intention to extend the functionality is collected, and if the user has an intention to extend the functionality of the corresponding subprogram, a second update prompt message is output.
6. The method according to claim 5, characterized in that, The method further includes: The underlying library data of the terminal is obtained as the underlying library for the main program, and the main program is tested to obtain the first test result. In response to the normal test result of the main program, based on the user's intention to expand the function, the corresponding subroutine in the database is selected and merged with the main program as a functional module, and the merged program is tested to obtain a second test result; If the first test result and the second test result are normal, a message indicating that the compatibility test is normal will be output.
7. The method according to claim 6, characterized in that, The testing of the main program includes: running a main program test example to sequentially execute the main program operations and collecting output information; if the output information matches the first preset information, then outputting a first test result indicating that the program is normal. The testing of the merged program includes running test examples of subroutines within the main program framework and collecting output information. If the output information matches the second preset information, a second test result is output as normal.
8. A remote update device for an application, characterized in that, The device includes: The capture module is used to access the terminal and capture the error logs of the target application at preset time intervals; the error logs include the version information and error codes of the target application. The judgment module is used to determine the error type based on the error code and search the database for an application update version that fixes the corresponding error type; the update version matches the version information of the target application; if so, the program file corresponding to the version information is obtained from the database and compared with the program file corresponding to the update version. The output module is used to generate an incremental upgrade package based on the comparison differences to perform fault repair, and output a fault repair prompt to the terminal; the fault repair prompt is used to instruct the terminal to download the incremental upgrade package.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.