Upgrading fault positioning method, device and equipment

By generating running color blocks and return color blocks of encoded images, the upgrade progress and operation results of the target program are monitored and displayed in real time, and the problem of trouble positioning difficulties during program upgrade is solved, and fault positioning efficiency and customer satisfaction are improved.

CN119847548APending Publication Date: 2025-04-18PATEO CONNECT (NANJING) CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411957323.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-27
Publication Date
2025-04-18

AI Technical Summary

Technical Problem

During the program upgrade process, the existing technology cannot monitor and display the operation of the upgrade code in real time, resulting in difficulty in locating the fault.

Method used

By monitoring the upgrade progress of the target program, an encoded image including running color blocks and return value color blocks is generated, which is used to identify the number of code lines and the running results to achieve real-time fault location.

Benefits of technology

It improves the efficiency of upgrading fault location, makes the user operation difficult, can quickly locate the fault location and cause, and improve customer satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119847548A_ABST
    Figure CN119847548A_ABST
Patent Text Reader

Abstract

The invention provides an upgrade fault positioning method and device, electronic equipment, a computer readable storage medium and a computer program product, and relates to the technical field of computers. The method comprises the following steps: monitoring an upgrading progress of a target program to obtain upgrading progress information; in response to determining that the upgrade progress information comprises the code running to the preset mark of the target program, generating a coding image comprising a running color block and a return value color block, the running color block being used for identifying the line number of the code at the preset mark in the target program, and the return value color block being used for returning the code to the target program; the return value color block is used for identifying the operation result of the code segment corresponding to the operation color block. The method can be used for upgrading fault positioning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to an upgrade fault location method, device, electronic device, computer-readable storage medium, and computer program product. Background Art

[0002] Program upgrade mainly includes program burning and program running. At present, during the program upgrade process, there is generally a progress bar indicating the upgrade completion percentage, but the progress bar only displays the progress of program burning, and cannot display the running status of the upgrade code, and cannot locate the upgrade fault. Summary of the invention

[0003] The embodiments of the present disclosure provide an upgrade fault location method, device, electronic device, computer-readable storage medium, and computer program product, which can perform upgrade fault location.

[0004] In a first aspect, an embodiment of the present disclosure proposes an upgrade fault locating method, comprising: monitoring the upgrade progress of a target program and obtaining upgrade progress information; in response to determining that the upgrade progress information includes code running to a preset mark of the target program, generating a coded image including a running color block and a return value color block, wherein the running color block is used to identify the line number of the code at the preset mark in the target program, and the return value color block is used to identify the running result of the code segment corresponding to the running color block.

[0005] In a possible implementation, the method provided in the first aspect further includes: in response to determining that an error occurs in running the target program, generating an error indication color block for indicating that an error occurs in upgrading the target program based on a prompt coding method.

[0006] In a possible implementation, the method provided in the first aspect further includes: in response to determining that the target program is being upgraded, generating an upgrade indication color block based on an upgrade coding method, wherein the upgrade indication color block is used to indicate that the target program is being upgraded.

[0007] In a possible implementation, the method provided in the first aspect further includes: in response to determining that the upgrade progress information includes burning a target program, generating a burning color block based on the progress of burning the target program and the burning encoding method, wherein the burning color block is used to identify the burning progress of the target program.

[0008] In a possible implementation, the method provided in the first aspect further includes: detecting a version of the target program; generating a version color block for identifying the version of the target program based on the version of the target program and a version encoding method, wherein the encoded image further includes a version color block.

[0009] In a possible implementation, the method provided in the first aspect also includes: in response to obtaining a decoding operation, obtaining decoding information of the target program based on the version color block; decoding the running color block and the return value color block based on the decoding information, and determining the running result of the code corresponding to the line number identified by the running color block.

[0010] In one possible implementation, the color block includes at least one of the following: a running color block, a return value color block, an error indication color block, an upgrade indication color block, a burning color block, and a version color block, and the color block includes multiple sub-color blocks, and the multiple sub-color blocks include a sub-color block for identifying the function of the color block and a sub-color block for identifying the functional content of the color block.

[0011] In a possible implementation manner, the color of the sub-color block of the running color block used to identify the functional content of the color block is determined based on the progress of running the target program and the running coding mode.

[0012] In the second aspect, an embodiment of the present disclosure proposes an upgrade fault locating device, comprising: a monitoring module, configured to monitor the upgrade progress of a target program and obtain upgrade progress information; a first generating module, configured to generate a coded image including a running color block and a return value color block in response to determining that the upgrade progress information includes code running to a preset mark of the target program, wherein the running color block is used to identify the line number of the code at the preset mark in the target program, and the return value color block is used to identify the running result of the code segment corresponding to the running color block.

[0013] In a possible implementation, the upgrade fault locating device provided in the second aspect further includes: a second generating module configured to generate an error indicating color block for indicating an error in upgrading the target program based on a prompt coding method in response to determining that an error has occurred in running the target program.

[0014] In a possible implementation, the upgrade fault locating device provided in the second aspect further includes: a third generating module, configured to generate an upgrade indication color block based on an upgrade coding method in response to determining that the target program is being upgraded, wherein the upgrade indication color block is used to indicate that the target program is being upgraded.

[0015] In a possible implementation, the upgrade fault locating device provided by the second aspect also includes: a fourth generating module, configured to generate a burning color block in response to determining that the upgrade progress information includes burning a target program, based on the progress of burning the target program and the burning encoding method, wherein the burning color block is used to identify the burning progress of the target program.

[0016] In a possible implementation, the upgrade fault locating device provided in the second aspect also includes: a detection module, configured to detect the version of the target program; a fifth generation module, configured to generate a version color block for identifying the version of the target program based on the version of the target program and the version encoding method, wherein the encoded image also includes a version color block.

[0017] In a possible implementation, the upgrade fault locating device provided in the second aspect also includes: an acquisition module, configured to obtain decoding information of the target program based on the version color block in response to obtaining a decoding operation; a determination module, configured to decode the running color block and the return value color block based on the decoding information, and determine the running result of the code corresponding to the line number identified by the running color block.

[0018] In one possible implementation, the color block includes at least one of the following: a running color block, a return value color block, an error indication color block, an upgrade indication color block, a burning color block, and a version color block, and the color block includes multiple sub-color blocks, and the multiple sub-color blocks include a sub-color block for identifying the function of the color block and a sub-color block for identifying the functional content of the color block.

[0019] In a possible implementation manner, the color of the sub-color block of the running color block used to identify the functional content of the color block is determined based on the progress of running the target program and the running coding mode.

[0020] In a third aspect, an embodiment of the present disclosure provides an electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that when the at least one processor executes, it can implement the upgraded fault location method described in any implementation method in the first aspect.

[0021] In a fourth aspect, an embodiment of the present disclosure provides a non-transitory computer-readable storage medium storing computer instructions, which are used to enable a computer to implement the upgrade fault locating method described in any implementation manner in the first aspect when executed.

[0022] In a fifth aspect, an embodiment of the present disclosure provides a computer program product including a computer program, which, when executed by a processor, can implement the upgrade fault locating method as described in any implementation manner in the first aspect.

[0023] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description.

[0024] According to the technical solution of the embodiment of the present disclosure, the upgrade progress of the target program is detected, and in response to determining that the target program has run to a preset mark, a coded image including a running color block and a return value color block is generated. The running color block identifies the line number of the code at the preset mark in the target program, and the return value color block identifies the running result of the code segment corresponding to the running color block. In this way, the upgrade status of the target program can be quickly obtained. If a fault occurs, the position where the fault occurs during the execution of the upgrade code can be quickly located based on the running color block, and the cause of the fault can be quickly located based on the return value color. The color block method can improve the efficiency of locating the upgrade fault.

[0025] In addition, upgrade failures generally occur during the running of the upgrade code. The coded images displayed on the upgrade interface can quickly locate problems encountered during the upgrade process. The user's operation difficulty is low, which improves the efficiency of problem solving and improves customer satisfaction. Switching to the minimum system during the upgrade process does not affect the generation of running color blocks and return value color blocks, and will not affect the location of upgrade failures based on color blocks. Logs can be saved during the upgrade process to avoid the problem of being unable to find faults due to log loss caused by partitions being flashed during the upgrade process, the inconvenience caused by users exporting logs, and the problem that the transmission of log data is restricted by relevant regulations on cross-border data transmission. The use of color block encoding has a high degree of confidentiality, good data security, and is more intuitive when decoding. Color blocks of various colors replace ordinary progress bars to make the designed upgrade interface more beautiful. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Other features, objects and advantages of the present disclosure will become more apparent from the detailed description of non-limiting embodiments made with reference to the following drawings:

[0027] Figure 1 is an exemplary system architecture in which the present disclosure may be applied;

[0028] Figure 2 A flowchart of an upgrade fault location method provided by an embodiment of the present disclosure;

[0029] Figure 3 An interface diagram of an upgrade fault location method provided by an embodiment of the present disclosure;

[0030] Figure 4 A flowchart of another upgrade fault location method provided by an embodiment of the present disclosure;

[0031] Figure 5 A structural block diagram of an upgraded fault location device provided by an embodiment of the present disclosure;

[0032] Figure 6A schematic diagram of the structure of an electronic device suitable for executing an upgraded fault locating method provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0033] In order to better understand the present application, a more detailed description will be made of various aspects of the present application with reference to the accompanying drawings. It should be understood that these detailed descriptions are only descriptions of exemplary embodiments of the present application, and are not intended to limit the scope of the present application in any way. Throughout the specification, the same reference numerals refer to the same elements. The expression "and / or" includes any and all combinations of one or more of the associated listed items.

[0034] It should be understood that expressions such as "include", "including", "have", "contain" and / or "including" in this specification are open rather than closed expressions, which indicate the presence of the stated features, elements and / or components, but do not exclude the presence of one or more other features, elements, components and / or combinations thereof. In addition, when expressions such as "at least one of..." appear after a list of listed features, they modify the entire list of features rather than just the individual elements in the list. In addition, when describing embodiments of the present application, "may" is used to mean "one or more embodiments of the present application". And, the term "exemplary" is intended to refer to an example or illustration.

[0035] Unless otherwise specified, all words (including engineering terms and scientific and technological terms) used in this article have the same meaning as those commonly understood by ordinary technicians in the field to which this application belongs. It should also be understood that, unless clearly stated in this application, words defined in common dictionaries should be interpreted as having the same meaning as their meaning in the context of the relevant technology, and should not be interpreted in an idealized or overly formal sense.

[0036] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. In addition, unless explicitly limited or contradictory to the context, the specific steps included in the method described in the present application are not necessarily limited to the order described, but can be performed in any order or in parallel. The present application will be described in detail below with reference to the accompanying drawings and in conjunction with the embodiments.

[0037] Figure 1 An exemplary system architecture 100 is shown to which embodiments of the upgrade fault location method, apparatus, electronic device, computer-readable storage medium, and computer program product of the present disclosure can be applied.

[0038] like Figure 1As shown, the system architecture 100 may include a first device 101 and a second device 102, and the first device 101 and the second device 102 may be connected via a network. The network is used to provide a medium for a communication link between the first device 101 and the second device 102. The network may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0039] The first device 101 and the second device 102 can be hardware or software. When the first device 101 and the second device 102 are hardware, the first device 101 can be various electronic devices that need to be upgraded, including but not limited to vehicle-mounted devices, vehicle-mounted devices, intelligent terminals, vehicles, components on vehicles, components on vehicle-mounted devices, components on vehicle-mounted devices, components on intelligent terminals, etc., and the second device 102 can be a cloud server, a server, etc., wherein the server can also be a server of a distributed system, or a server combined with a blockchain. The cloud server is also called a cloud computing server or a cloud host or a cloud. It is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and virtual private servers (VPS, Virtual Private Server) services. When the first device 101 and the second device 102 are software, they can be installed in the electronic devices listed above, which can be implemented as multiple software or software modules, or as a single software or software module, which is not specifically limited here. Optionally, the second device 102 can be installed with color block parsing software, and the first device 101 can also be installed with color block parsing software.

[0040] It should be understood that Figure 1 The number of the first device and the second device in the embodiment is only illustrative. Any number of the first device and the second device may be provided according to implementation requirements.

[0041] The term "vehicle" or other similar terms used in this application includes a broad range of motor vehicles: for example, passenger cars including sport utility vehicles (SUVs), buses, trucks, various commercial vehicles; watercraft including various boats and ships, and aircraft, etc.; and including hybrid vehicles, electric vehicles, hybrid electric vehicles, hydrogen-powered vehicles and other alternative fuel vehicles (e.g., fuels derived from resources other than petroleum).

[0042] The method provided by the embodiments of the present disclosure may be applied in a program upgrade scenario, such as an Over-The-Air (OTA) upgrade scenario.

[0043] In some embodiments, during the OTA upgrade process, especially during the upgrade of the Microcontroller Unit (MCU), it is necessary to simplify the functions of the vehicle computer to the most basic operating state (for example, switching to a minimum system). In the most basic operating state, log preservation and time synchronization are restricted. After the vehicle computer is installed, the serial port is not easily restricted, and the Android Debug Bridge (ADB) will not start in the minimum system, which makes it difficult to locate the problem of OTA upgrade failure.

[0044] For example, during the upgrade process, even if the log is saved successfully, there is a possibility that the partition will be flashed during the upgrade process, which may cause the log to be lost, making it difficult to locate the problem of OTA upgrade failure.

[0045] In addition, in cross-border business scenarios, logs contain too much sensitive information, and the transmission of log data may be restricted by relevant regulations on cross-border data transmission, making the problem of locating OTA upgrade failures based on logs complicated.

[0046] Please refer to Figure 2 , Figure 2 This is a flowchart of an upgrade fault location method provided by an embodiment of the present disclosure, the execution subject is the first device 101, wherein the process 200 includes the following steps:

[0047] Step 201: Monitor the upgrade progress of the target program and obtain upgrade progress information.

[0048] Exemplarily, the upgrade of the target program mainly includes the burning of the target program and the running of the target program. Among them, burning refers to the process of writing new firmware or software code into the device. Running refers to the process of executing the burned firmware or software code on the device.

[0049] Step 202: In response to determining that the upgrade progress information includes a code running to a preset mark of the target program, a coded image including a running color block and a return value color block is generated.

[0050] For example, the upgrade progress information includes running to a preset mark of the target program. The preset mark may include a key process node.

[0051] Exemplarily, the run color block is used to identify the line number of the code at the preset mark in the target program, and the return value color block is used to identify the run result of the code segment corresponding to the run color block.

[0052] In the disclosed embodiment, the color block may be a colored box. For example, the number of lines of the code at the preset mark in the target program may be indicated by the color of the running color block, and the running result of the code segment corresponding to the running color block may be indicated by the color of the return value color block, such as the running result including the return value of the code segment. When the running reaches the preset mark, the corresponding running color block is displayed on the interface as the refreshed part of the progress bar, and the return value color block corresponding to the running color block may also be displayed on the interface as the refreshed part of the progress bar. Optionally, the progress bar may include a coded image.

[0053] Assuming that the first preset mark is the ath line and the second preset mark is the bth line, the upgrade progress of the target program is monitored, and the upgrade progress information including running to the ath line of the target program is obtained, and a coded image including a running color block a and a return value color block a is generated. Among them, the running color block a is used to identify that the target program is running to the ath line of code during the upgrade process, and the code segment corresponding to the running color block a is from the 1st line to the ath line, and the return value color block a is used to identify the running result of the code from the 1st line to the ath line. Then run to the bth line of the target program, and generate a coded image including a running color block b and a return value color block b. At this time, the coded image may include the running color block a and the return value color block a generated previously, or after generating a new running color block, delete the running color block a and the return value color block a. Among them, the running color block b is used to identify that the target program is running to the bth line of code during the upgrade process, and the code segment corresponding to the running color block b is from the a+1th line to the bth line, and the return value color block b is used to identify the running result of the code from the a+1th line to the bth line.

[0054] Optionally, the running result of the code segment may include: specific numerical values ​​returned by one or more lines of code, indication information of successful running, or indication information of failed running.

[0055] Optionally, there is an association between the run color block and the return value color block, so that the number of lines of code run and the running results of the code segments corresponding to these codes can be easily obtained.

[0056] For example, the association relationship between the running color block and the return value color block can be reflected by the positions of the running color block and the return value color block in the encoded image, such as the return value color block is one column behind the running color block.

[0057] The method provided by the embodiment of the present disclosure detects the upgrade progress of the target program, and in response to determining that the target program has been run to a preset mark, generates a coded image including a running color block and a return value color block, identifies the line number of the code at the preset mark in the target program by the running color block, and identifies the running result of the code segment corresponding to the running color block by the return value color block. In this way, the upgrade status of the target program can be quickly obtained. If a fault occurs, the position where the fault occurs during the execution of the upgrade code can be quickly located based on the running color block, and the execution result can be quickly obtained based on the return value color, which can improve the efficiency of locating the upgrade fault.

[0058] In addition, upgrade failures generally occur during the running of the upgrade code. The coded images displayed on the upgrade interface can quickly locate problems encountered during the OTA upgrade process. The user's operation difficulty is low, which improves the efficiency of problem solving and improves customer satisfaction. Switching to the minimum system during the upgrade process does not affect the generation of running color blocks and return value color blocks, and will not affect the location of upgrade faults based on color blocks. Logs can be saved during the upgrade process to avoid the problem of being unable to find faults due to log loss caused by partitions being flashed during the upgrade process. It can also avoid the inconvenience caused by users exporting logs, and it can also avoid the problem that the transmission of log data is restricted by relevant regulations on cross-border data transmission. The use of color block encoding has a high degree of confidentiality, good data security, and is more intuitive when decoding. Color blocks replace the original progress bar to make the designed upgrade interface more beautiful.

[0059] In some embodiments, the color block may include a plurality of sub-color blocks, the plurality of sub-color blocks including a sub-color block for identifying a function of the color block and a sub-color block for identifying a functional content of the color block. The color block includes at least one of the following: a running color block, a return value color block, an error indication color block, an upgrade indication color block, a burning color block, and a version color block.

[0060] Combination Figure 3 , a color block may include a column of sub-color blocks, and the column of sub-color blocks includes a sub-color block for identifying the function of the color block and a sub-color block for identifying the functional content of the color block. For example, the first two sub-color blocks in a column of sub-color blocks are used to identify the function of the color block, and the remaining sub-color blocks in a column of sub-color blocks are used to identify the functional content of the color block, which is only an example. A color block may also include a row of sub-color blocks, or multiple columns of sub-color blocks, and the number of sub-color blocks used to identify the function of the color block may be one or more, and the number of sub-color blocks used to identify the functional content of the color block may also be one or more.

[0061] Optionally, the color block may also include only one sub-color block, the position of the color block in the coded image identifies the function of the color block, and the color of the color block in the coded image identifies the functional content of the color block.

[0062] It should be noted that the position of the color block, the number of sub-color blocks included, the color of the sub-color blocks, etc. can be varied as long as the function and functional content of the color block can be identified.

[0063] Optionally, the running color block includes a plurality of running sub-color blocks, the plurality of running sub-color blocks include a running sub-color block for identifying the color block function and a running sub-color block for identifying the running progress, the color of the running sub-color block for identifying the running progress is determined based on the running progress of the target program and the running coding method. The color of the running sub-color block for identifying the color block function can be preset.

[0064] Combination Figure 2 The first two sub-color blocks of the color block are white, and the function of the color block is to identify the number of running lines. The first two sub-color blocks of the color block are white and red, and the function of the color block is to identify the return value of the code segment. This is only an example, and the sub-color blocks at any position and color in the color block can be used to identify the color block function.

[0065] In some embodiments, the color of the sub-color block of the running color block for identifying the functional content of the color block is determined based on the progress of running the target program and the running coding method.

[0066] Optionally, the version encoding method may include but is not limited to a binary method or a color method.

[0067] For example, in binary mode, white is used to represent 0, and red is used to represent 1. The running sub-color block used to identify the running progress is filled with white and red to represent the running progress in binary.

[0068] For example, the color method: the initial state of the running sub-color blocks used to identify the running progress is all white, and the running progress is divided into A stages. After running to the corresponding progress, the corresponding sub-color blocks are changed from white to green. When the colors of the running sub-color blocks used to identify the running progress are all green, it means that the running is completed, and the running progress can be obtained more intuitively.

[0069] Combination Figure 3 , assuming that the running color block occupies a column of sub-color blocks, the first two sub-color blocks in this column of sub-color blocks are used to identify the color block function, and the remaining 6 sub-color blocks are used to identify the running progress. In this way, the running progress is divided into 6 stages. In response to determining to start running the target program, 6 sub-color blocks that are all white are generated. Every time the running progress advances one stage, the color of a sub-color block is changed to green. After the running is completed, these 6 sub-color blocks are all green.

[0070] There are many types of operation coding methods, for example, different colors indicate different stages of operation, and purple indicates that the operation is complete. Figure 3, 6 sub-color blocks are used to mark the running progress, and the running progress is divided into 7 stages. Red, orange, yellow, green, cyan, blue and purple represent these 7 stages respectively. After completing the first stage of operation, these 6 sub-color blocks are set to red. After the operation is completed, these 6 sub-color blocks are set to purple.

[0071] In this way, by generating running color blocks through diversified running coding methods, the confidentiality of the coding can be further improved, and the data security can be improved. The decoding party can decode more intuitively, which can improve the decoding efficiency.

[0072] In some embodiments, the color of the sub-color block of the return value color block used to identify the functional content of the color block is determined based on the return value of running the target program and the return value encoding method.

[0073] Optionally, the return value encoding method may include but is not limited to a binary method or a color method.

[0074] For example, in binary mode, white is used to represent 0, and red is used to represent 1. The return value sub-color block used to identify the running result of the code segment corresponding to the running color block is filled with white and red, so that the running result (such as return value) of the code segment is represented by binary, different binary values ​​correspond to different return values, and decoding can obtain the return value in the return value color block based on the corresponding relationship between the binary value and the return value.

[0075] For example, color mode: preset the association between the color of each sub-color block and the return value, and based on the correspondence and the actual running result, fill the return value sub-color block used to identify the running result of the code segment corresponding to the running color block with the color associated with the actual running result.

[0076] In this way, rich debugging information can be obtained based on the return value color block. In addition, by generating the return value color block through a variety of return value encoding methods, the confidentiality of the encoding can be further improved, which can improve data security. The decoding party can decode more intuitively, which can improve decoding efficiency.

[0077] In some embodiments, the method provided by the embodiments of the present disclosure further includes: in response to determining that the upgrade progress information includes burning the target program, generating a burning color block based on the progress of burning the target program and the burning encoding method.

[0078] Exemplarily, the burning color block is used to identify the burning progress of the target program.

[0079] Exemplarily, the coded image may also include a burning color block, for example, the burning progress of the target program may be indicated by the color of the burning color block. When burning to a preset position, the corresponding burning color block is displayed on the interface as a refreshed part of the progress bar.

[0080] The embodiment of the present disclosure does not limit the execution order of generating the burning color block and generating the running color block and the return value color block. The corresponding color blocks can be generated according to the actual upgrade order.

[0081] Exemplarily, the burning coding method may be pre-set, including rules for generating burning color blocks, and the execution subject generates the burning color blocks based on the progress of burning the target program and the burning coding method.

[0082] Optionally, the burning color block includes multiple burning sub-color blocks, the multiple burning sub-color blocks include a burning sub-color block for identifying the color block function and a burning sub-color block for identifying the burning progress, and the color of the burning sub-color block for identifying the burning progress is determined based on the progress and version encoding method of the burning target program.

[0083] For example, the burning sub-color block used to identify the color block function can be the first two sub-color blocks of the color block. For example, the colors of the first two sub-color blocks of the color block are both black, and the function of identifying the color block is to identify the burning progress. This is only an example, and any sub-color block can be used to identify the color block function.

[0084] Optionally, the burning coding method may include but is not limited to a binary method or a color method.

[0085] For example, in binary mode, white is used to represent 0, and red is used to represent 1. The burning sub-color block used to identify the burning progress is filled with white and red, so that the burning progress is represented by binary.

[0086] For example, color mode: the initial state of the burning sub-color blocks used to identify the burning progress is all white, and the burning progress is divided into A stages. After burning to the corresponding progress, the corresponding sub-color blocks are changed from white to yellow. When the colors of the burning sub-color blocks used to identify the burning progress are all yellow, it means that the burning is completed, and the burning progress can be obtained more intuitively.

[0087] Combination Figure 3 Assume that the burning color block occupies a column of sub-color blocks, the first two sub-color blocks in this column are used to identify the color block function, and the remaining 6 sub-color blocks are used to identify the burning progress. In this way, the burning progress is divided into 6 stages. In response to determining to start burning the target program, 6 sub-color blocks that are all white are generated. Every time the burning progress advances one stage, the color of a sub-color block is changed to yellow. After the burning is completed, these 6 sub-color blocks are all yellow.

[0088] There are many ways to burn in codes, for example, different colors indicate different stages of burning, and purple indicates that burning is complete. Figure 3, 6 sub-color blocks are used to mark the burning progress, and the burning progress is divided into 7 stages. Red, orange, yellow, green, cyan, blue and purple represent these 7 stages respectively. After completing the first stage of burning, these 6 sub-color blocks are set to red. After burning is completed, these 6 sub-color blocks are set to purple.

[0089] In this way, by generating the burned color blocks through diversified burning coding methods, the confidentiality of the coding can be further improved, and the data security can be improved. The decoding party can decode more intuitively, which can improve the decoding efficiency.

[0090] In some embodiments, the method provided by the embodiments of the present disclosure further includes: detecting a version of the target program; and generating a version color block for identifying the version of the target program based on the version of the target program and a version encoding method.

[0091] Optionally, the encoded image may further include a version color block, for example, the version of the target program may be identified by the color of the version color block. In response to generating the version color block, the corresponding version color block is displayed on the interface as a refreshed portion of the progress bar.

[0092] Optionally, the embodiments of the present disclosure do not limit the execution time machine for detecting the version of the target program. For example, the version of the target program may be detected immediately after an upgrade instruction is detected, or the version of the target program may be detected after the upgrade is completed or after an upgrade failure occurs, or the version of the target program may be detected during the upgrade process.

[0093] Exemplarily, the version encoding method may be pre-set, including rules for generating version color blocks, and the execution subject generates the version color block based on the version of the target program and the version encoding method.

[0094] Optionally, the version color block includes multiple version sub-color blocks, including a version sub-color block for identifying the color block function and a version sub-color block for identifying the version, and the color of the version sub-color block for identifying the version is determined based on the version of the target program and the version encoding method.

[0095] For example, the version sub-color block used to identify the function of the color block can be the first two sub-color blocks of the color block. For example, the colors of the first two sub-color blocks of the color block are both blue, and the function used to identify the color block is to identify the version. This is only an example, and the sub-color block at any position in the color block can be used to identify the color block function.

[0096] Optionally, the version encoding method may include but is not limited to a binary method or a color method.

[0097] For example, in binary mode, white is used to represent 0 and red is used to represent 1. The version sub-color block used to identify the version is filled with white and red to represent the version of the target program in binary. Figure 3, assuming that 6 sub-color blocks are used to identify the version of the target program, if the version of the target program is version 1, these 6 sub-color blocks can be white, white, white, white, white, and red respectively.

[0098] For example, color mode: different colors represent different versions. Figure 3 , assuming that 6 sub-color blocks are used to identify the version of the target program, red, orange, yellow, green, cyan, blue, and purple represent versions 1 to 7 respectively. If the version of the target program is version 1, these 6 sub-color blocks can be set to red.

[0099] Optionally, some of the multiple sub-color blocks included in the color block in the embodiment of the present disclosure may be idle sub-color blocks, which does not represent any meaning. Figure 3 Assuming that a column is a version color block, the first two sub-color blocks in this column are used to identify the color block function, and the last sub-color block in this column is used to identify the version of the target program. For example, the last sub-color block is set to orange, indicating that the version of the target program is version 2. The middle 5 sub-color blocks are empty and do not represent any meaning.

[0100] In this way, by generating version color blocks through diversified version encoding methods, the confidentiality of the encoding can be further improved, and the data security can be improved. The decoding party can decode more intuitively, which can improve the decoding efficiency.

[0101] Optionally, different versions of the target program may correspond to different encoding methods, such as different running encoding methods, burning encoding methods, prompt encoding methods and / or upgrade encoding methods, which can prevent the fixed encoding method from being cracked and further improve information security.

[0102] In some embodiments, the method provided by the embodiments of the present disclosure further includes: in response to determining that the target program is being upgraded, generating an upgrade indication color block based on an upgrade coding method.

[0103] Exemplarily, the upgrade indication color block is used to indicate that the target program is being upgraded. For example, when the target program is being burned or running, an upgrade indication color block may be generated to indicate that the target program is being upgraded. For another example, after the user manually stops the upgrade, an upgrade indication color block is generated to indicate that the upgrade of the target program has been stopped. For another example, after a failure occurs during the upgrade, an upgrade indication color block is generated to indicate that the upgrade of the target program has been stopped. It may also indicate that an error has occurred during the upgrade of the target program. At this time, an error indication color block may not be generated, or an error indication color block may be generated, and there is no limitation on this.

[0104] Exemplarily, the coded image may further include an upgrade indication color block. For example, the color of the upgrade indication color block may be used to indicate that the target program is being upgraded.

[0105] Exemplarily, the upgrade coding method may be pre-set, including rules for generating upgrade indication color blocks, and the execution subject generates the upgrade indication color blocks based on whether the target program is being upgraded and the upgrade coding method.

[0106] Optionally, the upgrade indication color block includes multiple upgrade sub-color blocks, the multiple upgrade sub-color blocks include an upgrade sub-color block for identifying the function of the color block and an upgrade sub-color block for identifying whether an upgrade is being performed, and the color of the upgrade sub-color block for identifying whether an upgrade is being performed is determined based on whether the target program is being upgraded and the upgrade coding method.

[0107] For example, the upgrade sub-color block used to identify the function of the color block can be the first two sub-color blocks of the color block. For example, the colors of the first two sub-color blocks of the color block are both blue, and the function of identifying the color block is to identify whether it is being upgraded. This is only an example, and any sub-color block can be used to identify the function of the color block.

[0108] Optionally, the upgrade encoding method may include but is not limited to a binary method or a color method.

[0109] For example, in binary mode, white is used to represent 0, and red is used to represent 1. The upgrade sub-color block used to identify whether the upgrade is in progress is filled with white or red. For example, filling with white indicates that the upgrade is in progress, and filling with red indicates that the upgrade has stopped, thereby realizing the binary representation of whether the upgrade is in progress.

[0110] For example, color mode: when upgrading, the upgrade sub-color blocks used to identify whether the upgrade is in progress are displayed as a running light effect; when the upgrade is stopped, the upgrade sub-color blocks used to identify whether the upgrade is in progress are all set to red, indicating that the upgrade has stopped, so that it can be more intuitive to get whether the upgrade is in progress.

[0111] Optionally, when stopping the upgrade, different sub-color blocks of different colors can be used to indicate different situations based on different situations. Binary mode or color mode: For example, when stopping the upgrade, all sub-color blocks in the upgrade sub-color block used to identify whether the upgrade is in progress are filled with red, indicating that the upgrade is stopped after an upgrade failure; some sub-color blocks in the upgrade sub-color block used to identify whether the upgrade is in progress are filled with red, and other sub-color blocks are filled with green, indicating that the upgrade is stopped after receiving a stop operation.

[0112] Optionally, some of the multiple sub-color blocks included in the upgrade indication color block in the embodiment of the present disclosure may be idle sub-color blocks, which does not represent any meaning. Figure 3 Assuming that a column is a version color block, the first two sub-color blocks in this column are used to identify the color block function, and the last sub-color block in this column is used to identify whether it is being upgraded. For example, if the last sub-color block is set to green, it means that the target program is being upgraded; if the last sub-color block is set to red, it means that the upgrade is stopped, and the 5 sub-color blocks in the middle are empty and do not represent any meaning.

[0113] In this way, by generating upgrade indication color blocks through diversified upgrade coding methods, the confidentiality of the coding can be further improved, and the data security can be improved. The decoding party can decode more intuitively, which can improve the decoding efficiency.

[0114] In some embodiments, the method provided by the embodiments of the present disclosure further includes: in response to determining that an error occurs in running the target program, generating an error indication color block for indicating that an error occurs in upgrading the target program based on a prompt coding method.

[0115] Optionally, in response to determining that an error occurs in running the target program or burning the target program, an error indication color block is generated based on the prompt coding method to indicate that an error occurs in upgrading the target program. That is, an error indication color block can be generated if an error occurs at any stage of the upgrading process.

[0116] Exemplarily, the error indication color block is used to prompt that an error or failure occurs in the upgrade target program.

[0117] Exemplarily, the coded image may further include an error indicating color block. For example, the error indicating color block may be used to indicate that the target program upgrade has failed, or an error or malfunction has occurred during the upgrade.

[0118] Exemplarily, the prompt coding method may be pre-set, including rules for generating error indication color blocks, and the execution subject generates the upgrade indication color block based on whether an error occurs in the upgrade target program and the prompt coding method.

[0119] Optionally, the error indication color block includes multiple error sub-color blocks, the multiple error sub-color blocks include an error sub-color block for identifying the function of the color block and an error sub-color block for identifying an upgrade error, and the error sub-color block for identifying an upgrade error is determined based on an upgrade target program upgrade error and a prompt coding method.

[0120] For example, the error sub-color block used to identify the function of the color block can be the first two sub-color blocks of the color block. For example, the colors of the first two sub-color blocks of the color block are both green, and the function of identifying the color block is to identify an error in the upgrade target program. This is only an example, and any sub-color block can be used to identify the function of the color block.

[0121] Optionally, the prompt coding method may include but is not limited to color.

[0122] Exemplary color mode: the error sub-color block used to identify an upgrade error is displayed as a purple flashing effect, which can more intuitively indicate that an upgrade error has occurred.

[0123] Optionally, the error indication color block may only include an error sub-color block for indicating an upgrade error, and the entire column of error indication color blocks may present a flashing effect, so that the user can more intuitively see that an upgrade error has occurred. An analysis prompt message may also be generated to prompt the user to take a photo of the progress bar and upload it to the user service center to analyze the cause of the upgrade failure.

[0124] Optionally, the present application does not limit the position of each color block in the encoded image (or progress bar).

[0125] For example, the version color block can occupy the leftmost column of color blocks in the progress bar. Figure 3 , the version color block can occupy the first column of color blocks from the left.

[0126] Exemplarily, the positions of the running color block and the return value color block can be adjacent to each other, for example, the running color block occupies the color block in the ath column, and the return value color block occupies the color block in the a+1th column. When a fault occurs, the problem of the running code can be quickly found.

[0127] Exemplarily, the burning color block, the running color block and the return value color block are generated based on the upgrade process, and are displayed on the interface as refreshed parts of the progress bar, without limiting their specific positions in the progress bar.

[0128] For example, when upgrading is in progress, or when upgrading is stopped and no upgrade failure occurs, the upgrade indicator color block may occupy the rightmost column of color blocks on the progress bar, so that the overall status of the target program upgrade can be obtained more intuitively.

[0129] Exemplarily, when the upgrade is stopped and a failure occurs, the upgrade indication color block may occupy the second column of color blocks from the right of the progress bar, and the generated error indication color block occupies the rightmost column of color blocks of the progress bar.

[0130] Optionally, the above is only an example, and each color block may occupy one column of color blocks or multiple columns.

[0131] For example, if the color blocks in the progress bar are not sufficient to indicate the actual upgrade progress, you can add multiple columns of one or more color blocks to make the progress displayed by the progress bar match the actual upgrade progress. Figure 3 , after the actual upgrade progress reaches 70%, the generated color block only occupies about 50% of the progress bar, which visually does not match the actual upgrade progress. You can copy the version color block to fill the progress bar, that is, the progress bar includes multiple version color blocks to achieve the visual effect of the upgrade progress reaching 70%.

[0132] Please refer to Figure 4 , Figure 4 A flowchart of another upgrade fault location method provided by an embodiment of the present disclosure, wherein process 400 includes the following steps:

[0133] Step 401: In response to obtaining a decoding operation, decoding information of a target program is obtained based on a version color block.

[0134] For example, Figure 4 The execution subject of the method shown can be the first device 101, or other devices (such as the second device 102, the device of the user service center, etc.), or the technicians of the user service center can interpret the color blocks in the encoded image based on the decoding information.

[0135] For example, during the upgrade process, if the user finds that the progress bar is no longer running and the rightmost side is constantly flashing (the error indicator color block is constantly flashing), it means that a fault occurred during the upgrade process. The user can take a photo of the progress bar and upload it to the user service center. The user service center can locate the cause of the fault through color block analysis software. Alternatively, the user service center can send the fault photo taken to the technician, who can interpret the color blocks in the progress bar to find out which line of the code the upgrade process is stuck on and what the error value returned is, so as to quickly locate the cause of the problem.

[0136] implement Figure 4 The method shown is, for example, Figure 4 The execution subject of the method shown can be the first device 101, the first device 101 generates a coded image including the at least one color block, based on the operation performed by the user to locate the upgrade failure, obtains the decoding information of the target program based on the version color block through the color block parsing software, and executes Figure 4 The method shown.

[0137] Optionally, the execution subject may parse the version color block based on the version encoding method to obtain the version of the target program, and obtain the decoding information corresponding to the version of the target program from the association between the program version and the decoding information.

[0138] Optionally, the decoding information includes one or more of the following: running encoding mode, return value encoding mode, burning encoding mode, prompt encoding mode, upgrade encoding mode and version encoding mode. The decoding information can be used to interpret the color blocks in the encoded image.

[0139] Step 402: Decode the running color block and the return value color block based on the decoding information to determine the running result of the code corresponding to the line number identified by the running color block.

[0140] Exemplarily, the execution subject decodes the running color block and the return value color block based on the running coding mode and the return value coding mode in the decoding information, and determines the running result of the code corresponding to the line number identified by the running color block.

[0141] Exemplarily, the execution subject may also decode the burn-in color block based on the burn-in coding mode in the decoding information, decode the error indication color block based on the prompt coding mode, and decode the upgrade indication color block based on the upgrade coding mode.

[0142] In this way, the encoded image can be parsed manually or by equipment, the decoding information of the target program can be obtained through the version color block, the running color block and the return value color block can be decoded based on the decoding information, and the running result of the code corresponding to the line number identified by the running color block can be determined. The upgrade status of the target program can be quickly obtained. If the upgrade fails, the location of the failure during the execution of the upgrade code can be quickly located based on the running color block, and the cause of the problem can be quickly located based on the return value color, which can improve the rate of upgrade fault locating.

[0143] To facilitate understanding, an application scenario in which the method of the embodiment of the present disclosure can be implemented is provided below.

[0144] In response to obtaining an instruction to upgrade a target program, the version of the target program is detected, and based on the version of the target program and the version coding method, a version color block for identifying the version of the target program is generated, for example, in the leftmost column of a progress bar. The upgrade progress of the target program is monitored, and in response to determining that the target program is being burned, a burning color block is generated based on the progress of burning the target program and the burning coding method. In response to determining that the target program is being upgraded, an upgrade indication color block is generated based on the upgrade coding method. In response to determining that the target program is running to a preset mark, a running color block and a return value color block are generated, the running color block is used to identify the number of lines of the code at the preset mark in the target program, and the return value color block is used to identify the running result of the code segment corresponding to the running color block. If it is determined that an error occurs in the running of the target program, an error indication color block for prompting an error in upgrading the target program is generated based on the prompt coding method, for example, a flashing effect is presented in the rightmost column of the progress bar.

[0145] The user found that the progress bar no longer ran and the rightmost side of the progress bar kept flashing. He took a photo of the progress bar and uploaded it to the user service center. The user service center parsed the version color block in the progress bar based on the version encoding method to obtain the version of the target program. From the association between the program version and the decoding information, the user service center obtained the decoding information corresponding to the version of the target program. Based on the decoding information, the user service center decoded each color block in the progress bar to obtain which line of the code the upgrade process was stuck on and what the error value returned was. This can quickly locate the cause of the problem and improve the rate of locating upgrade faults.

[0146] Further references Figure 5 As an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of an upgraded fault location device. The device embodiment corresponds to the above method embodiment, and the device can be specifically applied to various electronic devices.

[0147] like Figure 5 As shown, the upgrade fault location device 500 of this embodiment may include: a monitoring module 501 and a first generating module 502. The monitoring module 501 is configured to monitor the upgrade progress of the target program and obtain the upgrade progress information; the first generating module 502 is configured to generate a coded image including a running color block and a return value color block in response to determining that the upgrade progress information includes the code running to the preset mark of the target program, wherein the running color block is used to identify the line number of the code at the preset mark in the target program, and the return value color block is used to identify the running result of the code segment corresponding to the running color block.

[0148] In this embodiment, in the upgraded fault location device 500, the specific processing of the monitoring module 501 and the first generating module 502 and the technical effects brought about by them can refer to the relevant descriptions of the above method embodiments respectively, and will not be repeated here.

[0149] In a possible implementation, the upgrade fault locating device 500 further includes: a second generating module configured to generate an error indicating color block for indicating that an error has occurred in the target program to be upgraded based on a prompt coding method in response to determining that an error has occurred in the running target program.

[0150] In a possible implementation, the upgrade fault locating device 500 further includes: a third generating module configured to generate an upgrade indicating color block based on an upgrade coding method in response to determining that the target program is being upgraded, wherein the upgrade indicating color block is used to indicate that the target program is being upgraded.

[0151] In a possible implementation, the upgrade fault location device 500 further includes: a fourth generation module configured to generate a burning color block in response to determining that the upgrade progress information includes burning a target program, based on the progress of burning the target program and the burning encoding method, wherein the burning color block is used to identify the burning progress of the target program.

[0152] In a possible implementation, the upgrade fault location device 500 also includes: a detection module configured to detect the version of the target program; a fifth generation module configured to generate a version color block for identifying the version of the target program based on the version of the target program and the version encoding method, wherein the encoded image also includes a version color block.

[0153] In a possible implementation, the upgrade fault location device 500 also includes: an acquisition module, configured to obtain decoding information of the target program based on the version color block in response to obtaining a decoding operation; a determination module, configured to decode the running color block and the return value color block based on the decoding information, and determine the running result of the code corresponding to the line number identified by the running color block.

[0154] In one possible implementation, the color block includes at least one of the following: a running color block, a return value color block, an error indication color block, an upgrade indication color block, a burning color block, and a version color block, and the color block includes multiple sub-color blocks, and the multiple sub-color blocks include a sub-color block for identifying the function of the color block and a sub-color block for identifying the functional content of the color block.

[0155] In a possible implementation manner, the color of the sub-color block of the running color block used to identify the functional content of the color block is determined based on the progress of running the target program and the running coding mode.

[0156] This embodiment exists as a device embodiment corresponding to the above method embodiment. The technical effects brought about by the embodiments of the upgraded fault location device provided in this embodiment can be referred to the corresponding related descriptions in the above method embodiment respectively, and will not be repeated here.

[0157] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can implement the upgrade fault location method described in any of the above embodiments when executing.

[0158] According to an embodiment of the present disclosure, the present disclosure further provides a readable storage medium, which stores computer instructions, and the computer instructions are used to enable a computer to implement the upgrade fault locating method described in any of the above embodiments when executed.

[0159] According to an embodiment of the present disclosure, the present disclosure further provides a computer program product, which, when executed by a processor, can implement the upgrade fault locating method described in any of the above embodiments.

[0160] Figure 6 A schematic block diagram of an example electronic device 600 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent an onboard device, a vehicle-mounted device, an intelligent terminal, a vehicle, a component on a vehicle, a component on an onboard device, a component on a vehicle-mounted device, a component on an intelligent terminal, etc. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0161] like Figure 6As shown, the device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the device 600 can also be stored. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0162] Various components in device 600 are connected to I / O interface 605, including: input unit 606; output unit 607; storage unit 608; and communication unit 609. Communication unit 609 allows device 600 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0163] The computing unit 601 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 601 performs the various methods and processes described above, such as the upgrade fault location method. For example, in some embodiments, the upgrade fault location method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 608. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the upgrade fault location method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform the upgrade fault location method in any other appropriate manner (e.g., by means of firmware).

[0164] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0165] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0166] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0167] To provide interaction with a user, the systems and techniques described herein may be implemented on a vehicle-mounted device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and an input device (e.g., a touch device, a voice input device, a gesture detection device) through which a user can provide input to a computer. Other types of devices may also be used to provide interaction with a user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, tactile input, gesture input).

[0168] The systems and techniques described herein may be implemented in a vehicle system that includes backend components (e.g., as a data server), or a vehicle system that includes middleware components (e.g., an application server), or a vehicle system that includes frontend components (e.g., a vehicle system with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a vehicle system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0169] According to the technical solution of the embodiment of the present disclosure, the upgrade progress of the target program is detected, and in response to determining that the target program has run to a preset mark, a coded image including a running color block and a return value color block is generated. The running color block identifies the line number of the code at the preset mark in the target program, and the return value color block identifies the running result of the code segment corresponding to the running color block. In this way, the upgrade status of the target program can be quickly obtained. If a fault occurs, the position where the fault occurs during the execution of the upgrade code can be quickly located based on the running color block, and the cause of the fault can be quickly located based on the return value color. The color block method can improve the efficiency of locating the upgrade fault.

[0170] In addition, upgrade failures generally occur during the running of the upgrade code. The coded images displayed on the upgrade interface can quickly locate problems encountered during the upgrade process. The user's operation difficulty is low, which improves the efficiency of problem solving and improves customer satisfaction. Switching to the minimum system during the upgrade process does not affect the generation of running color blocks and return value color blocks, and will not affect the location of upgrade failures based on color blocks. Logs can be saved during the upgrade process to avoid the problem of being unable to find faults due to log loss caused by partitions being flashed during the upgrade process, the inconvenience caused by users exporting logs, and the problem that the transmission of log data is restricted by relevant regulations on cross-border data transmission. The use of color block encoding has a high degree of confidentiality, good data security, and is more intuitive when decoding. Color blocks of various colors replace ordinary progress bars to make the designed upgrade interface more beautiful.

[0171] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0172] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.

Claims

1. A method for locating an upgrade fault, comprising: Monitor the upgrade progress of the target program and obtain upgrade progress information; In response to determining that the upgrade progress information includes running to a preset mark of the target program, a coded image including a running color block and a return value color block is generated, wherein the running color block is used to identify the line number of the code at the preset mark in the target program, and the return value color block is used to identify the running result of the code segment corresponding to the running color block.

2. The method according to claim 1, wherein: The method further comprises: In response to determining that an error occurs when running the target program, an error indicating color block is generated based on a prompt coding method to indicate that an error occurs when upgrading the target program.

3. The method according to claim 1 or 2, wherein: The method further comprises: In response to determining that the target program is being upgraded, an upgrade indication color block is generated based on an upgrade coding method, wherein the upgrade indication color block is used to indicate that the target program is being upgraded.

4. The method according to claim 1 or 2, wherein: The method further comprises: In response to determining that the upgrade progress information includes burning the target program, a burning color block is generated based on the progress of burning the target program and the burning encoding method, wherein the burning color block is used to identify the burning progress of the target program.

5. The method according to claim 1 or 2, wherein: The method further comprises: Detecting the version of the target program; Based on the version of the target program and the version encoding method, a version color block for identifying the version of the target program is generated, wherein the encoded image also includes the version color block.

6. The method according to claim 5, wherein: The method further comprises: In response to obtaining a decoding operation, obtaining decoding information of the target program based on the version color block; The running color block and the return value color block are decoded based on the decoding information to determine the running result of the code corresponding to the line number identified by the running color block.

7. The method according to claim 1 or 2, wherein: The color block includes at least one of the following: the running color block, the return value color block, the error indication color block, the upgrade indication color block, the burning color block and the version color block, and the color block includes multiple sub-color blocks, and the multiple sub-color blocks include a sub-color block for identifying the function of the color block and a sub-color block for identifying the functional content of the color block.

8. The method according to claim 7, wherein: The color of the sub-color block of the running color block for identifying the functional content of the color block is determined based on the progress of running the target program and the running coding method.

9. An upgraded fault location device, comprising: A monitoring module, configured to monitor the upgrade progress of the target program and obtain upgrade progress information; A generation module is configured to generate a coded image including a running color block and a return value color block in response to determining that the upgrade progress information includes code running to a preset mark of the target program, wherein the running color block is used to identify the line number of the code at the preset mark in the target program, and the return value color block is used to identify the running result of the code segment corresponding to the running color block.

10. An electronic device, comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 8.

11. A non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 8.

12. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the steps of the method according to any one of claims 1 to 8.

Citation Information

Cited By

  • Upgrade fault locating method and apparatus, and device

    WO2026138321A1