Upgrading method, processing device, electronic equipment and storage medium
By splitting the upgrade package to form a sub-upgrade package, and obtaining and upgrading it step by step according to the upgrade sequence, the problem that the automated machine cannot download the complete upgrade package due to insufficient storage space, and a successful equipment upgrade was achieved.
Patent Information
- Application Number
- CN202510015145.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-03
- Publication Date
- 2025-05-06
AI Technical Summary
The automated machine with small circuit board memory cannot download the complete upgrade package data due to limited storage space, resulting in the upgrade failure.
The upgrade package is divided through auxiliary devices to form multiple sub-upgrade packages. The data size of each sub-upgrade package is less than or equal to the storage size of the terminal device, and the sub-upgrade package is obtained successively according to the upgrade sequence information for upgrading.
It solves the problem of upgrade failure caused by excessive upgrade packages to ensure that the terminal device can successfully complete the upgrade.
Smart Images

Figure CN119938099A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of software upgrade, and in particular to an upgrade method, a processing device, an electronic device and a storage medium. Background Art
[0002] With the development of science and technology, more and more automated machines have brought convenience to people's work and life. Among them, there are some automated machines with small circuit board memory. Due to the demand for intelligence and functions, automated machines often need to obtain upgrade packages through the Internet to optimize existing functions or obtain new functions.
[0003] However, for automated machines with smaller circuit board memory, due to limited storage space, when the current upgrade package is large, the automated machine cannot obtain the complete upgrade package data, resulting in insufficient storage space and upgrade failure. Summary of the invention
[0004] The present application provides an upgrade method, a processing device, an electronic device and a storage medium, which can solve the problem of upgrade failure caused by the upgrade package being too large and the device being unable to download the complete upgrade package.
[0005] In a first aspect, an upgrade method provided in an embodiment of the present application is applied to a terminal device, comprising:
[0006] receiving upgrade information from the auxiliary device, wherein the upgrade information includes upgrade sequence information of at least one sub-upgrade package, the at least one sub-upgrade package is obtained by the auxiliary device dividing the upgrade package, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is smaller than or equal to the storage size of the terminal device;
[0007] Based on the upgrade sequence information, a sub-upgrade package is obtained from the auxiliary device to perform multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
[0008] It can be seen that the method receives upgrade information from an auxiliary device, and the upgrade information includes upgrade sequence information of at least one sub-upgrade package, and the at least one sub-upgrade package is obtained after the auxiliary device divides the upgrade package. Among them, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device. Then the terminal device can sequentially obtain the sub-upgrade packages from the auxiliary device based on the upgrade sequence information for multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device. Thus, the upgrade package with a larger data size is split into at least one sub-upgrade package by the auxiliary device. Since the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device, the terminal device can then obtain a complete sub-upgrade package for upgrading. Thus, by sequentially obtaining at least one sub-upgrade package, the terminal device can complete the upgrade. Then the problem of upgrade failure caused by the upgrade package being too large and the device being unable to download the complete upgrade package is solved.
[0009] In a second aspect, an upgrade method provided in an embodiment of the present application is applied to an auxiliary device, comprising:
[0010] Splitting the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, wherein the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device;
[0011] Determining the order of the at least one sub-upgrade package to obtain upgrade order information;
[0012] Generate upgrade information based on the upgrade sequence information, and send the upgrade information to the terminal device;
[0013] Indexes are received from the terminal device multiple times, and sub-upgrade packages corresponding to the indexes are sent to the terminal device based on the indexes until at least one sub-upgrade package is sent, wherein the indexes are determined by the terminal device based on the upgrade information.
[0014] In a third aspect, a terminal device provided in an embodiment of the present application includes:
[0015] a receiving module, configured to receive upgrade information from an auxiliary device, wherein the upgrade information includes upgrade sequence information of at least one sub-upgrade package, the at least one sub-upgrade package is obtained by the auxiliary device dividing the upgrade package, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is smaller than or equal to the storage size of the terminal device;
[0016] The upgrade module is used to obtain the sub-upgrade package from the auxiliary device based on the upgrade sequence information and perform multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
[0017] In a fourth aspect, an auxiliary device provided in an embodiment of the present application includes:
[0018] a segmentation module, configured to segment the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, wherein the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device;
[0019] A generating module, configured to determine the order of the at least one sub-upgrade package, obtain upgrade order information, generate upgrade information based on the upgrade order information, and send the upgrade information to the terminal device;
[0020] A transceiver module is used to receive indexes from the terminal device multiple times, and send a sub-upgrade package corresponding to the index to the terminal device based on the index until at least one sub-upgrade package is sent, wherein the index is determined by the terminal device based on the upgrade information.
[0021] In a fifth aspect, an electronic device provided in an embodiment of the present application comprises a processor, a memory and a computer program or instructions stored on the memory, wherein the processor executes the computer program or instructions to implement the steps in the method designed in the first aspect or the second aspect above.
[0022] In a sixth aspect, a computer-readable storage medium is provided for an embodiment of the present application, wherein a computer program or instruction is stored therein, and when the computer program or instruction is executed, the steps in the method designed in the first aspect or the second aspect are implemented. For example, the computer program or instruction is executed by a processor.
[0023] In a seventh aspect, a computer program product provided by an embodiment of the present application includes a computer program or an instruction, wherein when the computer program or the instruction is executed, the steps in the method designed in the first aspect or the second aspect are executed. For example, the computer program or the instruction is executed by a processor.
[0024] The beneficial effects brought about by the technical solutions of the second to seventh aspects can be referred to the technical effects brought about by the technical solution of the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] In order to more clearly illustrate the technical solutions in the implementation modes of the present application, the drawings required for use in the description of the implementation modes will be briefly introduced below. Obviously, the drawings described below are some implementation modes of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0026] Figure 1A schematic diagram of an upgrade system provided for an embodiment of the present application;
[0027] Figure 2 A flowchart of an upgrade method provided for an implementation method of the present application;
[0028] Figure 3 A schematic diagram of a process flow of an i-th upgrade process provided in an embodiment of the present application;
[0029] Figure 4 A schematic diagram of another process flow of the i-th upgrade process provided in an embodiment of the present application;
[0030] Figure 5 A schematic diagram of a terminal device provided in an embodiment of the present application;
[0031] Figure 6 A schematic diagram of an auxiliary device provided for an embodiment of the present application;
[0032] Figure 7 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0033] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0034] It should be understood that the terms "first", "second", etc. involved in the embodiments of the present application are used to distinguish different objects rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, software, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may also include steps or units that are not listed, or may also include other steps or units inherent to these processes, methods, products, or devices.
[0035] The "implementation method" involved in the embodiments of the present application means that the specific features, structures or characteristics described in conjunction with the implementation method may be included in at least one implementation method of the present application. The appearance of this phrase in various places in the specification does not necessarily refer to the same implementation method, nor is it an independent or alternative implementation method that is mutually exclusive with other implementation methods. It is explicitly and implicitly understood by those skilled in the art that the implementation methods described herein may be combined with other implementation methods.
[0036] The “and / or” in the implementation manner of the present application describes the association relationship of the associated objects, indicating that three types of relationships may exist.
[0037] In the implementation manner of the present application, the symbol " / " can indicate that the previously associated objects are in an "or" relationship.
[0038] "At least one item" or similar expressions in the embodiments of the present application refers to any combination of these items, including any combination of single items or plural items, and refers to one or more, and multiple refers to two or more.
[0039] In the embodiments of the present application, "higher than" can be expressed as the same concept as "greater than", "lower than" can be expressed as the same concept as "less than", "not lower than" can be expressed as the same concept as "higher than or equal to" or "greater than or equal to", and "not higher than" can be expressed as the same concept as "lower than or equal to" or "less than or equal to". In the present application, for the same scheme, "equal to" can be used in conjunction with "less than", and can also be used in conjunction with "greater than", but not used in conjunction with "less than" and "greater than" at the same time. When "equal to" is used in conjunction with "less than", it is applicable to the technical scheme adopted by "less than". When "equal to" is used in conjunction with "greater than", it is applicable to the technical scheme adopted by "greater than".
[0040] In the embodiments of the present application, the terms "of", "corresponding / relevant", "corresponding", "indicated", "associated", etc. may be used interchangeably.
[0041] In the implementation manner of this application, the words "associated", "corresponding", "corresponding", "is", "of", "for", "belonging to", "as", and "regarded as" can sometimes be used interchangeably.
[0042] The "connection" in the embodiments of the present application refers to various connection methods such as direct connection or indirect connection to achieve communication between devices, and there is no limitation on this.
[0043] The "network" in the implementation manner of the present application can be expressed as the same concept as the "system", and the communication system is the communication network.
[0044] The following is an explanation of the relevant contents, concepts, meanings, technical issues, technical solutions and beneficial effects involved in the implementation of the present application.
[0045] First, see Figure 1 , Figure 1 Schematic diagram of an upgrade system proposed in the embodiment of the present application. Figure 1As shown, the model training system may include an auxiliary device, a terminal device and a server.
[0046] In this embodiment, the upgrade package of the terminal device will be transmitted to the server, and the auxiliary device can obtain the version number of the upgrade package in the server, and determine whether the terminal device needs to be upgraded based on the version number of the upgrade package and the current version number of the terminal device. When it is determined that the terminal device needs to be upgraded, the auxiliary device obtains the upgrade package from the server, and when the data size of the upgrade package is larger than the storage size of the terminal device, the upgrade package is divided to obtain at least one sub-upgrade package whose data size is smaller than or equal to the storage size of the terminal device. Then, the auxiliary device generates upgrade information including upgrade sequence information of at least one sub-upgrade package, and transmits the upgrade information to the terminal device. After receiving the upgrade information, the terminal device starts the upgrade process, and obtains at least one sub-upgrade package from the auxiliary device in sequence based on the upgrade information for upgrading.
[0047] Understandably, Figure 1 The forms and quantities of the auxiliary devices, terminal devices and servers shown in the figure are for example only and do not constitute a limitation on the implementation modes of the present application.
[0048] In this embodiment, the auxiliary device may be a device with a communication function, which may be called a terminal, user equipment (UE), mobile station (MS), mobile terminal (MT), access terminal equipment, vehicle-mounted terminal equipment, industrial control terminal equipment, UE unit, UE station, mobile station, remote station, remote terminal equipment, mobile equipment, UE terminal equipment, wireless communication equipment, UE agent or UE device, etc. The processing device may be fixed or mobile. It should be noted that the auxiliary device may support at least one wireless communication technology, such as LTE, new radio (NR), wideband code division multiple access (WCDMA), etc. For example, the auxiliary device can be a mobile phone, a tablet computer (pad), a desktop computer, a laptop computer, an all-in-one computer, a vehicle-mounted terminal, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in self driving, a wireless terminal in remote medical surgery, a wireless terminal in a smart grid, a wireless terminal in transportation safety, a wireless terminal in a smart city, a wireless terminal in a smart home, a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a wearable device, a terminal device in a future mobile communication network, or a terminal device in a future evolved public mobile land network (PLMN), etc. In some embodiments of the present application, the auxiliary device may also be a device with a transceiver function, such as a chip system, wherein the chip system may include a chip and may also include other discrete devices.
[0049] In this embodiment, the terminal device may be an automated machine, such as a grass unloading device, a grass mowing device, a printing device, etc. Taking the grass unloading device as an example, the grass unloading device may include a running wheel, a grass mowing device, a grass collecting device, and a communication component, wherein the running wheel is used to drive the grass unloading device to move, the grass mowing device is used to cut grass, the grass collecting device is used to collect grass clippings cut by the grass mowing device, and the communication component is used to communicate with external devices such as auxiliary devices, and then send requests and receive instructions.
[0050] In this embodiment, the server can be an independent server or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms. This application does not make specific limitations on this.
[0051] In this embodiment, the server may also be a memory that provides data storage services, such as: a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, and this application does not make any specific limitations on this.
[0052] See also Figure 2 , Figure 2 A schematic diagram of a process for upgrading a method proposed in the embodiment of the present application, which is applied to Figure 1 The upgrade system shown, such as Figure 2 As shown, the method includes:
[0053] 201: The auxiliary device divides the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package.
[0054] In this embodiment, the auxiliary device can be a device that can communicate over the Internet, such as a mobile phone, a computer, or a tablet computer. Therefore, when a new version of the terminal device is released, the auxiliary device can access the server that releases the update to obtain the upgrade package of the new version. Specifically, when the terminal device accesses the server, it can obtain the first version number of the latest upgrade package of the terminal device in the server, and compare the first version number with the current second version number of the terminal device. If the second version number is lower than the first version number, it means that the current version of the terminal device is lower than the version corresponding to the latest upgrade package on the server, and the terminal device can be upgraded. At this time, the auxiliary device obtains the upgrade package from the server.
[0055] It should be noted that the auxiliary device and the terminal device can communicate via Bluetooth, and then obtain the current second version number of the terminal device. The auxiliary device can access the server when the user issues an update query instruction, and when an upgrade package that meets the above requirements is found, it obtains the upgrade package that meets the above requirements. Alternatively, the server can be cyclically accessed according to a preset period, and when an upgrade package that meets the above requirements is found, an inquiry message is sent to the user to inquire whether to upgrade the terminal device. After the user confirms the upgrade, the upgrade package that meets the above requirements is obtained.
[0056] In this embodiment, after the auxiliary device obtains the upgrade package, it compares the data size of the upgrade package with the storage size of the terminal device, and the storage size can also be obtained when the auxiliary device communicates with the terminal device via Bluetooth. If the data size of the upgrade package is less than or equal to the storage size of the terminal device, the upgrade package is directly sent to the terminal device, so that the terminal device is upgraded based on the upgrade package.
[0057] In this embodiment, if the data size of the upgrade package is larger than the storage size of the terminal device, the auxiliary device will split the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package. Specifically, the data size of each sub-upgrade package obtained by segmentation is less than or equal to the storage size of the terminal device, and then the terminal device can obtain a complete sub-upgrade package from the auxiliary device each time for upgrading.
[0058] For example, if the data size of the upgrade package is 10mb and the storage size of the terminal device is 3mb, the upgrade package can be divided into 4 sub-upgrade packages, each of which has a data size of 2.5mb, or the data size of the first 3 sub-upgrade packages is 3mb, and the data size of the last sub-upgrade package is 1mb, etc. Of course, it can also be divided into 5, 6 or more sub-upgrade packages, and the specific number of divisions can be determined based on the actual usage scenario, and this application does not limit this.
[0059] 202: The auxiliary device determines the sequence of at least one sub-upgrade package and obtains upgrade sequence information.
[0060] In this embodiment, the order of at least one sub-upgrade package obtained by segmentation can be determined based on the importance of each function or module in this upgrade. Specifically, the sub-upgrade package corresponding to the most important function or module can be placed at the front of the upgrade order, and then the sub-upgrade packages corresponding to each function can be sorted in descending order based on the importance of each function or module to obtain the upgrade order information.
[0061] Using the above 10mb upgrade package example, it is divided into 4 sub-upgrade packages: sub-upgrade package A, sub-upgrade package B, sub-upgrade package C, and sub-upgrade package D. After sorting, the order obtained is: sub-upgrade package C, sub-upgrade package B, sub-upgrade package D, and sub-upgrade package A. Then, a sequence number is assigned to each sub-upgrade package in order to obtain the upgrade sequence information. For example, the upgrade sequence information can be as follows:
[0062] Serial number: 1, data: sub-upgrade package C; Serial number: 2, data: sub-upgrade package B; Serial number: 3, data: sub-upgrade package D; Serial number: 4, data: sub-upgrade package A.
[0063] Of course, the order of at least one sub-upgrade package can also be determined based on other methods, for example, the order of at least one sub-upgrade package obtained by segmentation can be determined based on the user's interest in the functions or modules in this upgrade, etc. This application does not impose any restrictions on this.
[0064] 203: The auxiliary device generates upgrade information based on the upgrade sequence information, and sends the upgrade information to the terminal device.
[0065] In this implementation, the upgrade information may also include other information such as verification information, and this application does not impose any restrictions on this.
[0066] 204: The terminal device obtains the sub-upgrade package from the auxiliary device based on the upgrade sequence information and performs multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
[0067] In this embodiment, if Figure 3 As shown, the i-th upgrade process may include the following steps:
[0068] 301: The terminal device determines the index Si of the sub-upgrade package Ai.
[0069] In this embodiment, the sub-upgrade package Ai is the sub-upgrade package obtained from the auxiliary device during the i-1th upgrade process, and i is an integer greater than or equal to 1. Specifically, if i=1, this is the first upgrade process, and there is no 0th upgrade process. At this time, the first sub-upgrade package will be obtained based on the upgrade sequence information as the sub-upgrade package for this upgrade. When i=2, the index of the sub-upgrade package obtained from the auxiliary device during the first upgrade process is obtained as index S2. Similarly, when i=3, the index of the sub-upgrade package obtained from the auxiliary device during the second upgrade process is obtained as index S3.
[0070] 302: The terminal device determines the index Si+1 of the sub-upgrade package Ai+1 based on the index Si and the upgrade sequence information.
[0071] In this implementation, the index next to the index Si can be determined based on the upgrade sequence information as the index Si+1 of the sub-upgrade package Ai+1.
[0072] 303: The terminal device sends the index Si+1 to the auxiliary device.
[0073] In this embodiment, the terminal device sends the index Si+1 to the auxiliary device, and accordingly, the auxiliary device receives the index Si+1 and sends the sub-upgrade package Ai+1 corresponding to the index Si+1 to the terminal device. After receiving the sub-upgrade package Ai+1, the terminal device verifies the sub-upgrade package Ai+1 to determine its integrity and legitimacy.
[0074] Exemplarily, for integrity verification, the auxiliary device will synchronously send the verification code and signature of the sub-upgrade package Ai+1 when sending the sub-upgrade package Ai+1. The verification code can be a verification code encrypted based on Message Digest Algorithm 5 (MD5). After receiving the sub-upgrade package Ai+1, the verification code and the signature, the terminal device will calculate a new verification code based on the sub-upgrade package Ai+1 and the signature, and compare it with the received verification code. When the two verification codes are the same, it indicates that the sub-upgrade package Ai+1 has passed the verification. Otherwise, the terminal device is notified to retransmit the sub-upgrade package Ai+1. Of course, other integrity verification methods in the art can be applied to the present application, and the present application does not limit this.
[0075] In this implementation, the legitimacy verification may be performed through identity authentication, cyclic redundancy check (CRC), etc., and this application does not impose any limitation on this.
[0076] 304: The terminal device performs an upgrade process on the terminal device based on the sub-upgrade package Ai+1.
[0077] In this embodiment, after the upgrade of sub-upgrade package Ai+1 is completed, the sub-upgrade package Ai+1 will be deleted to release the occupied space, and the i+1th upgrade process will be started until all sub-upgrade packages are obtained and the upgrade is completed.
[0078] In this embodiment, if Figure 4 As shown, another step of the i-th upgrade process is provided, including:
[0079] 401: The terminal device performs an upgrade process on the terminal device based on the sub-upgrade package Ai.
[0080] In this embodiment, the sub-upgrade package Ai is the sub-upgrade package used for this upgrade. The method for obtaining the sub-upgrade package Ai+1 can refer to the method for obtaining the sub-upgrade package Ai+1 in steps 301-303, which will not be repeated here.
[0081] 402: The terminal device determines the index Si of the sub-upgrade package Ai.
[0082] 403: The terminal device determines the index Si+1 of the sub-upgrade package Ai+1 based on the index Si and the upgrade sequence information.
[0083] 404: The terminal device sends the index Si+1 to the auxiliary device.
[0084] In this embodiment, the terminal device sends the index Si+1 to the auxiliary device, and accordingly, the auxiliary device receives the index Si+1 and sends the sub-upgrade package Ai+1 corresponding to the index Si+1 to the terminal device. Similarly, after receiving the sub-upgrade package Ai+1, the terminal device will verify the sub-upgrade package Ai+1 to determine its integrity and legitimacy.
[0085] In this implementation, while the terminal device is using the sub-upgrade package Ai for upgrading, it can also obtain and verify the sub-upgrade package Ai+1 required for the i+1th upgrade. After the upgrade of the sub-upgrade package Ai is completed, the obtained sub-upgrade package Ai+1 can be directly used for the i+1th upgrade, further improving the overall upgrade efficiency.
[0086] In summary, the method receives upgrade information from an auxiliary device, and the upgrade information includes upgrade sequence information of at least one sub-upgrade package, and the at least one sub-upgrade package is obtained after the auxiliary device divides the upgrade package. Among them, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device. Then the terminal device can sequentially obtain the sub-upgrade package from the auxiliary device based on the upgrade sequence information for multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device. Thus, the upgrade package with a larger data size is split into at least one sub-upgrade package by the auxiliary device. Since the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device, the terminal device can then obtain a complete sub-upgrade package for upgrading. Thus, the terminal device can complete the upgrade by sequentially obtaining at least one sub-upgrade package. Then the problem of upgrade failure caused by the upgrade package being too large and the device being unable to download the complete upgrade package is solved. In addition, the auxiliary device communicates with the terminal device via Bluetooth, and even if the terminal device is in a networkless environment or the networking function is damaged, the upgrade can be completed through the terminal device, further broadening the applicable scenarios of the terminal device.
[0087] The above mainly introduces the scheme of the implementation method of the present application from the perspective of the method side. It is understandable that in order to realize the above functions, the terminal device includes a hardware structure and / or software module corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the implementation method disclosed in this article, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware 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 implementation should not be considered to be beyond the scope of this application.
[0088] The implementation mode of the present application can divide the functional units of the terminal device according to the above method example. For example, each functional unit can be divided according to each function, or two or more functions can be integrated into one processing unit. The above integrated unit can be implemented in the form of hardware or in the form of a software program module. It should be noted that the division of units in the implementation mode of the present application is schematic and is only a logical function division, and there may be other division methods in actual implementation.
[0089] In the case of an integrated unit, Figure 5 The terminal device 500 includes a receiving module 501 and an upgrading module 502 .
[0090] In this implementation, the receiving module 501 and the upgrading module 502 may be a module unit for receiving and processing signals, information, etc. or determining a monitoring mechanism, and there is no specific limitation on this.
[0091] In this embodiment, the terminal device 500 may further include a storage unit for storing computer program codes or instructions executed by the terminal device 500. The storage unit may be a memory.
[0092] In this embodiment, the terminal device 500 may be a chip or a chip module.
[0093] In this embodiment, the receiving module 501 and the upgrading module 502 may be integrated in a communication unit, wherein the communication unit may be a communication interface, a transceiver, a transceiver circuit, and the like.
[0094] In this embodiment, the receiving module 501 and the upgrading module 502 may be integrated in a processing unit.
[0095] It should be noted that the processing unit can be a processor or a controller, for example, a baseband processor, a baseband chip, a central processing unit (CPU), a general processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. The processing unit can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of DSPs and microprocessors, etc.
[0096] In this embodiment, the terminal device 500 is used to execute any step executed by the terminal device / chip / chip module, etc. in the above method embodiment.
[0097] In specific implementation, the receiving module 501 and the upgrading module 502 are used to execute any step in the above method implementation, and when executing actions such as sending, other units can be selectively called to complete corresponding operations.
[0098] The receiving module 501 is configured to receive upgrade information from an auxiliary device, wherein the upgrade information includes upgrade sequence information of at least one sub-upgrade package, the at least one sub-upgrade package is obtained by the auxiliary device dividing the upgrade package, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is smaller than or equal to the storage size of the terminal device;
[0099] The upgrade module 502 is used to obtain the sub-upgrade package from the auxiliary device based on the upgrade sequence information and perform multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
[0100] In this implementation, in the i-th upgrade process, the upgrade module 502 is specifically used to:
[0101] Determine an index Si of a sub-upgrade package Ai, where the sub-upgrade package Ai is a sub-upgrade package obtained from the auxiliary device during an i-1th upgrade process, and i is an integer greater than or equal to 1;
[0102] Based on the index Si and the upgrade sequence information, determine the index Si+1 of the sub-upgrade package Ai+1;
[0103] Sending the index Si+1 to the auxiliary device to obtain the sub-upgrade package Ai+1 from the auxiliary device;
[0104] The terminal device is upgraded based on the sub-upgrade package Ai+1.
[0105] In this implementation, in the i-th upgrade process, the upgrade module 502 is specifically used to:
[0106] Performing an upgrade process on the terminal device based on the sub-upgrade package Ai, where i is an integer greater than or equal to 1;
[0107] Determine the index Si of the sub-upgrade package Ai;
[0108] Based on the index Si and the upgrade sequence information, determine the index Si+1 of the sub-upgrade package Ai+1;
[0109] The index Si+1 is sent to the auxiliary device to obtain the sub-upgrade package Ai+1 from the auxiliary device.
[0110] In this implementation, in determining the index Si+1 of the sub-upgrade package Ai+1 based on the index Si and the upgrade sequence information, the upgrade module 502 is specifically configured to:
[0111] Based on the index Si, the next index of the index Si is determined in the upgrade sequence information as the index Si+1 of the sub-upgrade package Ai+1.
[0112] In the case of an integrated unit, Figure 6 The auxiliary device 600 includes a segmentation module 601 , a generation module 602 and a transceiver module 603 .
[0113] In this implementation, the segmentation module 601, the generation module 602 and the transceiver module 603 may be a module unit for receiving and processing signals, information, etc. or determining a monitoring mechanism, and there is no specific limitation on this.
[0114] In this embodiment, the auxiliary device 600 may further include a storage unit for storing computer program codes or instructions executed by the auxiliary device 600. The storage unit may be a memory.
[0115] In this embodiment, the auxiliary device 600 may be a chip or a chip module.
[0116] In this embodiment, the segmentation module 601, the generation module 602 and the transceiver module 603 may be integrated in a communication unit, wherein the communication unit may be a communication interface, a transceiver, a transceiver circuit, and the like.
[0117] In this implementation, the segmentation module 601, the generation module 602 and the transceiver module 603 may be integrated into a processing unit.
[0118] It should be noted that the processing unit can be a processor or a controller, for example, a baseband processor, a baseband chip, a central processing unit (CPU), a general processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. The processing unit can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of DSPs and microprocessors, etc.
[0119] In this embodiment, the auxiliary device 600 is used to execute any step executed by the terminal device / chip / chip module, etc. in the above method embodiment.
[0120] In specific implementation, the segmentation module 601, the generation module 602 and the transceiver module 603 are used to perform any step in the above method implementation, and when performing actions such as sending, other units can be selectively called to complete corresponding operations.
[0121] A segmentation module 601 is used to segment the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, wherein the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device;
[0122] A generating module 602 is used to determine the order of the at least one sub-upgrade package, obtain upgrade sequence information, generate upgrade information based on the upgrade sequence information, and send the upgrade information to the terminal device;
[0123] The transceiver module 603 is used to receive indexes from the terminal device multiple times, and send the sub-upgrade package corresponding to the index to the terminal device based on the index until at least one sub-upgrade package is sent. The index is determined by the terminal device based on the upgrade information.
[0124] In this embodiment, before the upgrade package is segmented based on the storage size of the terminal device to obtain at least one sub-upgrade package, the segmentation module 601 is further used to:
[0125] Determine a first version number of the upgrade package;
[0126] Receiving a current second version number of the terminal device from the terminal device;
[0127] When the second version number is lower than the first version number, the upgrade package is obtained.
[0128] See also Figure 7 , Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. Figure 7 As shown, the electronic device 700 includes a processor 701 and a memory 702. The processors 701 and 702 are connected via a bus 703. The memory 702 is used to store computer programs or instructions, and data, and can transmit the data stored in the memory 702 to the processor 701.
[0129] The processor 701 is used to read the computer program in the memory 702 and perform the following operations:
[0130] receiving upgrade information from the auxiliary device, wherein the upgrade information includes upgrade sequence information of at least one sub-upgrade package, the at least one sub-upgrade package is obtained by the auxiliary device dividing the upgrade package, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is smaller than or equal to the storage size of the terminal device;
[0131] Based on the upgrade sequence information, a sub-upgrade package is obtained from the auxiliary device to perform multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
[0132] Alternatively, do the following:
[0133] Splitting the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, wherein the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device;
[0134] Determining the order of the at least one sub-upgrade package to obtain upgrade order information;
[0135] Generate upgrade information based on the upgrade sequence information, and send the upgrade information to the terminal device;
[0136] Indexes are received from the terminal device multiple times, and sub-upgrade packages corresponding to the indexes are sent to the terminal device based on the indexes until at least one sub-upgrade package is sent, wherein the indexes are determined by the terminal device based on the upgrade information.
[0137] The above mainly introduces the scheme of the implementation method of the present application from the perspective of the execution process on the method side. It is understandable that, in order to realize the above functions, the electronic device 700 includes a hardware structure and / or software module corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the implementation method provided in this article, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0138] The embodiment of the present application also provides a computer-readable storage medium, which stores a computer program or instruction. When the computer program or instruction is executed by a processor, it implements part or all of the steps of any one of the grass unloading methods recorded in the above method embodiments.
[0139] The present application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute part or all of the steps of any one of the grass unloading methods described in the above method embodiments.
[0140] It should be noted that, for the sake of simplicity, the aforementioned method implementations are all described as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the implementations described in the specification are all optional implementations, and the actions and modules involved are not necessarily required by the present application.
[0141] In the above-mentioned embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0142] In the several embodiments provided in this application, it should be understood that the disclosed device can be implemented in other ways. For example, the device implementation described above is only schematic, such as the division of the units, which is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of the device or unit can be electrical or other forms.
[0143] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0144] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit may be implemented in the form of hardware or in the form of a software program module.
[0145] If the integrated unit is implemented in the form of a software program module and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, which is stored in a memory and includes several instructions for a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned memory includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.
[0146] A person skilled in the art may understand that all or part of the steps in the various methods of the above-mentioned embodiments may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable memory, and the memory may include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0147] The above is a detailed introduction to the implementation methods of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above implementation methods is only used to help understand the method and core idea of the present application. At the same time, for general technical personnel in this field, according to the idea of the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. An upgrading method, characterized in that: The method is applied to a terminal device, and the method comprises: receiving upgrade information from the auxiliary device, wherein the upgrade information includes upgrade sequence information of at least one sub-upgrade package, the at least one sub-upgrade package is obtained by the auxiliary device dividing the upgrade package, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is smaller than or equal to the storage size of the terminal device; Based on the upgrade sequence information, a sub-upgrade package is obtained from the auxiliary device to perform multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
2. The method according to claim 1, characterized in that The i-th upgrade process includes: Determine an index Si of a sub-upgrade package Ai, where the sub-upgrade package Ai is a sub-upgrade package obtained from the auxiliary device during an i-1th upgrade process, and i is an integer greater than or equal to 1; Based on the index Si and the upgrade sequence information, determine the index Si+1 of the sub-upgrade package Ai+1; Sending the index Si+1 to the auxiliary device to obtain the sub-upgrade package Ai+1 from the auxiliary device; The terminal device is upgraded based on the sub-upgrade package Ai+1.
3. The method according to claim 1, characterized in that The i-th upgrade process includes: Performing an upgrade process on the terminal device based on the sub-upgrade package Ai, where i is an integer greater than or equal to 1; Determine the index Si of the sub-upgrade package Ai; Based on the index Si and the upgrade sequence information, determine the index Si+1 of the sub-upgrade package Ai+1; The index Si+1 is sent to the auxiliary device to obtain the sub-upgrade package Ai+1 from the auxiliary device.
4. The method according to claim 2 or 3, characterized in that: The determining, based on the index Si and the upgrade sequence information, the index Si+1 of the sub-upgrade package Ai+1 comprises: Based on the index Si, the next index of the index Si is determined in the upgrade sequence information as the index Si+1 of the sub-upgrade package Ai+1.
5. An upgrading method, characterized in that: The method is applied to an auxiliary device, and the method comprises: Splitting the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, wherein the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device; Determining the order of the at least one sub-upgrade package to obtain upgrade order information; Generate upgrade information based on the upgrade sequence information, and send the upgrade information to the terminal device; Indexes are received from the terminal device multiple times, and sub-upgrade packages corresponding to the indexes are sent to the terminal device based on the indexes until at least one sub-upgrade package is sent, wherein the indexes are determined by the terminal device based on the upgrade information.
6. The method according to claim 5, characterized in that: Before dividing the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, the method further includes: Determine a first version number of the upgrade package; Receiving a current second version number of the terminal device from the terminal device; When the second version number is lower than the first version number, the upgrade package is obtained.
7. A terminal device, characterized in that: The device comprises: a receiving module, configured to receive upgrade information from an auxiliary device, wherein the upgrade information includes upgrade sequence information of at least one sub-upgrade package, the at least one sub-upgrade package is obtained by the auxiliary device dividing the upgrade package, the data size of the upgrade package is larger than the storage size of the terminal device, and the data size of each sub-upgrade package is smaller than or equal to the storage size of the terminal device; The upgrade module is used to obtain the sub-upgrade package from the auxiliary device based on the upgrade sequence information and perform multiple upgrade processes until at least one sub-upgrade package is obtained to complete the upgrade of the terminal device.
8. An auxiliary device, characterized in that: The auxiliary equipment includes: a segmentation module, configured to segment the upgrade package based on the storage size of the terminal device to obtain at least one sub-upgrade package, wherein the data size of each sub-upgrade package is less than or equal to the storage size of the terminal device; A generating module, configured to determine the order of the at least one sub-upgrade package, obtain upgrade order information, generate upgrade information based on the upgrade order information, and send the upgrade information to the terminal device; A transceiver module is used to receive indexes from the terminal device multiple times, and send a sub-upgrade package corresponding to the index to the terminal device based on the index until at least one sub-upgrade package is sent, wherein the index is determined by the terminal device based on the upgrade information.
9. An electronic device comprising a processor, a memory and a computer program or instruction stored in the memory, characterized in that: The processor executes the computer program or instructions to implement the steps of the method according to any one of claims 1 to 6.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program or instructions, and when the computer program or instructions are executed, the steps of the method according to any one of claims 1 to 6 are performed.