Program upgrade control method and device, electronic equipment and storage medium
By acquiring the target identifier and flag bits of terminal components, the target plugin is searched in the server, and incremental upgrades of the terminal's local basic program are performed. This solves the high cost problem in terminal equipment production and realizes automatic upgrades of personalized functions and cost reduction.
Patent Information
- Application Number
- CN202210651165.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-09
- Publication Date
- 2026-01-20
- Estimated Expiration
- 2042-06-09
AI Technical Summary
In existing technologies, terminal devices need to have all programs burned into them during production, which increases program maintenance and operation costs and makes it impossible to provide targeted and personalized functional services.
By obtaining the target identifier of the components in the terminal, determining the target flag bit, and searching for the target plugin in the server, the basic program of the terminal is incrementally upgraded based on the target plugin.
It enables automatic personalized program upgrades after the terminal is connected to the network, reducing program maintenance and operation costs and possessing universality.
Smart Images

Figure CN114879997B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a program upgrade control method, apparatus, electronic device and storage medium. Background Technology
[0002] MCU (Microcontroller Unit) chips, also known as single-chip microcomputers or microcontrollers, are a type of lightweight digital computing chip used for different combinations of control in various applications. Therefore, MCU chips are microcontroller chips.
[0003] In existing technologies, all programs (including basic programs and personalized function programs) usually need to be burned during the production of terminal devices. This leads to increased operating costs for program maintenance and makes it impossible to provide users with targeted personalized function services. Summary of the Invention
[0004] In view of this, in order to solve the technical problem that all programs (including basic programs and personalized function programs) need to be burned during the production of terminal devices, which leads to increased operating costs for program maintenance and makes it impossible to provide users with targeted personalized function services, embodiments of the present invention provide a program upgrade control method, device, electronic device and storage medium.
[0005] In a first aspect, embodiments of the present invention provide a program upgrade control method, the method being applied to a terminal, comprising:
[0006] Obtain the target identifier of the component in the terminal, and determine the target flag bit corresponding to the target identifier of the component;
[0007] Based on the target flag, search the server for the target plugin corresponding to the target identifier;
[0008] Incremental upgrades are performed on the basic local programs of the terminal based on the target plugin.
[0009] In an optional implementation, obtaining the target identifier of a component in the terminal and determining the target flag bit corresponding to the target identifier of the component includes:
[0010] Read the identifier acquisition command;
[0011] According to the identification acquisition instruction, the first identifier of the first chip in the terminal is acquired;
[0012] Verify the first identifier of the first chip;
[0013] If the verification passes, a first flag bit corresponding to the first identifier of the first chip is generated. The first flag bit indicates that the target plug-in corresponding to the first identifier is allowed to be found in the server.
[0014] The first identifier is determined as the target identifier, and the first flag bit is determined as the target flag bit.
[0015] In an optional implementation, the method further includes:
[0016] If the verification fails, the first number of verifications for the first chip is determined based on the verification record of the first identifier of the first chip.
[0017] Compare the first number of verifications with the first preset threshold;
[0018] If the first verification count is less than or equal to the first preset threshold, then return to the step of obtaining the first identifier of the first chip in the terminal according to the identifier acquisition instruction.
[0019] In an optional implementation, the step of obtaining the target identifier of the component in the terminal and determining the target flag bit corresponding to the target identifier of the component further includes:
[0020] If the first number of verifications is greater than the first preset threshold, then according to the identifier acquisition instruction, the second identifier of the second chip in the terminal is acquired;
[0021] The second identifier of the second chip is verified;
[0022] If the verification passes, a second flag bit corresponding to the second identifier of the second chip is generated. The second flag bit indicates that the target plug-in corresponding to the second identifier can be found in the server.
[0023] The second identifier is determined as the target identifier, and the second flag bit is determined as the target flag bit.
[0024] In an optional implementation, the method further includes:
[0025] If the verification fails, the second number of verifications for the second chip is determined based on the verification record of the second identifier of the second chip.
[0026] Compare the second number of verifications with the second preset threshold;
[0027] If the second verification count is less than or equal to the second preset threshold, then return to the step of obtaining the second identifier of the second chip in the terminal according to the identifier acquisition instruction;
[0028] If the second verification count is greater than the second preset threshold, a third flag bit corresponding to the first chip and the second chip is generated. The third flag bit indicates that the target plugin is prohibited from being searched in the server.
[0029] The third flag bit is determined as the target flag bit, and the preset identifier is determined as the target identifier. The preset identifier is the identifier corresponding to the third flag bit.
[0030] In an optional implementation, the step of searching for the target plugin corresponding to the target identifier in the server based on the target flag bit includes:
[0031] The target identifier and target flag of the component are sent to the communication component, so that the communication component can find the target plug-in corresponding to the target identifier in the server according to the target flag and return the target plug-in to the terminal;
[0032] The incremental upgrade of the terminal's local basic program based on the target plugin includes:
[0033] Receive the target plugin returned by the communication component;
[0034] Incremental upgrades are performed on the basic local programs of the terminal based on the target plugin.
[0035] In an optional implementation, sending the target identifier and the target flag of the component to the communication component, so that the communication component can search for the target plug-in corresponding to the target identifier in the server based on the target flag and return the target plug-in to the terminal, includes:
[0036] The target identifier and the target flag bit of the component are sent to the communication component so that the communication component can determine whether any flag bit in the target flag bit is a preset value;
[0037] If any of the target flags is not the preset value, then the server searches for the target plugin corresponding to the target identifier and returns the target plugin to the terminal.
[0038] In an optional implementation, the step of searching for the target plugin corresponding to the target identifier in the server and returning the target plugin to the terminal includes:
[0039] Search the server for the list of plugins corresponding to the target identifier and return it to the terminal for display;
[0040] The target plugin in the plugin list is identified and sent to the communication component, so that the communication component can find the target plugin in the server and return the target plugin to the terminal.
[0041] Secondly, embodiments of the present invention provide a program upgrade control device, the device being applied to a terminal, comprising:
[0042] The acquisition module is used to acquire the target identifier of the component in the terminal and determine the target flag bit corresponding to the target identifier of the component;
[0043] The search module is used to search for the target plugin corresponding to the target identifier in the server based on the target flag bit;
[0044] The upgrade module is used to incrementally upgrade the basic program on the local terminal based on the target plugin.
[0045] In an optional implementation, the acquisition module is specifically used for:
[0046] Read the identifier acquisition command;
[0047] According to the identification acquisition instruction, the first identifier of the first chip in the terminal is acquired;
[0048] Verify the first identifier of the first chip;
[0049] If the verification passes, a first flag bit corresponding to the first identifier of the first chip is generated. The first flag bit indicates that the target plug-in corresponding to the first identifier is allowed to be found in the server.
[0050] The first identifier is determined as the target identifier, and the first flag bit is determined as the target flag bit.
[0051] In an optional implementation, the apparatus further includes:
[0052] The first number determination module is used to determine the first number of verifications for the first chip based on the verification record of the first identifier of the first chip if the verification fails.
[0053] The first comparison module is used to compare the first number of verifications with a first preset threshold.
[0054] The first execution module is configured to return to the step of obtaining the first identifier of the first chip in the terminal based on the identifier acquisition instruction if the first verification count is less than or equal to the first preset threshold.
[0055] In an optional implementation, the acquisition module further includes:
[0056] The identifier acquisition unit is used to acquire the second identifier of the second chip in the terminal according to the identifier acquisition instruction if the first verification count is greater than the first preset threshold.
[0057] An identifier verification unit is used to verify the second identifier of the second chip;
[0058] The second flag generation unit is used to generate a second flag corresponding to the second identifier of the second chip if the verification passes. The second flag indicates that the target plug-in corresponding to the second identifier can be found in the server.
[0059] The determining unit is used to determine the second identifier as the target identifier and the second flag bit as the target flag bit.
[0060] In an optional implementation, the apparatus further includes:
[0061] The second verification count determination module is used to determine the second verification count of the second chip based on the verification record of the second identifier of the second chip if the verification fails.
[0062] The second comparison module is used to compare the second number of verifications with the second preset threshold.
[0063] The second execution module is used to return to the step of obtaining the second identifier of the second chip in the terminal according to the identifier acquisition instruction if the second verification count is less than or equal to the second preset threshold.
[0064] The third flag generation module is used to generate a third flag corresponding to the first chip and the second chip if the second verification count is greater than the second preset threshold. The third flag indicates that the target plugin is prohibited from being searched in the server.
[0065] The determination module is used to determine the third flag bit as the target flag bit and the preset identifier as the target identifier, wherein the preset identifier is the identifier corresponding to the third flag bit.
[0066] In an optional implementation, the lookup module includes:
[0067] The sending unit is used to send the target identifier and the target flag bit of the component to the communication component, so that the communication component can find the target plug-in corresponding to the target identifier in the server according to the target flag bit and return the target plug-in to the terminal.
[0068] The upgrade module is specifically used for:
[0069] Receive the target plugin returned by the communication component;
[0070] Incremental upgrades are performed on the basic local programs of the terminal based on the target plugin.
[0071] In an optional implementation, the transmitting unit includes:
[0072] A transmitting subunit is used to send the target identifier and the target flag bit of the component to the communication component, so that the communication component can determine whether any flag bit in the target flag bit is a preset value;
[0073] The lookup subunit is used to search for the target plugin corresponding to the target identifier in the server and return the target plugin to the terminal if any of the target flag bits is not the preset value.
[0074] In an optional implementation, the lookup subunit is specifically used for:
[0075] Search the server for the list of plugins corresponding to the target identifier and return it to the terminal for display;
[0076] The target plugin in the plugin list is identified and sent to the communication component, so that the communication component can find the target plugin in the server and return the target plugin to the terminal.
[0077] Thirdly, embodiments of the present invention provide an electronic device, including: a processor and a memory, wherein the processor is configured to execute a program upgrade control program stored in the memory to implement the program upgrade control method described in any one of the first aspects.
[0078] Fourthly, embodiments of the present invention provide a storage medium storing one or more programs, which can be executed by one or more processors to implement the program upgrade control method described in any one aspect.
[0079] The technical solution provided by this invention obtains the target identifier of a component in the terminal, determines the target flag bit corresponding to the target identifier, and searches for the target plugin corresponding to the target identifier in the server based on the target flag bit. Based on the target plugin, the terminal's local basic program is incrementally upgraded. Therefore, the terminal can only have its local basic program burned in. When personalized functions are needed, the target plugin is determined through the target identifier of the component in the terminal and the target flag bit corresponding to the target identifier, and the terminal's local basic program is incrementally upgraded based on the target plugin. This achieves automatic personalized program upgrades after the terminal is connected to the network, reducing program maintenance and operation costs and possessing versatility. Attached Figure Description
[0080] Figure 1 This is a schematic diagram of the architecture of the program upgrade control system according to an embodiment of the present invention;
[0081] Figure 2A flowchart illustrating an embodiment of a program upgrade control method provided by this invention;
[0082] Figure 3 A flowchart illustrating an embodiment of another program upgrade control method provided by the present invention;
[0083] Figure 4 A flowchart illustrating another embodiment of the program upgrade control method provided by the present invention;
[0084] Figure 5 A schematic diagram of the plug-in list provided in an embodiment of the present invention;
[0085] Figure 6 A schematic diagram of chip materials provided in an embodiment of the present invention;
[0086] Figure 7 A schematic diagram of the plug-in function table provided in an embodiment of the present invention;
[0087] Figure 8 A flowchart illustrating another embodiment of the program upgrade control method provided by this invention;
[0088] Figure 9 A block diagram illustrating an embodiment of a program upgrade control device provided by this invention;
[0089] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0090] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0091] To facilitate understanding of the embodiments of the present invention, the architecture of the program upgrade control system involved in the present invention will be described below with reference to the accompanying drawings:
[0092] See Figure 1 This is a schematic diagram of the architecture of the program upgrade control system according to an embodiment of the present invention. Figure 1 The system shown includes: terminal 101, communication component 102, and server 103.
[0093] Terminal 101 is an input / output device that provides services to users. It can be an electronic device such as a smartphone, tablet, laptop, or desktop computer, or a smart device such as a smart air conditioner or smart refrigerator. Figure 1 Taking the terminal 101 as an example, which is a smartphone.
[0094] Server 103 refers to the background server that provides background services for the application corresponding to the application in the aforementioned terminal 101. The background services include, but are not limited to, data transmission services and data storage services.
[0095] The communication component 102 enables communication between the terminal 101 and the server 103. It can be a WIFI (wireless network communication technology) module or a communication module, such as IIC (Inter-Integrated Circuit) or SPI (Serial Peripheral Interface).
[0096] It should be noted that, Figure 1 The number of terminals, servers, and communication components is merely an illustrative example, and the embodiments of the present invention do not limit this.
[0097] The program upgrade control method provided by the present invention will be further explained and described below with reference to the accompanying drawings and specific embodiments. The embodiments do not constitute a limitation on the embodiments of the present invention.
[0098] See Figure 2 This is a flowchart illustrating an embodiment of a program upgrade control method provided by the present invention. As an embodiment, this method can be applied to a terminal, for example... Figure 1 Terminal 101 is shown in the example. (As shown in the example...) Figure 2 As shown, the process may include the following steps:
[0099] Step 201: Obtain the target identifier of the component in the terminal and determine the target flag bit corresponding to the target identifier of the component.
[0100] The aforementioned components are independent devices within the terminal. They can be external memory storage chips within the device, or they can be MCUs (Microcontroller Units). This embodiment of the invention does not impose any limitations on this. The aforementioned identifier is a unique identifier burned into the component at the factory.
[0101] In this embodiment of the invention, after the terminal is connected to the network, the target identifier of the component in the terminal can be obtained through a preset communication method, and then the target flag bit corresponding to the target identifier can be determined. It should be noted that, in order to ensure that the target identifier of the component in the terminal can be obtained, during the component production process, the production personnel can obtain the component information (such as the component identifier, the component model, etc.), and enter and save the component information.
[0102] Step 202: Locate the target plugin corresponding to the target identifier in the server based on the target flag.
[0103] The aforementioned target flag is used to indicate whether the target plugin corresponding to the target identifier can be found on the server. If it is determined that the target plugin corresponding to the target identifier can be found on the server, the target plugin is returned to the terminal; if it is determined that the target plugin corresponding to the target identifier cannot be found on the server, the operation is terminated.
[0104] The aforementioned target plugin is a program written according to a certain application programming interface specification. It can be a plugin with personalized functions, such as beautification functions, photo-taking functions, soft breeze functions, etc.
[0105] It is understandable that during component production, production personnel will input and save the component information (such as component identification, component plug-in, etc.) to the server. Therefore, the component information stored on the server includes the association between component identification and plug-in.
[0106] Based on this, the terminal can, according to the target flag, locate the target plugin corresponding to the target identifier on the server, provided that it can find the target plugin on the server. For details on how to locate the target plugin corresponding to the target identifier on the server based on the target flag, please refer to [link to documentation]. Figure 3 The flowchart of the embodiment shown is not described in detail here.
[0107] Step 203: Incrementally upgrade the basic program on the local terminal based on the target plugin.
[0108] The aforementioned basic procedures are the functional programs burned into the terminal during production to ensure that the terminal can maintain basic operation. The incremental upgrade mentioned above refers to replacing only the files that need updating, rather than replacing all files during the upgrade process. This incremental upgrade can be an OTA (Over-The-Air) incremental upgrade.
[0109] As can be seen from the above description, after the terminal finds the target plugin, it can incrementally upgrade the terminal's local basic programs based on the target plugin.
[0110] For example, suppose the terminal is a smartphone, the basic program is a calling program, and the target plugin is a camera function plugin. Then, as described above, the camera function plugin returned by the communication component is received, and the smartphone's local basic program is incrementally upgraded based on the camera function plugin, so that the smartphone has both calling and camera functions.
[0111] Assuming the terminal is a smart air conditioner, the basic program is a cooling and heating program, and the target plugin is a gentle breeze function plugin, then, according to the above description, upon receiving the gentle breeze function plugin returned by the communication component, the gentle breeze function plugin can incrementally upgrade the smart air conditioner's local basic program, enabling the smart air conditioner to have a gentle breeze function in addition to its cooling and heating functions.
[0112] This approach allows for the addition of new personalized features to the existing basic programs on the terminal, as well as the upgrading of existing programs.
[0113] This concludes the process. Figure 2 The process described is as follows.
[0114] pass Figure 2 As shown in the flowchart, in the technical solution of this invention, by obtaining the target identifier of the components in the terminal, determining the target flag bit corresponding to the target identifier of the components, and searching for the target plugin corresponding to the target identifier in the server based on the target flag bit, the basic program locally on the terminal is incrementally upgraded based on the target plugin. Therefore, the terminal can only burn the local basic program, and when personalized function programs are needed, the target plugin is determined through the target identifier of the components in the terminal and the target flag bit corresponding to the target identifier, and the basic program locally on the terminal is incrementally upgraded based on the target plugin. This achieves automatic personalized program upgrades after the terminal is connected to the network, reduces program maintenance and operation costs, and has universality.
[0115] See Figure 3 This is a flowchart illustrating an embodiment of another program upgrade control method provided by the present invention. Figure 3 The process shown above Figure 2 Based on the illustrated process, this section describes in detail how to locate the target plugin on the server and perform incremental upgrades to the basic program based on the target plugin. For example... Figure 3 As shown, the process may include the following steps:
[0116] Step 301: Obtain the target identifier of the component in the terminal and determine the target flag bit corresponding to the target identifier of the component.
[0117] For a detailed description of step 301, please refer to the above. Figure 2The relevant description of step 201 will not be repeated here.
[0118] Step 302: Send the target identifier and target flag of the component to the communication component, so that the communication component can find the target plug-in corresponding to the target identifier in the server according to the target flag and return the target plug-in to the terminal.
[0119] The aforementioned communication component can be a communication component or WIFI module installed in the terminal, or it can be a standalone communication component, such as... Figure 1 The communication component 102 shown in the example is not limited in this embodiment of the invention.
[0120] As can be seen from the above description, in this embodiment of the invention, after the terminal obtains the target identifier and the target flag, it can send the target identifier and the target flag to the communication component, so that the communication component can receive the target identifier and the target flag sent by the terminal. Thus, the target plug-in corresponding to the target identifier can be determined by searching in the server according to the received target flag.
[0121] Specifically, the target flag bit can be used to determine whether the target plugin corresponding to the target identifier can be found on the server. For example, setting the target flag bit to 1 indicates that the target plugin corresponding to the target identifier can be found on the server, and the communication component can then send the target plugin to the terminal. Setting the target flag bit to 0 indicates that the target plugin corresponding to the target identifier cannot be found on the server, and the operation terminates.
[0122] For example, suppose the device information stored on the server includes the component identifiers and the association between them and the plug-ins, as shown in Table 1 below:
[0123] Table 1
[0124]
[0125] Assuming the target flag is 1, indicating that the target plugin corresponding to the target identifier (00001) can be found on the server, then according to the above description, the target plugin corresponding to the target identifier can be found on the server, resulting in plugin 1, which is then returned to the terminal.
[0126] Assuming the target flag is 0, indicating that the target plugin corresponding to the target identifier cannot be found on the server, and the target identifier is 00000, then the operation terminates because the target plugin corresponding to the target identifier cannot be found on the server.
[0127] Step 303: Receive the target plugin returned by the communication component.
[0128] As can be seen from the above description, the communication component returns the target plugin corresponding to the target identifier to the terminal. The terminal can receive the target plugin returned by the communication component, so that the terminal can perform incremental upgrades on the terminal's local basic program based on the target plugin.
[0129] Step 304: Incrementally upgrade the basic program on the local terminal based on the target plugin.
[0130] For a detailed description of step 304, please refer to [link / reference]. Figure 2 The relevant description of step 204 will not be repeated here.
[0131] This concludes the process. Figure 3 The process described is as follows.
[0132] pass Figure 3 As shown in the flowchart, in the technical solution of this invention, by obtaining the target identifier of the component in the terminal, determining the target flag bit corresponding to the target identifier of the component, and sending the target identifier and target flag bit of the component to the communication component, the communication component can search for the target plugin corresponding to the target identifier in the server according to the target flag bit and return the target plugin to the terminal. The terminal receives the target plugin returned by the communication component and incrementally upgrades the local basic program based on the target plugin. Therefore, the terminal can only burn the local basic program. When personalized function programs are needed, the target plugin is determined through the target identifier of the component in the terminal and the target flag bit corresponding to the target identifier, and the local basic program of the terminal is incrementally upgraded based on the target plugin. This achieves automatic personalized program upgrades after the terminal is connected to the network, reduces program maintenance and operation costs, and has universality.
[0133] See Figure 4 This is a flowchart illustrating another embodiment of the program upgrade control method provided by the present invention. Figure 4 The process shown above Figure 2 Based on the illustrated process, describe how to incrementally upgrade the basic local programs on the terminal. For example... Figure 4 As shown, the process may include the following steps:
[0134] Step 401: Read the identifier acquisition instruction.
[0135] Step 402: Obtain the first identifier of the first chip in the terminal according to the identifier acquisition instruction.
[0136] The following provides a unified description of steps 401 and 402:
[0137] In one embodiment, to obtain the identifier (hereinafter referred to as the first identifier) of the first chip in the terminal, an identifier acquisition instruction can be read, and then the first identifier of the first chip in the terminal can be obtained according to the identifier acquisition instruction.
[0138] The aforementioned first chip can be an external memory storage chip. Therefore, if the terminal has a first chip, the first identifier of the first chip can be obtained preferentially.
[0139] In practice, since not all terminals possess the first chip, the first identifier of the first chip in the terminal can be obtained first as the target identifier. If the terminal does not possess the first chip, the second identifier of the second chip can be obtained as the target identifier. Therefore, it can be guaranteed that the target identifier can be obtained regardless of whether the terminal possesses the first chip.
[0140] Step 403: Verify the first identifier of the first chip.
[0141] Step 404: If the verification passes, a first flag bit corresponding to the first identifier of the first chip is generated. The first flag bit indicates that the target plug-in corresponding to the first identifier is allowed to be found in the server.
[0142] Step 405: Determine the first identifier as the target identifier and the first flag bit as the target flag bit. Then, execute step 416.
[0143] Step 406: If the verification fails, determine the first verification count of the first chip based on the verification record of the first identifier of the first chip.
[0144] Step 407: Compare the first number of verifications with the first preset threshold. If the first number of verifications is less than or equal to the first preset threshold, return to step 402; if the first number of verifications is greater than the first preset threshold, proceed to step 408.
[0145] Step 408: Obtain the second identifier of the second chip in the terminal according to the identifier acquisition instruction.
[0146] The following provides a unified description of steps 403 to 408:
[0147] In this embodiment of the invention, to verify whether the acquired first identifier is normal, the first identifier can be verified according to a preset verification method. It should be noted that, in practice, the first identifier of the first chip obtained according to the identifier acquisition instruction includes a first identifier code and a first verification code. This verification code is used to verify whether the first identifier code is normal.
[0148] The aforementioned flags include Eid and Mid. Here, Eid indicates whether the first identifier read from the first chip is normal, and Mid indicates whether the second identifier read from the second chip is normal. The specific settings of the above verification method can be set by the designer or user, and can be the verification method specified in the chip specification. This embodiment of the invention does not limit this.
[0149] Optionally, the first identifier code can be verified according to the verification method specified in the chip specification to obtain a verification code. It is then determined whether this verification code matches the first verification code. If the verification code matches the first verification code, the verification is considered successful, indicating that the first identifier read from the first chip is normal. In this case, Eid is set to 1 and Mid is set to 0, thus generating the first flag bit as Eid=1 and Mid=0.
[0150] If the verification code does not match the first verification code, the verification fails, indicating that the first identifier read from the first chip is abnormal. In this case, subsequent operations can be performed.
[0151] In this embodiment of the invention, if the first identifier verification passes, it can be determined that the first identifier is normal, and a first flag bit corresponding to the first identifier of the first chip can be generated. Thus, the first identifier can be determined as the target identifier, the first flag bit can be determined as the target flag bit, and then step 416 is executed.
[0152] It should be clear that the above is only one example of the specific way to express the target flag. In actual situations, other ways can also be used to express the target flag, and the embodiments of the present invention do not limit this.
[0153] In one embodiment, to ensure data accuracy and reliability, when it is determined that the first identifier of the first chip has been verified and the verification fails, multiple verifications can be performed and a threshold can be set to avoid inaccurate verification results due to randomness. Therefore, the verification record of the first identifier of the first chip being verified can be recorded and saved to the server, and the number of verifications of the first identifier of the first chip (hereinafter referred to as the first verification count) can be determined based on the verification record of the first identifier of the first chip recorded on the server. It can be understood that the first verification count includes the current verification of the first identifier of the first chip. The first verification count can be compared with a first preset threshold (e.g., 5, 10, etc.) to further verify whether the first identifier read from the first chip is normal.
[0154] Specifically, the first verification count is compared with the first preset threshold. If the first verification count is less than or equal to the first preset threshold, then the process returns to step 402, that is, the first identifier of the first chip in the terminal is obtained according to the identifier acquisition instruction.
[0155] If the first verification count is greater than the first preset threshold, the second identifier of the second chip in the terminal is obtained according to the identifier acquisition instruction.
[0156] For example, suppose the first preset threshold is 5, the first identifier is 10001, and the server stores 2 verification records for the first identifier of the first chip. Then, according to the above description, if the verification of the first identifier of the first chip fails, the first verification count of the first chip is determined to be 3 based on the verification record of the first identifier of the first chip. Comparing the first verification count with the first preset threshold, it is determined that the first verification count is less than the first verification count threshold. Therefore, the process returns to the step of obtaining the first identifier of the first chip in the terminal according to the identifier acquisition instruction, re-acquiring the first identifier, and verifying the first identifier. If the verification passes, a first flag bit corresponding to the first identifier of the first chip is generated as Eid=1, Mid=0. The first identifier is determined as the target identifier, i.e., 10001, and the first flag bit is determined as the target flag bit, i.e., Eid=1, Mid=0. Then, step 416 is executed.
[0157] Assuming the first preset threshold is 5, and that the server stores 4 verification records for the first identifier of the first chip, then, according to the above description, if the verification of the first identifier of the first chip fails, the first verification count of the first chip is determined to be 5 based on the verification records of the first identifier of the first chip. Comparing the first verification count with the first preset threshold, it is determined that the first verification count is equal to the first verification count threshold. Therefore, the process returns to the step of obtaining the first identifier of the first chip in the terminal according to the identifier acquisition instruction, re-acquiring the first identifier, and verifying it. If the verification fails, the first verification count of the first chip is determined to be 6 again based on the verification records of the first identifier of the first chip. Comparing the first verification count with the first preset threshold, it is determined that the first verification count is greater than the first preset threshold. Therefore, according to the identifier acquisition instruction, the second identifier of the second chip in the terminal is acquired.
[0158] Therefore, if the first identifier verification fails, multiple verifications of the first identifier are performed, and a threshold is set for comparison. This further confirms that the result of the first identifier is not accidental. Therefore, the second identifier of the second chip in the terminal can be obtained according to the identifier acquisition instruction.
[0159] Step 409: Verify the second identifier of the second chip.
[0160] Step 410: If the verification passes, a second flag bit corresponding to the second identifier of the second chip is generated. The second flag bit indicates that the target plug-in corresponding to the second identifier can be found in the server.
[0161] Step 411: Determine the second identifier as the target identifier and the second flag bit as the target flag bit.
[0162] The following provides a unified description of steps 409 to 411:
[0163] As can be seen from the above description, in this embodiment of the invention, when the first verification count is greater than a first preset threshold, the second identifier of the second chip in the terminal is obtained according to the identifier acquisition instruction. To verify whether the acquired second identifier is normal, the second identifier can be verified according to the above verification method. Furthermore, the acquired second identifier includes a second identifier code and a second verification code, the second verification code being used to verify whether the second identifier code is normal.
[0164] The specific settings of the above-mentioned verification methods can be set by the designer or the user, and can be the verification methods specified in the chip specifications. This embodiment of the invention does not limit this.
[0165] Optionally, the second identifier code can be verified according to the verification method specified in the chip specification to obtain a verification code. It is then determined whether this verification code matches the second verification code. If the verification code matches the second verification code, the verification is considered successful, indicating that the second identifier read from the second chip is normal. In this case, Eid is set to 0 and Mid is set to 1, thus generating a second flag bit with Eid=0 and Mid=1.
[0166] If the verification code does not match the second verification code, the verification fails, indicating that the second identifier read from the second chip is abnormal. In this case, subsequent operations can be performed. This embodiment of the invention will not be described in detail here.
[0167] In this embodiment of the invention, if the second identifier verification passes, the second identifier read from the second chip is considered normal, and a second flag bit corresponding to the second identifier of the second chip is generated. Thus, the second identifier is determined as the target identifier, and the second flag bit is determined as the target flag bit. Then, step 416 is executed.
[0168] It should be clear that the above is only one example of the specific way to express the target flag. In actual situations, other ways can also be used to express the target flag, and the embodiments of the present invention do not limit this.
[0169] Step 412: If the verification fails, determine the second verification count of the second chip based on the verification record of the second identifier of the second chip.
[0170] Step 413: Compare the second number of verifications with the second preset threshold. If the second number of verifications is less than or equal to the second preset threshold, return to step 408; if the second number of verifications is greater than the second preset threshold, proceed to step 414.
[0171] Step 414: Generate a third flag corresponding to the first chip and the second chip. The third flag indicates that the search for the target plugin in the server is prohibited.
[0172] Step 415: Determine the third flag bit as the target flag bit and the preset identifier as the target identifier. The preset identifier is the identifier corresponding to the third flag bit.
[0173] Steps 412 to 415 are described uniformly below:
[0174] The aforementioned preset identifier is the identifier determined when the target identifier is determined to be the third identifier. It can be set by the designer, and this embodiment of the invention does not limit this.
[0175] As described above, to ensure data accuracy and reliability, when the verification of the second identifier of the second chip fails, multiple verifications can be performed, and a threshold can be set to avoid inaccurate verification results due to randomness. Therefore, the verification record of the current verification of the second identifier of the second chip can be recorded and saved to the server. Based on the verification record of the second identifier of the second chip recorded on the server, the number of verifications of the second chip (hereinafter referred to as the second verification count) can be determined. It is understood that this second verification count includes the current verification of the second identifier of the second chip. The second verification count can be compared with a second preset threshold (e.g., 10, 20, etc.) to further verify whether the second identifier read from the second chip is normal.
[0176] Specifically, based on the verification record of the second identifier of the second chip, the second verification count of the second chip is determined, and the second verification count is compared with the second preset threshold. If the second verification count is less than or equal to the second preset threshold, the process returns to step 408, that is, according to the identifier acquisition instruction, the second identifier of the second chip in the terminal is acquired.
[0177] If the second verification count exceeds the second preset threshold, it indicates that the second identifier read from the second chip is abnormal. Therefore, Eid is set to 0, and Mid is set to 0. This generates a third flag bit corresponding to the first and second chips, with Eid=0 and Mid=0. The third flag bit is then determined as the target flag bit, and a preset identifier is determined as the target identifier. The preset identifier is the identifier corresponding to the third flag bit. Afterward, step 416 is executed.
[0178] For example, suppose the second preset threshold is 5, the second identifier is 101102, and the server stores 3 verification records for the second identifier of the second chip. Then, according to the above description, if the verification of the second identifier of the second chip fails, the second verification count of the second chip is determined to be 4 based on the verification records of the second identifier of the second chip. Comparing the second verification count with the second preset threshold, it is determined that the second verification count is equal to the second preset threshold. Then, the process returns to the step of obtaining the second identifier of the second chip in the terminal according to the identifier acquisition instruction, re-acquires the second identifier, and verifies it. If the verification passes, a second flag bit corresponding to the second identifier of the second chip is generated as Eid=0, Mid=1. The second identifier is determined as the target identifier, i.e., 101102, and the second flag bit is determined as the target flag bit, i.e., Eid=0, Mid=1. Then, step 416 is executed.
[0179] Assuming the second preset threshold is 5, and that the server stores 4 verification records for the second identifier of the second chip, with the preset identifier corresponding to the third flag bit being 000000, then, according to the above description, if the verification of the second identifier of the second chip fails, the second verification count for the second chip is determined to be 5 based on the verification records of the second identifier of the second chip. Comparing the second verification count with the second preset threshold, it is determined that the second verification count is equal to the second preset threshold. Therefore, the process returns to the step of retrieving the second identifier of the second chip from the terminal according to the identifier retrieval instruction, re-retrieve the second identifier, and verify it. If the verification fails, the second verification count for the second chip is determined to be 6 based on the verification records of the second identifier of the second chip. Comparing the second verification count with the second preset threshold, it is determined that the second verification count is greater than the second preset threshold. Therefore, the third flag bit corresponding to the first chip and the second chip is generated as Eid=0, Mid=0. The third flag bit is determined as the target flag bit, i.e., Eid=0, Mid=0, and the preset identifier is determined as the target identifier, i.e., 000000.
[0180] It should be clear that the above is only one example of the specific way to express the target flag. In actual situations, other ways can also be used to express the target flag, and the embodiments of the present invention do not limit this.
[0181] Step 416: Send the target identifier and target flag of the component to the communication component so that the communication component can determine whether any flag in the target flag is a preset value. If any flag in the target flag is not a preset value, search the plugin list corresponding to the target identifier in the server and return it to the terminal for display; determine the target plugin in the plugin list and send the target plugin to the communication component so that the communication component can search for the target plugin in the server and return the target plugin to the terminal.
[0182] The aforementioned preset value is any pre-set value, which can be 0, used to represent the value corresponding to the target flag bit (that is, whether the first identifier read from the first chip is normal, and whether the second identifier read from the second chip is normal). The aforementioned preset value can be set by the designer or user according to the actual situation, and this embodiment of the invention does not limit this.
[0183] In this embodiment of the invention, since the terminal only has a basic program burned in, when the customer needs personalized functions of the terminal, the required plugin can be selected from multiple plugins corresponding to the personalized function program pre-stored on the server for download, and the basic program on the terminal can be incrementally upgraded.
[0184] In one embodiment, in order to obtain the plug-in corresponding to the target identifier and the target flag stored in the server, the terminal can send the obtained target identifier and the target flag to the communication component, so that the communication component can find the target plug-in corresponding to the target identifier in the server according to the target flag and return the target plug-in to the terminal.
[0185] Specifically, after receiving the target identifier and target flag, the communication component can determine whether any flag in the target flag is a preset value (e.g., non-zero). If any flag in the target flag is not a preset value, it searches the server for the plugin list corresponding to the target identifier and returns it to the terminal for display. For example, ... Figure 5 The diagram shown is a schematic representation of the plugin list provided in an embodiment of the present invention. Figure 5 The plugin list shown includes a serial number, the identifier of the first or second chip, the overall model number, main functions, and personalized function plugins. The identifier of the first or second chip is chip information entered by the production unit after receiving the chip materials according to the production plan during the production process. Specifically, as shown below... Figure 6 The diagram shown is a schematic diagram of the chip materials provided in an embodiment of the present invention. Figure 6As can be seen, when receiving and entering chip materials, a corresponding ID (Identity Document) code, i.e., an identifier, will be provided for the chip. Here, the chip can be a first chip (e.g., an external memory chip) and / or a second chip (e.g., an MCU). The above-mentioned complete device model refers to the model of the terminal device on which the chip is installed. The main function is the basic function corresponding to the basic program burned into the terminal device at the factory (e.g., call function, cooling and heating function, etc.). Personalized function plug-ins are plug-ins with personalized functions that can be installed when the terminal device is subsequently upgraded. The corresponding personalized functions can be found in [link to relevant documentation]. Figure 7 This is a schematic diagram of the plug-in function table provided in an embodiment of the present invention.
[0186] Based on this, users can select the plugin corresponding to the target identifier from the plugin list displayed in the visual interface as the target plugin. The target plugin can then be downloaded from the server to the communication component, allowing the terminal to download the target plugin downloaded by the communication component to its local machine. Thus, the communication component obtains the target plugin corresponding to the target identifier from the server.
[0187] For example, with Figure 5 Taking the example plugin list as an example, assuming the preset value is 0, and the target flag bits are Eid=1, Mid=0, and the target identifier is 10001. Then, according to the above description, we determine whether any flag bit in the target flag list is 0. If any flag bit in the target flag list is not 0, we search the server for the plugin list corresponding to the target identifier, as shown below. Figure 5 The process returns to the terminal for display; the target plugin in the plugin list is determined to be GN1, and the target plugin is sent to the communication component so that the communication component can find the target plugin in the server and return the target plugin to the terminal.
[0188] In addition, users can also determine the device model corresponding to the target identifier based on the plugin list displayed in the visual interface, select the plugin corresponding to the target identifier and device model as the target plugin, and download the target plugin from the server to the communication component, so that the terminal can download the target plugin downloaded by the communication component to its local machine. Thus, the communication component can obtain the target plugin corresponding to the target identifier from the server.
[0189] Step 417: Receive the target plugin returned by the communication component.
[0190] Step 418: Incrementally upgrade the basic program on the local terminal based on the target plugin.
[0191] For a detailed description of steps 417 and 418, please refer to [link to relevant documentation]. Figure 2 and Figure 3 The relevant descriptions of the process shown will not be repeated here.
[0192] This concludes the process. Figure 4 The process described is as follows.
[0193] See Figure 8 This is a flowchart illustrating another embodiment of the program upgrade control method provided by the present invention. As an example, this method can be applied to a mobile phone. Figure 8 As shown:
[0194] In this embodiment of the invention, the communication component is first configured with the mobile phone to enable data exchange between them. The communication component can be a Wi-Fi module or other communication module; this embodiment of the invention does not impose any limitations on this.
[0195] The mobile phone obtains the identifiers of the components in the current device terminal.
[0196] Optionally, an identifier retrieval instruction can be read, and the identifier of the component in the current device terminal can be retrieved based on the identifier retrieval instruction. This identifier is a unique identifier programmed into the component by the manufacturer at the time of manufacture. This allows the system to locate the corresponding terminal and its information (such as the terminal model) based on the identifier.
[0197] In practice, the terminal can prioritize obtaining the identifier of the external memory storage chip in the terminal. However, not all terminals have an external memory storage chip. Therefore, for terminals that do not have an external memory storage chip, the identifier of the MCU in the terminal can be obtained.
[0198] Specifically, the MCU in the aforementioned terminal can send an identifier acquisition instruction to enable the terminal to read the identifier acquisition instruction and, based on the identifier acquisition instruction, prioritize the acquisition of the identifier of the external memory storage chip in the current device terminal, such as XXXXXXXXAAAA, where XXXXXXXX is the identifier of the external memory storage chip, and AAAA is the identifier verification code of the external memory storage chip, used to verify whether the identifier of the preceding external memory storage chip is normal. If the verification passes, the identifier is determined as the target identifier. The verification method can be as specified in the chip specification, and this embodiment of the invention does not limit it.
[0199] Then, the mobile app retrieves the phone model and the corresponding list of personalized plugins from the server based on the identifier, so that the user can select the target plugin based on the phone model and the corresponding list of personalized plugins.
[0200] The mobile app downloads the corresponding target plugins (i.e., app function plugins) based on the personalized function plugin list, thus completing the incremental upgrade of the mobile app.
[0201] This concludes the process. Figure 8The process described is as follows.
[0202] This allows the terminal to only have its basic local program burned in. When personalized functions are needed, the server identifies the corresponding personalized function plugin based on the terminal's identifier, and then incrementally upgrades the terminal's local basic program according to the personalized function plugin. This enables automatic personalized program upgrades after the terminal connects to the network, reducing program maintenance and operation costs.
[0203] Corresponding to the aforementioned embodiments of the program upgrade control method, the present invention also provides an embodiment block diagram of the device.
[0204] See Figure 9 This is a block diagram illustrating an embodiment of a program upgrade control device provided by an embodiment of the present invention. Figure 9 As shown, the device includes:
[0205] The acquisition module 901 is used to acquire the target identifier of the component in the terminal and determine the target flag bit corresponding to the target identifier of the component;
[0206] The lookup module 902 is used to search for the target plugin corresponding to the target identifier in the server based on the target flag bit;
[0207] Upgrade module 903 is used to incrementally upgrade the basic program on the local terminal based on the target plugin.
[0208] In an optional implementation, the acquisition module 901 is specifically used for:
[0209] Read the identifier acquisition command;
[0210] According to the identification acquisition instruction, the first identifier of the first chip in the terminal is acquired;
[0211] Verify the first identifier of the first chip;
[0212] If the verification passes, a first flag bit corresponding to the first identifier of the first chip is generated. The first flag bit indicates that the target plug-in corresponding to the first identifier is allowed to be found in the server.
[0213] The first identifier is determined as the target identifier, and the first flag bit is determined as the target flag bit.
[0214] In an optional embodiment, the device further includes (not shown in the figures):
[0215] The first number determination module is used to determine the first number of verifications for the first chip based on the verification record of the first identifier of the first chip if the verification fails.
[0216] The first comparison module is used to compare the first number of verifications with a first preset threshold.
[0217] The first execution module is configured to return to the step of obtaining the first identifier of the first chip in the terminal based on the identifier acquisition instruction if the first verification count is less than or equal to the first preset threshold.
[0218] In an optional implementation, the acquisition module 901 further includes (not shown in the figure):
[0219] The identifier acquisition unit is used to acquire the second identifier of the second chip in the terminal according to the identifier acquisition instruction if the first verification count is greater than the first preset threshold.
[0220] An identifier verification unit is used to verify the second identifier of the second chip;
[0221] The second flag generation unit is used to generate a second flag corresponding to the second identifier of the second chip if the verification passes. The second flag indicates that the target plug-in corresponding to the second identifier can be found in the server.
[0222] The determining unit is used to determine the second identifier as the target identifier and the second flag bit as the target flag bit.
[0223] In an optional embodiment, the device further includes (not shown in the figures):
[0224] The second verification count determination module is used to determine the second verification count of the second chip based on the verification record of the second identifier of the second chip if the verification fails.
[0225] The second comparison module is used to compare the second number of verifications with the second preset threshold.
[0226] The second execution module is used to return to the step of obtaining the second identifier of the second chip in the terminal according to the identifier acquisition instruction if the second verification count is less than or equal to the second preset threshold.
[0227] The third flag generation module is used to generate a third flag corresponding to the first chip and the second chip if the second verification count is greater than the second preset threshold. The third flag indicates that the target plugin is prohibited from being searched in the server.
[0228] The determination module is used to determine the third flag bit as the target flag bit and the preset identifier as the target identifier, wherein the preset identifier is the identifier corresponding to the third flag bit.
[0229] In an optional implementation, the lookup module 902 includes (not shown in the figures):
[0230] The sending unit is used to send the target identifier and the target flag bit of the component to the communication component, so that the communication component can find the target plug-in corresponding to the target identifier in the server according to the target flag bit and return the target plug-in to the terminal.
[0231] The upgrade module 903 is specifically used for:
[0232] Receive the target plugin returned by the communication component;
[0233] Incremental upgrades are performed on the basic local programs of the terminal based on the target plugin.
[0234] In an optional implementation, the transmitting unit includes (not shown in the figures):
[0235] A transmitting subunit is used to send the target identifier and the target flag bit of the component to the communication component, so that the communication component can determine whether any flag bit in the target flag bit is a preset value;
[0236] The lookup subunit is used to search for the target plugin corresponding to the target identifier in the server and return the target plugin to the terminal if any of the target flag bits is not the preset value.
[0237] In an optional implementation, the lookup subunit is specifically used for:
[0238] Search the server for the list of plugins corresponding to the target identifier and return it to the terminal for display;
[0239] The target plugin in the plugin list is identified and sent to the communication component, so that the communication component can find the target plugin in the server and return the target plugin to the terminal.
[0240] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Figure 10 The illustrated electronic device 1000 includes at least one processor 1001, a memory 1002, at least one network interface 1004, and a user interface 1003. The various components in the electronic device 1000 are coupled together via a bus system 1005. It is understood that the bus system 1005 is used to implement communication between these components. In addition to a data bus, the bus system 1005 also includes a power bus, a control bus, and a status signal bus. However, for clarity, ... Figure 10 The general labeled all buses as Bus System 1005.
[0241] The user interface 1003 may include a display, keyboard or clicking device (e.g., mouse, trackball), touchpad or touch screen, etc.
[0242] It is understood that the memory 1002 in the embodiments of the present invention can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The memory 1002 described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0243] In some implementations, memory 1002 stores elements, executable units or data structures, or subsets thereof, or extended sets thereof: operating system 10021 and application programs 10022.
[0244] The operating system 10021 includes various system programs, such as the framework layer, core library layer, and driver layer, used to implement various basic business functions and handle hardware-based tasks. The application program 10022 includes various applications, such as a media player and a browser, used to implement various application functions. The program implementing the method of this embodiment can be included in the application program 10022.
[0245] In this embodiment of the invention, by calling the program or instructions stored in the memory 1002, specifically the program or instructions stored in the application program 10022, the processor 1001 executes the method steps provided in each method embodiment, including, for example:
[0246] Obtain the target identifier of the component in the terminal, and determine the target flag bit corresponding to the target identifier of the component;
[0247] Based on the target flag, search the server for the target plugin corresponding to the target identifier;
[0248] Incremental upgrades are performed on the basic local programs of the terminal based on the target plugin.
[0249] The methods disclosed in the above embodiments of the present invention can be applied to or implemented by processor 1001. Processor 1001 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in processor 1001. The processor 1001 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of the present invention can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software units in the decoding processor. The software units may be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 1002. Processor 1001 reads the information in memory 1002 and, in conjunction with its hardware, completes the steps of the above method.
[0250] It is understood that the embodiments described herein can be implemented in hardware, software, firmware, middleware, microcode, or a combination thereof. For hardware implementation, the processing unit can be implemented in one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described herein, or combinations thereof.
[0251] For software implementation, the techniques described herein can be implemented by units that perform the functions described herein. The software code can be stored in memory and executed by a processor. The memory can be implemented in the processor or external to the processor.
[0252] The electronic device provided in this embodiment may be as follows: Figure 10 The electronic device shown can perform the following: Figure 2-4 and Figure 8 All steps of the program upgrade control method, thereby achieving Figure 2-4 and Figure 8 For details on the technical effects of the program upgrade control method, please refer to [link / reference]. Figure 2-4 and Figure 8 The relevant descriptions are presented concisely and will not be elaborated upon here.
[0253] This invention also provides a storage medium (computer-readable storage medium). This storage medium stores one or more programs. The storage medium may include volatile memory, such as random access memory; it may also include non-volatile memory, such as read-only memory, flash memory, hard disk, or solid-state drive; and it may also include combinations of the above types of memory.
[0254] When one or more programs in the storage medium can be executed by one or more processors to implement the above-mentioned program upgrade control method executed on the electronic device side.
[0255] The processor is used to execute a program upgrade control program stored in memory to implement the following steps of a program upgrade control method executed on the electronic device side:
[0256] Obtain the target identifier of the component in the terminal, and determine the target flag bit corresponding to the target identifier of the component;
[0257] Based on the target flag, search the server for the target plugin corresponding to the target identifier;
[0258] Incremental upgrades are performed on the basic local programs of the terminal based on the target plugin.
[0259] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0260] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented in hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0261] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A program upgrade control method characterized by comprising: The method is applied to a terminal and comprises: acquiring a target identifier of a component in the terminal and determining a target flag bit corresponding to the target identifier of the component; wherein the terminal only burns a local basic program; acquiring a first identifier of a first chip in the terminal as the target identifier, and acquiring a second identifier of a second chip as the target identifier in a case where the terminal does not have the first chip; a first flag bit in the target flag bit represents that a target plug-in corresponding to the first identifier is allowed to be found in a server; and a second flag bit represents that a target plug-in corresponding to the second identifier is allowed to be found in the server; finding the target plug-in corresponding to the target identifier in the server according to the target flag bit; wherein the target identifier of the component and the target flag bit are sent to a communication component, so that the communication component determines whether any flag bit in the target flag bit is a preset value; if any flag bit in the target flag bit is not the preset value, a plug-in list corresponding to the target identifier is found in the server, and the terminal is returned to display; a target plug-in in the plug-in list is determined, so that the communication component finds the target plug-in in the server and returns the target plug-in to the terminal; incrementally upgrading the local basic program of the terminal based on the target plug-in; wherein the incremental upgrade is an OTA incremental upgrade.
2. The method of claim 1, wherein, The acquiring of the target identifier of the component in the terminal and the determining of the target flag bit corresponding to the target identifier of the component comprise: reading an identifier acquisition instruction; acquiring the first identifier of the first chip in the terminal according to the identifier acquisition instruction; verifying the first identifier of the first chip; if the verification is passed, a first flag bit corresponding to the first identifier of the first chip is generated, and the first flag bit represents that a target plug-in corresponding to the first identifier is allowed to be found in a server; the first identifier is determined as the target identifier, and the first flag bit is determined as the target flag bit.
3. The method of claim 2, wherein, The method further comprises: if the verification is not passed, a first verification number of the first chip is determined according to a verification record of the first identifier of the first chip; the first verification number is compared with a first preset threshold value; if the first verification number is less than or equal to the first preset threshold value, the step of acquiring the first identifier of the first chip in the terminal according to the identifier acquisition instruction is returned to be executed.
4. The method of claim 3, wherein, The acquiring of the target identifier of the component in the terminal and the determining of the target flag bit corresponding to the target identifier of the component further comprise: if the first verification number is greater than the first preset threshold value, a second identifier of a second chip in the terminal is acquired according to the identifier acquisition instruction; verifying the second identifier of the second chip; if the verification is passed, a second flag bit corresponding to the second identifier of the second chip is generated, and the second flag bit represents that a target plug-in corresponding to the second identifier is allowed to be found in a server; the second identifier is determined as the target identifier, and the second flag bit is determined as the target flag bit.
5. The method of claim 4, wherein, The method further comprises: If the verification fails, a second verification number of the second chip is determined according to a verification record of the second identification of the second chip; The second verification number is compared with a second preset threshold; If the second verification number is less than or equal to the second preset threshold, a step of acquiring the second identification of the second chip in the terminal according to the identification acquisition instruction is returned to be executed; If the second verification number is greater than the second preset threshold, a third flag corresponding to the first chip and the second chip is generated, and the third flag represents that the server is prohibited from searching for the target plug-in; The third flag is determined as a target flag, and a preset identification is determined as a target identification, the preset identification being an identification corresponding to the third flag.
6. The method of claim 1, wherein, The basic program locally in the terminal is incrementally upgraded based on the target plug-in, including: The target plug-in returned by the communication component is received; The basic program locally in the terminal is incrementally upgraded based on the target plug-in.
7. A program upgrade control device characterized by comprising: The device is applied to a terminal, including: An acquisition module is configured to acquire a target identification of a component in the terminal and determine a target flag corresponding to the target identification of the component; wherein the terminal only burns a local basic program; a first identification of a first chip in the terminal is acquired as the target identification; in a case where the terminal does not have the first chip, a second identification of a second chip is acquired as the target identification; a first flag in the target flag represents that the server is allowed to search for a target plug-in corresponding to the first identification; and a second flag represents that the server is allowed to search for a target plug-in corresponding to the second identification. A search module is configured to search for a target plug-in corresponding to the target identification in the server according to the target flag; wherein the target identification of the component and the target flag are sent to a communication component, so that the communication component determines whether any flag in the target flag is a preset value; if any flag in the target flag is not the preset value, a plug-in list corresponding to the target identification is searched for in the server, and the terminal is returned to be displayed; a target plug-in in the plug-in list is determined, and the target plug-in is sent to the communication component, so that the communication component searches for the target plug-in in the server and returns the target plug-in to the terminal. An upgrade module is configured to incrementally upgrade the basic program locally in the terminal based on the target plug-in; wherein the incremental upgrade is an OTA incremental upgrade.
8. An electronic device, comprising: including: A processor and a memory, the processor is configured to execute a program upgrade control program stored in the memory to implement the program upgrade control method in any one of claims 1-6.
9. A storage medium, characterized by The storage medium stores one or more programs, and the one or more programs are executed by one or more processors to implement the program upgrade control method in any one of claims 1-6.