CN117991939A - File downloading method and related device - Google Patents
File downloading method and related device Download PDFInfo
- Publication number
- CN117991939A CN117991939A CN202211379154.7A CN202211379154A CN117991939A CN 117991939 A CN117991939 A CN 117991939A CN 202211379154 A CN202211379154 A CN 202211379154A CN 117991939 A CN117991939 A CN 117991939A
- Authority
- CN
- China
- Prior art keywords
- terminal
- target file
- command
- download
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 117
- 230000004044 response Effects 0.000 claims description 55
- 230000005540 biological transmission Effects 0.000 claims description 30
- 230000010354 integration Effects 0.000 claims description 24
- 238000004891 communication Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 description 25
- 238000007726 management method Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 11
- 230000009471 action Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000010295 mobile communication Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
A file downloading method and related device are provided, the method includes: the first terminal displays a first interface, and the first interface displays a download notification, wherein the download notification indicates a user to download the target file; responding to a first operation of a user, and sending a first downloading command to the second terminal, wherein the first downloading command is used for indicating the second terminal to download the target file; displaying a second interface under the condition that the available storage space of the second terminal is smaller than the storage space required by storing the target file, and displaying a first notification by the second interface; and responding to a second operation of the user, sending a second downloading command to the third terminal, wherein the second downloading command is used for indicating the third terminal to download a second part of the target file, the first part of the target file is stored in the second terminal, and the second part of the target file is stored in the third terminal.
Description
Technical Field
The present application relates to the field of terminal technologies, and in particular, to a file downloading method and a related device.
Background
With the increasing popularity of intelligent terminals, file downloading and storage becomes a common scenario, and currently, if a terminal a receives a message for transmitting a file, but a user wants to store the file on a terminal B, the user needs to download the file on the terminal a and forward the file to the terminal B, and this method wastes the resources of the terminal a, such as transmission resources, storage resources, and the like.
It is therefore desirable to provide a file downloading method in order to reasonably utilize the resources of the terminal.
Disclosure of Invention
The application provides a file downloading method and a related device, which are used for avoiding unnecessary resources from being consumed in a file downloading scene, reasonably utilizing the resources of a terminal and improving the utilization rate of the resources.
In a first aspect, the present application provides a file downloading method, where the method may be performed by the first terminal, or may also be performed by a component (such as a chip, a system on a chip, etc.) configured in the first terminal, or may also be implemented by a logic module or software capable of implementing all or part of the functions of the first terminal, where the application is not limited to this.
Illustratively, the method includes: displaying a first interface, wherein the first interface displays a download notification, and the download notification indicates a user to download a target file; responding to a first operation of a user, and sending a first downloading command to a second terminal, wherein the first downloading command is used for indicating the second terminal to download the target file; displaying a second interface, which displays the first notification, under the condition that the available storage space of the second terminal is smaller than the storage space required for storing the target file; and responding to a second operation of the user, sending a second downloading command to the third terminal, wherein the second downloading command is used for indicating the third terminal to download a second part of the target file, the first part of the target file is stored in the second terminal, and the second part of the target file is stored in the third terminal.
In the above technical solution, the first terminal displays a download notification for indicating to download the target file, and instructs the second terminal to download the target file in response to the first operation of the user, and displays the first notification when the available storage space of the second terminal is smaller than the storage space required for storing the target file, and instructs the third terminal to download the remaining portion of the target file in response to the second operation of the user.
The first notification may be used to prompt the user that the storage space available at the second terminal is insufficient.
With reference to the first aspect, in some possible implementation manners of the first aspect, before sending, in response to a first operation by a user, a first download command to the second terminal, the method further includes: acquiring a plurality of terminals including a second terminal which are in communication connection with a first terminal; and displaying a third interface, wherein the third interface displays the plurality of terminals, and the second terminal is selected from the plurality of terminals in response to the operation of the user.
The first terminal can display a plurality of selectable terminals for storing the target file to the user through the interface, so that the user can select the terminal which wants to store the target file according to the requirement, and the user experience can be improved.
With reference to the first aspect, in some possible implementation manners of the first aspect, before displaying the first interface, the method further includes: and receiving a first message from the cloud or other terminals which are under the same local area network as the first terminal, wherein the first message is used for transmitting the target file. The first message for transmitting the target file may be from the cloud end or from another terminal that is in the same lan as the first terminal, which is not limited in the present application.
With reference to the first aspect, in some possible implementation manners of the first aspect, before displaying the second interface, the method further includes: and receiving a request message from the second terminal, wherein the request message carries the first part of information of the downloaded target file of the second terminal.
The request message carries the first part information of the target file downloaded by the second terminal, so that the first terminal can determine the size of the first part of the target file downloaded by the second terminal, or the first terminal can determine from which part of the target file another terminal is required to start downloading, for example, the first part information of the target file downloaded by the second terminal carried in the request message is 500, which indicates that the second terminal downloads a part with a length of 0 to 500.
With reference to the first aspect, in some possible implementation manners of the first aspect, the first download command carries a download address of the target file and/or a size of the target file, and the second download command carries a download address of the target file and/or a length offset of the second portion of the target file.
With reference to the first aspect, in certain possible implementation manners of the first aspect, the method further includes: receiving an integration instruction from a user in response to a third operation of the user; responding to a fourth operation of a user, and sending a first command to a fourth terminal, wherein the first command is used for instructing the fourth terminal to integrate a first part of a target file and a second part of the target file so as to obtain the target file; transmitting a first transmission command to the second terminal, wherein the first transmission command is used for instructing the second terminal to transmit a first part of the target file to the fourth terminal; and sending a second transmission command to the third terminal, wherein the second transmission command is used for instructing the third terminal to transmit the second part of the target file to the fourth terminal.
If the target files are stored in a distributed manner, in some scenarios, it may be necessary to integrate the block files of each target file to obtain the target file. For example, a scenario where the target file needs to be integrated before it can be used. As another example, the user may need to forward the target file to a scene on another terminal, etc. In the application, taking the integration of the target file by the fourth terminal as an example, in response to the selection operation of the user, the first terminal can instruct the second terminal and the third terminal to transmit part of the files of the target file stored by the first terminal and the third terminal to the fourth terminal, and send a command to the fourth terminal so as to integrate the files by the fourth terminal to obtain the target file, thereby being convenient for the user to completely use the target file.
Optionally, the first command includes any one of: an integrate command, a share command, an install command, or a play command.
Optionally, the first command includes a length offset of the first portion of the target file and a length offset of the second portion of the target file.
In a second aspect, the present application provides a file downloading method, which may be performed by the second terminal, or may also be performed by a component (such as a chip, a system on a chip, etc.) configured in the second terminal, or may also be implemented by a logic module or software capable of implementing all or part of the functions of the second terminal, which is not limited in this aspect.
Illustratively, the method includes: receiving a first downloading command from a first terminal, wherein the first downloading command is used for indicating a second terminal to download a target file; downloading a target file based on the first downloading command; and under the condition that the available storage space of the second terminal is insufficient, sending a request message to the first terminal, wherein the request message carries the first part of information of the downloaded target file of the second terminal.
In the above technical solution, after receiving the first download command of the first terminal, the second terminal starts to download the target file, but the second terminal finds that the storage space of the second terminal is insufficient in the downloading process, then sends a request to the first terminal to inform the first terminal that the first terminal has downloaded the information of the target file, such as the length, and the first terminal does not need to download the target file in the whole process, so that unnecessary resource consumption can be avoided.
With reference to the second aspect, in some possible implementations of the second aspect, the method further includes: receiving a response message from the first terminal, wherein the response message carries the identification of the third terminal and the length offset of the second part of the target file; and sending a second downloading command to the third terminal, wherein the second downloading command is used for indicating the third terminal to download a second part of the target file, the first part of the target file is stored in the second terminal, and the second part of the target file is stored in the third terminal.
When the second terminal finds that the storage space of the second terminal is insufficient, the second terminal sends a request to the first terminal, receives a response from the first terminal, indicates a third terminal for downloading the second part of the target file and the length offset of the second part of the target file, and further instructs the third terminal to download the second part of the target file, so that the problem of storage failure caused by insufficient storage space of the second terminal is solved, and the method provided by the application is beneficial to reasonably utilizing the resources of each terminal.
In a third aspect, the present application provides a file downloading method, which may be performed by the first terminal, or may also be performed by a component (such as a chip, a system on a chip, etc.) configured in the first terminal, or may also be implemented by a logic module or software capable of implementing all or part of the functions of the first terminal, which is not limited in this aspect.
Illustratively, the method includes: displaying a first interface, wherein the first interface displays a download notification, and the download notification indicates a user to download a target file; transmitting a first download command to the second terminal in response to a first operation of the user, the first download command being for instructing the second terminal to download the first portion of the target file; and sending a second downloading command to the third terminal, wherein the second downloading command is used for indicating the third terminal to download the second part of the target file.
In the above technical solution, the first terminal displays a download notification for indicating the download target file, responds to the first operation of the user, and sends the first download command to the second terminal, respectively, to indicate the second terminal to download the first portion of the target file, and sends the second download command to the third terminal, to indicate the third terminal to download the second portion of the target file.
With reference to the third aspect, in some possible implementations of the third aspect, before sending the first download command to the second terminal in response to the first operation of the user, the method further includes: acquiring a plurality of terminals including a second terminal and a third terminal which are in communication connection with a first terminal; and displaying a second interface, wherein the second interface displays the plurality of terminals, and the second terminal and the third terminal are selected from the plurality of terminals in response to the operation of the user.
The first terminal can display a plurality of selectable terminals for storing the target file to the user through the interface, so that the user can select the terminal which wants to store the target file according to the requirement, and the user experience can be improved.
With reference to the third aspect, in some possible implementations of the third aspect, before displaying the first interface, the method further includes: and receiving a first message from the cloud or other terminals which are in the same local area network with the first terminal, wherein the first message is used for transmitting the target file. The first message for transmitting the target file may be from the cloud end or from another terminal that is in the same lan as the first terminal, which is not limited in the present application.
With reference to the third aspect, in some possible implementations of the third aspect, the first download command carries a download address of the target file and/or a length offset of the first portion of the target file, and the second download command carries a download address of the target file and/or a length offset of the second portion of the target file.
With reference to the third aspect, in some possible implementations of the third aspect, the method further includes: receiving an integration instruction from a user in response to a second operation of the user; responding to a third operation of a user, and sending a first command to the fourth terminal, wherein the first command is used for indicating the fourth terminal to integrate the first part of the target file and the second part of the target file so as to obtain the target file; transmitting a first transmission command to the second terminal, wherein the first transmission command is used for indicating the second terminal to transmit a first part of the target file to the fourth terminal; and sending a second transmission command to the third terminal, wherein the second transmission command is used for instructing the third terminal to transmit the second part of the target file to the fourth terminal.
If the target files are stored in a distributed manner, in some scenarios, it may be necessary to integrate the block files of each target file to obtain the target file. For example, a scenario where the target file needs to be integrated before it can be used. As another example, the user may need to forward the target file to a scene on another terminal, etc. In the application, taking the integration of the target file by the fourth terminal as an example, in response to the selection operation of the user, the first terminal can instruct the second terminal and the third terminal to transmit part of the files of the target file stored by the first terminal and the third terminal to the fourth terminal, and send a command to the fourth terminal so as to integrate the files by the fourth terminal to obtain the target file, thereby being convenient for the user to completely use the target file.
Optionally, the first command includes any one of the following: an integrate command, a share command, an install command, or a play command.
In a fourth aspect, the present application provides a terminal, which may implement the method in any one of the possible implementation manners of the first aspect and the first aspect, or implement the method in any one of the possible implementation manners of the second aspect and the second aspect, or implement the method in any one of the possible implementation manners of the third aspect and the third aspect. The terminal comprises corresponding means for performing the above-described method. The units included in the terminal can be implemented in a software and/or hardware manner.
In a fifth aspect, the present application provides a terminal comprising a processor. The processor is coupled to the memory and operable to execute a computer program in the memory to implement the method of any one of the possible implementations of the first aspect and the first aspect, or to implement the method of any one of the possible implementations of the second aspect and the second aspect, or to implement the method of any one of the possible implementations of the third aspect and the third aspect.
Optionally, the terminal further comprises a memory.
Optionally, the terminal further comprises a communication interface, and the processor is coupled to the communication interface.
In a sixth aspect, the present application provides a computer readable storage medium having stored therein a computer program or instructions which, when executed, implement the method of any one of the possible implementations of the first aspect and the first aspect, or implement the method of any one of the possible implementations of the second aspect and the second aspect, or implement the method of any one of the possible implementations of the third aspect and the third aspect.
In a seventh aspect, the application provides a computer program product comprising instructions which, when executed, implement the method of any one of the possible implementations of the first aspect and the first aspect, or implement the method of any one of the possible implementations of the second aspect and the second aspect, or implement the method of any one of the possible implementations of the third aspect and the third aspect.
In an eighth aspect, the present application provides a chip system comprising at least one processor for supporting the implementation of the functions involved in any of the possible implementations of the first aspect and the first aspect, or for supporting the implementation of the functions involved in any of the possible implementations of the second aspect and the second aspect, or for supporting the implementation of the functions involved in any of the possible implementations of the third aspect and the third aspect, e.g. for receiving or processing data involved in the method, etc.
In one possible design, the system on a chip further includes a memory to hold program instructions and data, the memory being located either within the processor or external to the processor.
The chip system may be formed of a chip or may include a chip and other discrete devices.
It should be understood that, the fourth aspect to the eighth aspect of the present application correspond to the technical solutions of the first aspect to the third aspect of the present application, and the advantages obtained by each aspect and the corresponding possible embodiments are similar, and are not repeated.
Drawings
Fig. 1 is a schematic structural diagram of a terminal according to an embodiment of the present application;
FIG. 2 is a block diagram of a terminal software adapted to a file downloading method according to an embodiment of the present application;
FIG. 3 is a schematic view of a file downloading method according to an embodiment of the present application;
FIG. 4 is a schematic flow chart of a file downloading method according to an embodiment of the present application;
FIG. 5 is an interface schematic of a first interface provided by an embodiment of the present application;
Fig. 6 is an interface schematic diagram of a first terminal displaying a plurality of terminals according to an embodiment of the present application;
FIG. 7 is a schematic diagram of an interface with insufficient storage space according to an embodiment of the present application;
FIG. 8 is another schematic flow chart diagram of a file downloading method provided by an embodiment of the present application;
FIG. 9 is a further schematic flow chart diagram of a file downloading method provided by an embodiment of the present application;
fig. 10 is a schematic diagram of another interface where a first terminal provided in an embodiment of the present application displays a plurality of terminals;
FIG. 11 is a flowchart illustrating an integrated block file according to an embodiment of the present application;
FIG. 12 is a schematic diagram of an interface for displaying a file directory through the interface according to an embodiment of the present application;
fig. 13 is another schematic diagram of an interface for displaying a file directory through the interface according to an embodiment of the present application.
Detailed Description
The technical scheme of the application will be described below with reference to the accompanying drawings.
For the purpose of clearly describing the technical solutions of the embodiments of the present application, the following description is first made.
First, in the embodiments of the present application, the words "first", "second", etc. are used to distinguish between the same item or similar items that have substantially the same function and effect. For example, the first terminal and the second terminal are merely for distinguishing different terminals, and the order of the different terminals is not limited. It will be understood by those skilled in the art that the words "first," "second," etc. do not limit the number and location, and that the words "first," "second," etc. do not necessarily differ.
Second, in embodiments of the present application, the terms "comprises" and "comprising," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a device, system, article, or apparatus that comprises a list of modules, or units is not necessarily limited to those modules, or units that are expressly listed or inherent to such device, system, article, or unit.
The method provided by the embodiment of the application can be applied to terminals such as mobile phones, tablet computers, intelligent watches, wearable equipment, vehicle-mounted equipment, notebook computers, personal computers (personal computer, PC), ultra-mobile personal computers (UMPC), netbooks, personal digital assistants (personal DIGITAL ASSISTANT, PDA), distributed equipment and the like. The embodiment of the application does not limit the specific type of the terminal.
In addition, the method in the embodiment of the application can support the operating environments such as a hong operating system (Harmony OS), an Android operating system (Android operating system, android OS), linux, mac, iOS, a Windows operating system (Windows OS), a lightweight operating system (LiteOS) and the like. The embodiment of the present application is not limited in any way.
Illustratively, fig. 1 shows a schematic structural diagram of a terminal 100. As shown in fig. 1, the terminal 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (universal serial bus, USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, keys 190, a motor 191, an indicator 192, a camera 193, a display 194, a subscriber identity module (subscriber identification module, SIM) card interface 195, and the like. The sensor module 180 may include a pressure sensor 180A, a gyro sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
The processor 110 may include one or more processing units, such as: the processor 110 may include one or more of an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (IMAGE SIGNAL processor, ISP), a controller, a memory, a video codec, a digital signal processor (DIGITAL SIGNAL processor, DSP), a baseband processor, and a neural Network Processor (NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
Wherein the application processor outputs sound signals through the audio module 170 (e.g., speaker 170A, etc.), or displays images or video through the display screen 194.
The controller may be a neural hub and command center of the terminal 100. The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution.
A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby improving the efficiency of the system.
The processor 110 may perform different operations by executing instructions to achieve different functions. The instruction may be, for example, an instruction pre-stored in a memory before the device leaves the factory, or may be an instruction read from an Application (APP) after a user installs the APP during use, which is not limited in any way in the embodiment of the present application.
In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an integrated circuit (inter-INTEGRATED CIRCUIT, I2C) interface, an integrated circuit built-in audio (inter-INTEGRATED CIRCUIT SOUND, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous receiver transmitter (universal asynchronous receiver/transmitter, UART) interface, a mobile industry processor interface (mobile industry processor interface, MIPI), a general-purpose input/output (GPIO) interface, a SIM interface, and/or a USB interface, among others.
The USB interface 130 is an interface conforming to the USB standard specification, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, or the like. The USB interface 130 may be used to connect a charger to charge the terminal 100, or may be used to transfer data between the terminal 100 and a peripheral device. And can also be used for connecting with a headset, and playing audio through the headset. The interface may also be used to connect other terminals, such as augmented reality (augmented reality, AR) devices, etc.
It should be understood that the interfacing relationship between the modules illustrated in the present application is only illustrative and not limiting on the structure of the terminal 100. In other embodiments, the terminal 100 may also use different interfacing manners in the above embodiments, or a combination of multiple interfacing manners.
The charge management module 140 is configured to receive a charge input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charge management module 140 may receive a charging input of a wired charger through the USB interface 130. In some wireless charging embodiments, the charge management module 140 may receive wireless charging input through a wireless charging coil of the terminal 100. The charging management module 140 may also supply power to the terminal 100 through the power management module 141 while charging the battery 142.
The power management module 141 is used for connecting the battery 142, and the charge management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140 and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 may also be configured to monitor battery capacity, battery cycle number, battery health (leakage, impedance) and other parameters. In other embodiments, the power management module 141 may also be provided in the processor 110. In other embodiments, the power management module 141 and the charge management module 140 may be disposed in the same device.
The wireless communication function of the terminal 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in terminal 100 may be configured to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution including 2G/3G/4G/5G wireless communication applied to the terminal 100.
The wireless communication module 160 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (WIRELESS FIDELITY, wi-Fi) network), bluetooth, global navigation satellite system (global navigation SATELLITE SYSTEM, GNSS), frequency modulation (frequency modulation, FM), near field communication (NEAR FIELD communication, NFC) technology, infrared (IR) technology, etc., applied on the terminal 100.
In some embodiments, antenna 1 and mobile communication module 150 of terminal 100 are coupled, and antenna 2 and wireless communication module 160 are coupled, such that terminal 100 may communicate with a network and other devices via wireless communication techniques. The wireless communication techniques can include a global system for mobile communications (global system for mobile communications, GSM), a general packet radio service (GENERAL PACKET radio service, GPRS), code division multiple access (code division multiple access, CDMA), wideband code division multiple access (wide band code division multiple access, WCDMA), time division code division multiple access (time-division code division multiple access, TD-SCDMA), long term evolution (long term evolution, LTE), fifth generation (5th generation,5G) communication systems, BT, GNSS, WLAN, NFC, FM, and/or IR techniques, among others. The GNSS may include a global satellite positioning system (global positioning system, GPS), a global navigation satellite system (global navigation SATELLITE SYSTEM, GLONASS), a beidou satellite navigation system (BeiDou navigation SATELLITE SYSTEM, BDS), a quasi zenith satellite system (quasi-zenith SATELLITE SYSTEM, QZSS) and/or a satellite based augmentation system (SATELLITE BASED AUGMENTATION SYSTEMS, SBAS).
The terminal 100 may implement display functions through a GPU, a display screen 194, an application processor, and the like. The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
The display screen 194, which may also be referred to as a screen, may be used to display images, video, and the like. The display 194 may include a display panel. In some embodiments, the terminal 100 may include one or more display screens 194.
It should be appreciated that the display 194 may also include additional components. Such as a backlight board, a driving circuit, etc. Wherein the backlight may be used to provide a light source, and the display panel emits light based on the light source provided by the backlight. The driving circuit can be used for controlling the liquid crystal of the liquid crystal layer to transmit light or not transmit light.
The terminal 100 may implement photographing functions through an ISP, a camera 193, a video codec, a GPU, a display 194, an application processor, and the like.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to realize the memory capability of the extension terminal 100. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card.
The internal memory 121 may be used to store computer executable program code including instructions. The processor 110 executes various functional applications of the terminal 100 and data processing by executing instructions stored in the internal memory 121. The internal memory 121 may include a storage program area and a storage data area. The storage program area may store an application program (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system, etc. The storage data area may store data (e.g., audio data, phonebook, etc.) created during use of the terminal 100, and the like. In addition, the internal memory 121 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like.
The terminal 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playing, recording, etc.
It should be understood that the illustrated construction of the present application does not constitute a particular limitation on the terminal 100. In other embodiments, terminal 100 may include more or less components than illustrated, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The software system of the terminal 100 may employ a layered architecture, an event driven architecture, a micro-core architecture, a micro-service architecture, or a cloud architecture. The present application exemplifies the software structure of the terminal 100 by taking a hierarchical Harmony OS as an example. The application is not limited to the type of the operating system of the terminal.
Fig. 2 is a block diagram of a terminal software applicable to a file downloading method according to an embodiment of the present application.
As shown in fig. 2, the hierarchical architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Harmony OS is divided into four layers, from top to bottom, an application layer, a framework layer, a system services layer, and a kernel layer, respectively.
The application layer may comprise a series of applications. As shown in fig. 2, the application layer may include system applications and third party applications. System applications may be understood as applications that are self-contained in the system, such as cameras, gallery, calendar, conversation, map, bluetooth, video, and music applications. A third party application may be understood as a non-system application, which may be downloaded from an application store or the like.
The framework layers may include a User Interface (UI) framework, a user program framework, and a capability (Ability) framework. The framework layer provides a Java language, a C language, a C++ language, javaScript (JS) languages and other multilingual user program frameworks and Ability frameworks for the application programs of the Harmony OS, and a multilingual framework application program interface (application Program Interface, API) with various software and hardware services open to the outside; meanwhile, a multi-language UI framework such as C language, C++ language, JS language and the like is provided for the device adopting the Harmony OS.
The system services layer may include a set of system basic capability subsystems, a set of base software services subsystems, a set of enhanced software services subsystems, and a set of hardware services subsystems. The system service layer is a core capability set of the Harmony OS, and provides services for application programs through the framework layer.
The system basic capability subsystem set can be composed of subsystems such as a distributed soft bus, distributed data management, distributed task scheduling, a multi-language running time of a square boat, a public base library, multi-mode input, graphics, safety, artificial intelligence (ARTIFICIAL INTELLIGENCE, AI) and the like, and can provide basic capability for running, scheduling, migration and other operations of distributed application on Harmony OS multi-devices.
The ark runtime can provide a C language, a c++ language, a JS language multi-language runtime, and a basic system class library, and also provide a runtime for Java programs (i.e., applications or parts of the framework layer developed in Java language) that are statically built using the ark compiler.
The basic software service subsystem set may be composed of event notification, telephony, multimedia, etc., subsystems, and may provide common, generic software services for the Harmony OS.
The enhanced software service subsystem set may be composed of intelligent screen proprietary services, wearable proprietary services, internet of things (internet of things, ioT) proprietary services, etc., and may provide differentiated capability enhanced software services for different devices for the Harmony OS.
The set of hardware service subsystems may consist of subsystems of location services, biometric identification, wearable proprietary hardware services, ioT proprietary hardware services, etc., which may provide hardware services for the Harmony OS.
It should be noted that, according to deployment environments of different device forms, the basic software service subsystem set, the enhanced software service subsystem set and the hardware service subsystem set may be cut according to subsystem granularity, and each subsystem may be cut according to function granularity. The embodiment of the present application is not limited in any way.
In an embodiment of the present application, as shown in fig. 2, the application basic capability subsystem may include a distributed soft bus and distributed data management, so that the terminal has a capability of realizing that the target file provided by the present application is stored in a distributed manner.
The kernel layer may include a kernel subsystem and a driver subsystem. The Harmony OS adopts a multi-kernel design, and based on a kernel subsystem, the Harmony OS supports selecting a proper OS kernel aiming at different resource-constrained devices; the kernel abstraction layer (kernel abstract layer, KAL) provides basic kernel capabilities to upper layers, including process management/thread management, memory management, file system, network management, peripheral management, etc., by masking multi-kernel differences. The driving framework in the driving subsystem is a Harmony OS hardware ecologically open foundation, and can provide unified peripheral access capability and driving development and management framework.
It should be noted that the structures of the terminals shown in fig. 1 and 2 are only examples, and should not be construed as limiting the embodiments of the present application.
In order to facilitate understanding of the file downloading method provided by the embodiment of the present application, an application scenario suitable for the file downloading method provided by the embodiment of the present application will be described below. Understandably, the application scenario described in the embodiment of the present application is for more clearly describing the technical solution of the embodiment of the present application, and does not constitute a limitation on the technical solution provided by the embodiment of the present application.
Fig. 3 is a schematic view of a scenario suitable for the file downloading method provided in the embodiment of the present application.
As shown in fig. 3, the terminal 310 receives a message for transmitting a file from the cloud, but the user wants to store the file on the terminal 320. The terminal 310 is illustrated as a mobile phone, and the terminal 320 is illustrated as a smart screen, but the present application should not be limited thereto, and the terminal 310 and the terminal 320 may be other types of terminals as described above, for example, a tablet computer, a PC, etc. If it is desired to store a file on terminal 320, in known techniques, the file needs to be downloaded to terminal 310 and forwarded to terminal 320 via terminal 310. But this method wastes resources of the terminal 310 such as transmission resources, storage resources, etc. In addition, once the storage space available to the terminal 320 is insufficient to store the file, the storage will fail. Therefore, in the above method, the resource utilization of each terminal is not reasonable.
It should be understood that, in the scenario shown in fig. 3, the terminal 310 obtains the message for transmitting the file from the cloud, that is, the sender of the file is the cloud, but the present application should not be limited in any way. In the present application, the cloud may be replaced by another terminal, that is, the method provided by the present application may be applicable to an end-to-end scenario, in other words, the sender of the file may be a certain terminal under the same lan, which is not limited in this aspect of the present application.
In the file downloading process, in order to reasonably utilize the resources of the terminals, the application provides a file downloading method, wherein a first terminal displays a downloading notification for indicating a downloading target file, a second terminal and a third terminal are selected in response to the operation of a user, and a downloading command is respectively sent to the second terminal and the third terminal to indicate the downloading of corresponding block files.
The application also provides another file downloading method, wherein the first terminal displays a downloading notification for indicating the downloading of the target file, responds to the operation of a user, selects the second terminal and indicates the second terminal to download the target file, and displays a notification of insufficient storage space under the condition that the available storage space of the second terminal is smaller than the storage space required by storing the target file, responds to the operation of selecting the third terminal, and indicates the third terminal to download the rest part of the target file.
The file downloading method provided by the application will be described in detail below with reference to specific embodiments.
Before this, the following description is made:
First, a first block file of a target file according to an embodiment of the present application is an example of a first portion of the target file, and a second block file of the target file is an example of a second portion of the target file.
Second, in the embodiment of the present application, what operations are specifically the first operation, the second operation, the third operation, and the like of the user are not specifically limited to this, and specific operations given in the following embodiment are only examples, and do not constitute any limitation to the embodiment of the present application. The first interface, the second interface, the third interface, and the like are specific types of interfaces, and the present application is not limited thereto.
It should be understood that the embodiments shown below are described by taking interaction of respective terminals of the first terminal, the second terminal, the third terminal, etc. as an example, but this should not constitute any limitation as to the execution subject of the method. The method provided by the embodiment of the present application can be executed as long as the program recorded with the code of the method provided by the embodiment of the present application can be executed. For example, the first terminal may be replaced with a component (e.g., a chip system, etc.) disposed in the first terminal, or other functional modules capable of calling and executing a program, and the second terminal may be replaced with a component (e.g., a chip system, etc.) disposed in the second terminal, or other functional modules capable of calling and executing a program. The embodiment of the present application is not limited thereto. The first terminal may be, for example, the terminal 310 shown in fig. 3, and the second terminal may be, for example, the terminal 320 shown in fig. 3.
Fig. 4 is a schematic flowchart of a file downloading method according to an embodiment of the present application. The respective steps shown in fig. 4 will be described in detail below.
In step 401, the sending side sends a first message to the first terminal. Accordingly, the first terminal receives the first message. And after the first terminal receives the first message, displaying a first interface, and displaying a downloading notification on the first interface.
Wherein the first message is used for transmitting the target file. Target files include, for example, but are not limited to: audio and video files, application programs, installation packages, text documents (such as. Txt files,. Xml files, etc.), etc., the type of the target file is not limited by the embodiment of the application.
The sender of the first message may be a cloud (e.g. the cloud in the scenario shown in fig. 3), i.e. the first terminal receives the first message from the cloud, which is used for transmitting the target file. The sender of the first message may also be another terminal under the same local area network, i.e. the first terminal receives the first message from another terminal, the first message being used for transmitting the target file.
In the present application, the sender of the first message may be the sender of the target file, in other words, the target file may originate from the cloud or another terminal under the same local area network, which is not limited in the present application.
And after the first terminal receives the first message, displaying a downloading notification to instruct the user to download the target file. For example, a message is received on a WeChat, the message being for transmitting a text document, the underside of the text document prompting the user to download the text document, the text document not being downloaded locally although the terminal receives the message.
Alternatively, the first message may include, for example, information related to a download address of the target file, a name of the target file, and the like.
After receiving the first message from the sender, the first terminal displays a first interface, and the first interface displays a download notification, wherein the download notification is used for indicating a user to download the target file.
Fig. 5 is an interface schematic diagram of a first interface according to an embodiment of the present application.
As shown in fig. 5, after receiving the first message, the first terminal displays a first interface, on which a download notification is displayed to instruct the user to download the target file (e.g., the example of the target file in fig. 5), and the user may select an operation that is desired to be performed on the target file, such as opening, downloading, etc. For example, in response to a user selecting an operation to download a target file, the first terminal may pop up a terminal for downloading the target file through an interface for the user to select. An example of a terminal for downloading a target file, which the first terminal can select through an interface, is provided below in connection with fig. 6. The interface shown in fig. 6 is an example of a third interface, and the third interface may display a plurality of terminals including the second terminal.
Fig. 6 is an interface schematic diagram of a first terminal displaying a plurality of terminals according to an embodiment of the present application. As shown in fig. 6, the first terminal displays a plurality of terminals through an interface, wherein a) in fig. 6 and b) in fig. 6 show two forms in which the first terminal displays a plurality of terminals through a user interface.
As shown in a) of fig. 6, the first terminal displays a plurality of terminals including, for example, terminal 1, terminal 2, terminal 3, and terminal 4, each of which corresponds to a selection button, in the form of a list. The first terminal displays the plurality of terminals in the form of icons for a user to select a terminal desiring to store the target file, and in response to a click operation of an operation button corresponding to the terminal 2 in the plurality of terminals, the first terminal determines that the terminal desiring to store the target file is the terminal 2, and further sends a first download command to the terminal 2 to instruct the terminal to download the target file.
As shown in b) of fig. 6, the first terminal displays a plurality of terminals including, for example, terminal 1, terminal 2, terminal 3, and terminal 4 in the form of icons. The first terminal displays the plurality of terminals in the form of icons for the user to select the terminal desiring to store the target file, and in response to the clicking operation of the user on the icon corresponding to the terminal 2 in the plurality of terminals, the first terminal determines that the terminal desiring to store the target file is the terminal 2, and further sends a first downloading command to the terminal 2 to instruct the terminal to download the target file.
It should be understood that the two forms of displaying the plurality of terminals shown in a) in fig. 6 and b) in fig. 6 are merely examples, and should not constitute any limitation on the embodiment of the present application, and the first terminal may also display the plurality of terminals in other forms.
In step 402, in response to the user selecting the second terminal, the first terminal transmits a first download command to the second terminal. Accordingly, the second terminal receives the first download command from the first terminal. Wherein the operation of the user selecting the second terminal is an example of the first operation of the user.
Wherein the second terminal is a terminal in which the user wishes to store the target file. The first download command is used for instructing the second terminal to download the target file. The second terminal is a terminal on which the user wishes to store the above-described target file, in other words, the first terminal receives the first message for transmitting the target file, but the user wishes to store the target file on the second terminal.
Optionally, the first download command carries at least one of the following information: the download address of the target file or the size of the target file.
The download address of the target file may be used to download the target file, and the size of the target file may be used to determine whether the storage space available for the terminal may store the target file.
It should be appreciated that further parameters may be included in the first download command, including, for example, but not limited to: the type of command, the identity of the command, the sender of the command, the receiver of the command, the identity of the file, the length offset (offset), etc. In the present application, terminals can communicate using a binary interaction protocol.
An example of a first download command is as follows:
{ "action (command type)": "download",
"Opid" (identification of command is): "1612373622701",
"From (sender of command)": "first terminal",
"To (receiver of command)": "second terminal",
"FileId (identification of file)": "xxx",
"DownloadUrl (download address)": "xxxx",
"DownloadParam (download parameter is)": "xxxx (such as the size of a target file)",
"Offset (length offset)": "0"}.
The length offset may be calculated in bytes of the target file, for example, the size of the target file is 1 mega (M), and the length of the corresponding length offset is 1024 bytes.
The length offset may also be calculated as an offset of the data block. For example, an entire multimedia file may be typically divided into several data blocks, in which case the length offset may be calculated as an offset of the data blocks. For example, a length offset of 5 indicates that the download starts from block 5.
In the present application, the length shift amount may indicate the start position, or may indicate the start position and the end position, and the present application is not limited thereto. For example, a length offset of 0 in the download command indicates that the download starts from byte 0. For another example, the length offset in the download command is 0 to 500, which means that the download starts from the 0 th byte and the download starts to the 500 th byte. For convenience of description, the length offset in the embodiment of the present application will be described by taking an indication of a start position as an example.
In step 403, the second terminal downloads the target file from the sender.
And after receiving the first downloading command from the first terminal, the second terminal downloads the target file from the sender of the target file. As described above, the first download command includes the download address of the target file, and the second terminal may download the target file based on the download address in the first download command.
The downloading, by the second terminal, the target file from the sender specifically includes: the second terminal requests the sender to download the target file, and after receiving the request from the second terminal, the sender sends the target file to the second terminal, and the second terminal is stored locally.
It should be understood that during the process of downloading the target file, there may be a situation where the available storage space is insufficient (i.e., the storage space available for the second terminal may be smaller than the storage space required for storing the target file), where the second terminal continues to perform steps 404 to 407; in the case where the storage space available to the second terminal is greater than or equal to the storage space required for storing the target file (i.e., the storage space available to the second terminal is sufficient), the second terminal may directly perform step 408 without performing steps 404 to 407, i.e., the second terminal downloads the target file until the downloading is completed.
An example in which the second terminal may have a smaller storage space than the storage space required for storing the target file is given below:
Assuming that the storage space required for storing the text document "1.Txt" is 1G, but the storage space available to the second terminal is 500M, the second terminal may download a first block file (e.g., a portion of length 0 to offset) of "1.Txt", and the third terminal may download a second block file (e.g., a portion of length offset to end) of "1. Txt".
Step 404, the second terminal sends a request message to the first terminal.
The request message may be used to indicate that the storage space available for the second terminal is smaller than the storage space required for storing the file, so as to request the storage space from the first terminal. The request message carries the first part of information of the target file downloaded by the second terminal, for example, the first part of information can carry the indication information of the length of the target file which can be downloaded by the second terminal, for example, the second terminal finds that the storage space is insufficient in the downloading process, and only the part with the length of 0 to 500 can be downloaded, and the request message can carry the length offset 500, where the length offset 500 indicates the part with the length of 0 to 500 of the target file which can be downloaded by the second terminal.
For example, when the second terminal finds that the available storage space is insufficient in the process of downloading the target file, the second terminal may send a request message to the first terminal to request storage resources from the first terminal. Accordingly, the first terminal receives the request message.
Step 405, the first terminal displays the second interface, and determines the third terminal in response to the operation of the user on the second interface.
After the first terminal receives the request message, a second interface may be displayed to indicate that the available storage space of the second terminal is insufficient, and display a plurality of selectable terminals to the user. In response to a user selecting one of the plurality of terminals, the first terminal determines a third terminal for storing the remaining portion of the target file.
Fig. 7 is a schematic diagram of an interface with insufficient storage space according to an embodiment of the present application. As shown in fig. 7, after receiving the request message from the second terminal, the first terminal determines that the available storage space of the second terminal is insufficient, and then may prompt the user through the interface that the available storage space of the second terminal is insufficient, where the notification of the insufficient storage space is an example of the first notification, and the first notification may be used to prompt the user that the available storage space of the second terminal is insufficient, and then the first terminal displays other selectable terminals (e.g., the first terminal may display, on the interface, a terminal available for the user to select for storing the remaining portion of the target file) to the user, so as to perform distributed storage on the target file. For example, in response to the user selecting the third terminal, the first terminal performs step 406, i.e., transmits a response message to the second terminal to indicate the third terminal to the second terminal.
In step 406, the first terminal sends a response message to the second terminal.
After receiving the request message from the second terminal, the first terminal determines a third terminal, wherein the third terminal and the second terminal are used for carrying out distributed storage on the target file, the second terminal is used for storing a first block file of the target file, and the third terminal is used for storing a second block file of the target file. Further, the first terminal transmits a response message to the second terminal to instruct the third terminal.
Optionally, the response message may include an identifier of the third terminal and at least one of the following: the type of the command, the identity of the command, the sender of the command, the receiver of the command, etc. An example of the above-described response message is as follows:
{ "action (type of command)": "alloc (allocated space)",
"Opid (identification of command)": "1612373622701",
"From (sender of command)": "first terminal",
"To (receiver of command)": "second terminal",
"AllocdeviceId (assigned terminal)": third terminal'
"Offset (length offset)": "500"}.
Step 407, the second terminal sends a second download command to the third terminal.
And after receiving the response message from the first terminal, the second terminal sends a second downloading command to the third terminal so as to instruct the third terminal to download the second block file of the target file.
Illustratively, the second terminal finds that the available storage space is insufficient in the downloading process, if only the part of the target file with the length of 0 to 500 can be downloaded, and requests the storage resource from the first terminal, the second downloading command indicates that the third terminal downloads the part of the target file with the length of 500 to 1000.
The second download command may include, for example, a command type, an identification of the command, a sender of the command, a receiver of the command, an identification of the file, a download address of the file, a length offset (offset), and the like.
An example of the second download command is as follows:
{ "action (command type)": "download",
"Opid" (identification of command is): "1612373622701",
"From (sender of command)": "second terminal",
"To (receiver of command)": "third terminal",
"FileId (identification of file)": "xxx",
"DownloadUrl (download address)": "xxxx",
"DownloadParam (download parameter is)": "xxxx (such as the size of a target file)",
"Offset (length offset)": "500"}.
Alternatively, the first terminal may also send the second download command directly to the third terminal, that is, the second download command is sent by the first terminal, the first terminal may not send the response message to the second terminal, and the second terminal does not need to send the second download command to the third terminal.
In step 408, the third terminal downloads the remaining portion of the target file.
Illustratively, the second terminal downloads a first chunk file (e.g., a portion of length 0-offset) of the target file. And the third terminal downloads a second block file (such as a part with the length of offset-end) of the target file according to the download address and offset of the target file in the second download command.
And 409, the second terminal downloads the target file until the downloading is completed.
And if the available storage space of the second terminal is enough to store the target file, the second terminal downloads the target file until the downloading is completed.
It should be understood that the various steps in the embodiment shown in fig. 4 are merely examples, and in other embodiments, more or fewer steps may be included, as the application is not limited in this regard. For example, the method shown in fig. 4 further includes: the second terminal and the third terminal determine the size and the storage position of the storage space for storing the downloaded file in response to a setting operation of a user, and the storage space available for the second terminal is a space remaining in the defined storage space for storing the downloaded file. In addition, the order of the steps in the embodiment shown in fig. 4 is not limited in the embodiment of the present application.
Fig. 8 is another schematic flow chart of a file downloading method provided by an embodiment of the present application. The respective steps shown in fig. 8 will be described in detail below.
Step 801, a first message is sent to a first terminal. Accordingly, the first terminal receives the first message. And after the first terminal receives the first message, displaying a first interface, and displaying a downloading notification on the first interface.
In step 802, in response to a user selection on the first interface, the first terminal sends a first download command to the second terminal. Accordingly, the second terminal receives the first download command from the first terminal.
The relevant descriptions of step 801 and step 802 may be referred to the relevant descriptions of step 401 and step 402 in fig. 4, and are not repeated here.
In step 803, the second terminal determines whether the available storage space is smaller than the storage space required for storing the target file.
If the available storage space of the second terminal is greater than or equal to the storage space required for storing the target file, the second terminal executes step 804, i.e. downloads the target file until the downloading is completed; if the storage space available to the second terminal is less than the storage space required to store the target file, the second terminal performs steps 805 to 809.
The first download command may carry the size of the target file, and the second terminal may determine, according to the size of the target file, whether the available storage space is smaller than the storage space required for storing the target file.
In step 804, when the available storage space satisfies the storage space required for storing the target file, the second terminal downloads the target file from the sender.
In step 805, when the available storage space is smaller than the storage space required for storing the target file, the second terminal sends a request message to the first terminal.
The descriptions of step 804 and step 805 can be referred to the related descriptions of step 403 and step 404 in fig. 4, and will not be repeated here.
Step 806, the first terminal sends a response message to the second terminal.
The response message may include an identifier of the third terminal and at least one of the following: the type of the command, the identity of the command, the sender of the command, the receiver of the command, etc. An example of the above-described response message is as follows:
{ "action (type of command)": "alloc (allocated space)",
"Opid (identification of command)": "1612373622701",
"From (sender of command)": "first terminal",
"To (receiver of command)": "second terminal",
"AllocdeviceId (assigned terminal)": third terminal'
"Offset (length offset)": "500"}.
The response message may further carry indication information, so as to instruct the second terminal to start downloading the first block file of the target file.
In step 807, the second terminal downloads the first block file of the target file from the sender.
Step 808, the second terminal sends a second download command to the third terminal.
For a description of the second download command, reference may be made to the relevant description of step 407 in fig. 4, which is not repeated here.
In step 809, the third terminal downloads the second block file of the target file from the sender.
And if the available storage space of the second terminal is smaller than the storage space required by storing the target file, the second terminal downloads the first block file of the target file, and the third terminal downloads the second block file of the target file.
Fig. 4 is different from fig. 8 in that, in the embodiment shown in fig. 4, after receiving the first download command, the second terminal downloads the target file first, and finds that the storage space of the second terminal is insufficient in the downloading process; in the embodiment shown in fig. 8, after receiving the first download command, the second terminal first determines whether the available storage space is smaller than the storage space required for storing the target file, and then downloads the target file.
Based on the technical scheme, the first terminal displays a download notification for indicating the download target file, responds to the operation of a user, selects the second terminal and indicates the second terminal to download the target file, and displays a notification of insufficient storage space when the available storage space of the second terminal is smaller than the storage space required for storing the target file, responds to the operation of the user for selecting the third terminal and indicates the third terminal to download the rest of the target file.
Fig. 9 is a further schematic flow chart of a file downloading method provided by an embodiment of the present application.
Step 901, a sending party sends a first message to a first terminal. Accordingly, the first terminal receives the first message from the sender. And after the first terminal receives the first message, displaying a first interface, and displaying a downloading notification on the first interface.
Wherein the first message is used for transmitting the target file. The object file originates from the sender, i.e. the sender is both the sender of the first message and the sender of the object file, and the sender sends the first message to the first terminal as understood in step 401. The sender may be a cloud (e.g., a cloud in the scenario shown in fig. 3), that is, the first terminal receives a first message from the cloud, where the first message is used to transmit the target file. The sender of the target file may also be another terminal under the same local area network, where the first terminal receives a first message from another terminal, where the first message is used to transmit the target file. In addition, reference may be made to FIG. 5 for a related description of the first interface.
In step 902, the first terminal determines a terminal for storing a target file in response to an operation of a user.
In an exemplary embodiment, the first terminal may display, through an interface, a plurality of terminals and available storage spaces corresponding to the respective terminals in response to a user clicking a download operation. It will be appreciated that the first terminal may establish a connection with the above-mentioned multiple terminals (e.g., the second terminal, the third terminal, and the fourth terminal) to obtain the available storage space corresponding to each of the multiple terminals.
Optionally, the plurality of terminals displayed through the interface, for example, the second terminal, the third terminal, and the like may be a plurality of terminals recorded with the same account number, may be a plurality of terminals belonging to the same group, or may be a plurality of terminals logged in with the same Wi-Fi.
Fig. 10 is a schematic diagram of another interface of a first terminal displaying a plurality of terminals according to an embodiment of the present application. As shown in fig. 10, the first terminal displays a plurality of terminals and the available storage spaces corresponding to the terminals through an interface, for example, the available storage space of the first terminal is 50M, the available storage space of the second terminal is 60M, the available storage space of the third terminal is 30M, the available storage space of the fourth terminal is 70M, and in response to the user selecting the second terminal and the third terminal, the first terminal performs step 903 and step 904, the second terminal and the third terminal perform distributed storage on the target file, for example, the second terminal stores the first block file of the target file, and the third terminal stores the second block file of the target file.
Optionally, the user may also set the sizes of the block files stored by the second terminal and the third terminal. For example, in response to a user setting a portion of the second terminal storing a target file of length 0-offset, the third terminal storing a portion of the target file of length offset-end, the first terminal indicates to the second terminal a portion of the download target file of length 0-offset, indicating a portion of the third terminal downloading the target file of length offset-end.
In step 903, the first terminal sends a first download command to the second terminal. Accordingly, the second terminal receives the first download command from the first terminal.
The first download command may include, for example, a command type, an identification of the command, a sender of the command, a receiver of the command, an identification of the file, a download address of the file, a length offset (offset), and the like.
An example of a first download command is as follows:
{ "action (command type)": "download",
"Opid" (identification of command is): "1612373622701",
"From (sender of command)": "first terminal",
"To (receiver of command)": "second terminal",
"FileId (identification of file)": "xxx",
"DownloadUrl (download address)": "xxxx",
"DownloadParam (download parameter is)": "xxxx (such as the size of a target file)",
"Offset (length offset)": "0-500" }.
In step 904, the first terminal sends a second download command to the third terminal.
The first terminal sends a second downloading command to the third terminal to instruct the third terminal to download the second block file of the target file.
The second download command may include, for example, a command type, an identification of the command, a sender of the command, a receiver of the command, an identification of the file, a download address of the file, a length offset (offset), and the like.
An example of the second download command is as follows:
{ "action (command type)": "download",
"Opid" (identification of command is): "1612373622701",
"From (sender of command)": "first terminal",
"To (receiver of command)": "third terminal",
"FileId (identification of file)": "xxx",
"DownloadUrl (download address)": "xxxx",
"DownloadParam (download parameter is)": "xxxx (such as the size of a target file)",
"Offset (length offset)": "500-1000" }.
It can be seen that the first download command sent by the first terminal to the second terminal is similar to the second download command sent by the first terminal to the third terminal, the first download command indicating a portion of the second terminal from 0 to 500 of the download target file, and the second download command indicating a portion of the third terminal from 500 to 1000 of the download target file (end of the target file).
In step 905, the second terminal downloads the first block file of the target file.
Illustratively, the second terminal downloads the first block file (e.g., a portion of length 0-offset) of the target file based on the download address and offset of the target file in the first download command.
Step 906, the third terminal downloads the second block file of the target file.
Illustratively, the third terminal downloads the second block file (e.g., the portion of length offset-end) of the target file according to the download address and offset of the target file in the second download command.
Alternatively, in the present application, the storage space available for each terminal refers to a predefined size of storage space for storing the downloaded file. In addition, each terminal may also set in advance a location of storing the downloaded file for storing the target file.
It should be understood that the various steps in the embodiment shown in fig. 9 are merely examples, and in other embodiments, more or fewer steps may be included, as the application is not limited in this regard. In addition, the order of the steps in the embodiment shown in fig. 9 is not limited in the embodiment of the present application. For example, step 905 and step 906 may be performed simultaneously.
Based on the technical scheme, the first terminal displays a download notification for indicating the download target file, responds to the operation of a user, selects the second terminal and the third terminal, and respectively sends a download command to the second terminal and the third terminal to indicate the downloading of the corresponding block files.
It will be appreciated that if the target files are stored in a distributed manner, in some scenarios, it may be desirable to integrate the partitioned files of each target file to obtain the target file. For example, a scenario where the target file needs to be integrated before it can be used. As another example, the user may need to forward the target file to a scene on another terminal, etc. Among these, files that need to be integrated for use include, but are not limited to: audio video, applications, installation packages, etc. Documents that can be used without integration include, for example: text documents (e.g., txt files,. Xml files, etc.). In the application, taking the fourth terminal for integrating the target file as an example, the first terminal can instruct the second terminal and the third terminal to transmit the stored block files to the fourth terminal and send an integration command to the fourth terminal so that the fourth terminal integrates the block files to obtain the target file, thereby being convenient for a user to completely use the target file.
Fig. 11 is a flowchart of integrating a block file according to an embodiment of the present application. The process of integrating the blocked files to obtain the target file will be described in detail with reference to fig. 11. The fourth terminal is taken as an example of a terminal for integrating the block files.
In step 1101, the first terminal receives an integration instruction from a user.
In response to a user operation, the first terminal receives an integration instruction from the user. For example, in response to a user clicking on the integration operation, the first terminal receives an integration instruction from the user. The click integration operation described above is an example of the third operation and the second operation of the user.
In step 1102, the first terminal sends an integration command to the fourth terminal. Accordingly, the fourth terminal receives the integration command from the first terminal.
The integration command is used for indicating the fourth terminal to integrate the first block file and the second block file so as to obtain the target file. The above-mentioned integrated command is an example of the first command.
Optionally, the first command includes any one of: an integrate command, a share command, an install command, or a play command.
Optionally, the first command includes a length offset of the first portion of the target file and a length offset of the second portion of the target file.
Alternatively, the first terminal may display the file directory through an interface.
In an exemplary embodiment, the first terminal displays a file object of the object file through the interface, for example, a part of the object file is stored in the second terminal, a part of the object file is stored in the third terminal, and in response to a user selecting the fourth terminal to integrate, the first terminal sends an integration command to the fourth terminal to instruct the fourth terminal to integrate the block files, so as to obtain the object file.
Fig. 12 is a schematic diagram of an interface for displaying a file directory through the interface according to an embodiment of the present application. As shown in a) of fig. 12, a file directory is displayed on the interface of the first terminal, where the file includes a file 1, a file 2, and a file 3, and for example, a file 1 is stored in the second terminal, and for example, 40% (denoted as a first block file) of the file 1 is stored in the third terminal, and 60% (denoted as a second block file) of the file 1 is stored in the third terminal. The user may select file 1, click on an integrate, install, play, or share button, etc. (the integrate and install button is shown in the figure by way of example). In response to the user clicking the integration button, a pop-up box pops up on the interface, as shown in b) of fig. 12, and the first terminal displays a terminal for integrating the first and second divided files, which is available for the user to select. For example, in response to an operation of selecting the fourth terminal by the user, the first terminal transmits an integration command to the fourth terminal and transmits a first transmission command to the second terminal to instruct the second terminal to transmit the first block file to the fourth terminal, and the first terminal transmits a second transmission command to the third terminal to instruct the third terminal to transmit the second block file to the fourth terminal. In addition, after integrating the first block file and the second block file, as shown in c) in fig. 12, the fourth terminal may prompt the user to complete the integration through the interface, prompt the user to select a corresponding operation, such as sharing, installation, playing, viewing, and the like, and in response to the operation of selecting to play by the user, the fourth terminal may play the integrated file 1 (such as a video).
Fig. 13 is another schematic diagram of an interface for displaying a file directory through the interface according to an embodiment of the present application. As shown in a) of fig. 13, a file directory is displayed on the interface of the first terminal, where the file includes a file 1, a file 2, and a file 3, and for example, a file 1 is exemplified, for example, 40% of a target file (referred to as a first block file) is stored in the second terminal, and 60% of a target file (referred to as a second block file) is stored in the third terminal. The user may select file 1 and click on the share after integration button. In response to the user clicking the post-integration share button, as shown in b) of fig. 13, the first terminal prompts the user to select a terminal for integrating the first and second divided files. For example, in response to an operation of selecting the fourth terminal by the user, the first terminal transmits an integration command to the fourth terminal and transmits a first transmission command to the second terminal to instruct the second terminal to transmit the first block file to the fourth terminal, and the first terminal transmits a second transmission command to the third terminal to instruct the third terminal to transmit the second block file to the fourth terminal. In addition, after the fourth terminal integrates the second block file and the second block file, the sharing action can be automatically completed.
It should be understood that the interfaces shown in fig. 12 or 13 are merely examples, and should not be construed as limiting the embodiments of the present application in any way. In other embodiments, the interface may be presented in more forms, such as including more or fewer buttons, different styles as presented by different icons, etc., as the application is not limited in this regard.
In step 1103, the first terminal sends a first transmission command to the second terminal. Accordingly, the second terminal receives the first transmission command from the first terminal.
The first transmission command is used for indicating the second terminal to transmit the first block file to the fourth terminal.
Optionally, the first transmission command may carry a sender of the partitioned file, a receiver of the partitioned file, and may also carry a command type, an identifier of the command, an identifier of the file, and the like. In one example, the first transfer command is as follows:
{ "action (command type)": "transmit",
"Opid (identification of command)": "1612373622701",
"From (sender of partitioned file)": "second terminal",
"To (recipient of a blocked file)": "fourth terminal",
"FileId (identification of file)": "xxxx" }.
In step 1104, the second terminal sends the first block file of the target file to the fourth terminal.
In step 1105, the first terminal sends a second transmission command to the third terminal. Accordingly, the third terminal receives the second transmission command from the first terminal.
Optionally, the second transmission command may carry a sender of the partitioned file, a receiver of the partitioned file, and may also carry a command type, an identifier of the command, an identifier of the file, and the like. In one example, the second transfer command is as follows:
{ "action (command type)": "transmit",
"Opid (identification of command)": "1612373622701",
"From (sender of partitioned file)": "third terminal",
"To (recipient of a blocked file)": "fourth terminal",
"FileId (identification of file)": "xxxx" }.
In step 1106, the third terminal sends the second block file of the target file to the fourth terminal.
It should be understood that the steps in the embodiment shown in fig. 11 are only examples, and in other embodiments, more or fewer steps may be included, for example, if the target file is stored in the second terminal, the third terminal, and the fifth terminal in a distributed manner, the first terminal needs to send a third transmission command to the fifth terminal to instruct the fifth terminal to transmit the partitioned file stored by itself to the fourth terminal. In addition, the order of the steps in the embodiment shown in fig. 11 is not limited in the embodiment of the present application. For example, step 1102, step 1103 and step 1105 may be performed simultaneously.
It should also be understood that the fourth terminal shown in fig. 11 is only an example and should not be construed as limiting the embodiments of the present application in any way. For example, the fourth terminal and the third terminal may be the same terminal, as long as the storage space available for the fourth terminal is capable of storing the target file.
Based on the technical scheme, the first terminal can instruct the second terminal and the third terminal to send the segmented files of the self-stored target files to the fourth terminal for integration so as to obtain the integrated target files, thereby being more convenient for a user to utilize the complete target files and being beneficial to improving user experience.
The embodiments of the present application also provide a terminal comprising corresponding means for performing the steps performed by the first terminal in fig. 4, 8, 9 or 11, or comprising corresponding means for performing the steps performed by the second terminal in fig. 4, 8, 9 or 11, or comprising corresponding means for performing the steps performed by the third terminal in fig. 4, 8, 9 or 11, or comprising corresponding means for performing the steps performed by the fourth terminal in fig. 11. The units included in the terminal can be implemented in a software and/or hardware manner.
The embodiment of the present application further provides a terminal, where the terminal includes a memory and a processor, where the memory is configured to store a computer program, and the processor is configured to invoke and execute the computer program, so that the terminal performs a step performed by a first terminal in fig. 4, fig. 8, fig. 9, or fig. 11, or a step performed by a second terminal in fig. 4, fig. 8, fig. 9, or fig. 11, or a step performed by a third terminal in fig. 4, fig. 8, fig. 9, or fig. 11, or a step performed by a fourth terminal in fig. 11.
The present application also provides a chip system comprising at least one processor for implementing the functions involved in the steps performed by the first terminal in the embodiments shown in fig. 4, 8, 9 or 11, or for implementing the functions involved in the steps performed by the second terminal in the embodiments shown in fig. 4, 8, 9 or 11, or for implementing the functions involved in the steps performed by the third terminal in the embodiments shown in fig. 4, 8, 9 or 11, or for implementing the functions involved in the steps performed by the fourth terminal in the embodiments shown in fig. 11.
In one possible design, the system on a chip further includes a memory to hold program instructions and data, the memory being located either within the processor or external to the processor.
The chip system may be formed of a chip or may include a chip and other discrete devices.
The embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored, which when executed by a computer, causes the computer to perform the steps performed by the first terminal in fig. 4, 8, 9 or 11, or causes the computer to perform the steps performed by the second terminal in fig. 4, 8, 9 or 11, or causes the computer to perform the steps performed by the third terminal in fig. 4, 8, 9 or 11, or causes the computer to perform the steps performed by the fourth terminal in fig. 11.
The embodiment of the present application further provides a computer program product, which includes a computer program, when the computer program is executed, causes a computer to perform the steps performed by the first terminal in fig. 4, 8, 9 or 11, or causes the computer to perform the steps performed by the second terminal in fig. 4, 8, 9 or 11, or causes the computer to perform the steps performed by the third terminal in fig. 4, 8, 9 or 11, or causes the computer to perform the steps performed by the fourth terminal in fig. 11.
It should be appreciated that the processor in embodiments of the present application may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method embodiments may be implemented by integrated logic circuits of hardware in a processor or instructions in software form. The processor may be a general purpose processor, a digital signal processor (DIGITAL SIGNAL processor, DSP), an Application SPECIFIC INTEGRATED Circuit (ASIC), a field programmable gate array (field programmable GATE ARRAY, FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The disclosed methods, steps, and logic blocks in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present application may be embodied directly in the execution of a hardware decoding processor, or in the execution of a combination of hardware and software modules in a decoding processor. The software modules may be located in a random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, registers, etc. as well known in the art. The storage medium is located in a memory, and the processor reads the information in the memory and, in combination with its hardware, performs the steps of the above method.
It should also be appreciated that the memory in embodiments of the present application may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The nonvolatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an erasable programmable ROM (erasable PROM), an electrically erasable programmable EPROM (EEPROM), or a flash memory. The volatile memory may be random access memory (random access memory, RAM) which acts as external cache memory. By way of example, and not limitation, many forms of RAM are available, such as static random access memory (STATIC RAM, SRAM), dynamic random access memory (DYNAMIC RAM, DRAM), synchronous Dynamic Random Access Memory (SDRAM), double data rate synchronous dynamic random access memory (double DATA RATE SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (ENHANCED SDRAM, ESDRAM), synchronous link dynamic random access memory (SYNCHLINK DRAM, SLDRAM), and direct memory bus random access memory (direct rambus RAM, DR RAM). It should be noted that the memory of the systems and methods described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
The terms "unit," "module," and the like as used in this specification may be used to refer to a computer-related entity, either hardware, firmware, a combination of hardware and software, or software in execution.
Those of ordinary skill in the art will appreciate that the various illustrative logical blocks (illustrative logical block) and steps (steps) described in connection with the embodiments disclosed herein can be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application. In the several embodiments provided by the present application, it should be understood that the disclosed apparatus, device and method may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, and for example, the division of the modules is merely a logical function division, and there may be additional divisions when actually implemented, for example, multiple modules or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or modules, which may be in electrical, mechanical, or other forms.
The modules described as separate components may or may not be physically separate, and components shown as modules may or may not be physical modules, i.e., may be located in one place, or may be distributed over a plurality of network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional module in the embodiments of the present application may be integrated into one processing module, or each module may exist alone physically, or two or more units may be integrated into one module.
In the above embodiments, the functions of the respective functional modules may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions (programs). When the computer program instructions (program) are loaded and executed on a computer, the processes or functions according to the embodiments of the present application are fully or partially produced. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by a wired (e.g., coaxial cable, fiber optic, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a digital versatile disk (digital video disc, DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), or the like.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk, etc.
The foregoing is merely illustrative of the present application, and the present application is not limited thereto, and any person skilled in the art will readily recognize that variations or substitutions are within the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (20)
1. A method for downloading a file, the method being applied to a first terminal, the method comprising:
displaying a first interface, wherein the first interface displays a download notification, and the download notification indicates a user to download a target file;
responding to a first operation of the user, and sending a first downloading command to a second terminal, wherein the first downloading command is used for indicating the second terminal to download the target file;
Displaying a second interface, wherein the second interface displays a first notification when the available storage space of the second terminal is smaller than the storage space required for storing the target file;
And responding to the second operation of the user, sending a second downloading command to a third terminal, wherein the second downloading command is used for indicating the third terminal to download a second part of the target file, the first part of the target file is stored in the second terminal, and the second part of the target file is stored in the third terminal.
2. The method of claim 1, wherein prior to said sending a first download command to a second terminal in response to a first operation by the user, the method further comprises:
acquiring a plurality of terminals including a second terminal which are in communication connection with the first terminal;
displaying a third interface, wherein the third interface displays the plurality of terminals;
The second terminal is selected from a plurality of terminals in response to an operation by a user.
3. The method of claim 1 or 2, wherein prior to said displaying the first interface, the method further comprises:
and receiving a first message from the cloud or other terminals which are in the same local area network with the first terminal, wherein the first message is used for transmitting the target file.
4. A method as claimed in any one of claims 1 to 3, wherein prior to displaying the second interface, the method further comprises:
and receiving a request message from the second terminal, wherein the request message carries the first part of information of the target file downloaded by the second terminal.
5. Method according to any of claims 1 to 4, wherein the first download command carries the download address of the target file and/or the size of the target file, and the second download command carries the download address of the target file and/or the length offset of the second part of the target file.
6. The method of any one of claims 1 to 5, wherein the method further comprises:
receiving an integration instruction from the user in response to a third operation of the user;
Responding to a fourth operation of the user, and sending a first command to a fourth terminal, wherein the first command is used for instructing the fourth terminal to integrate a first part of the target file and a second part of the target file so as to obtain the target file;
Transmitting a first transmission command to the second terminal, wherein the first transmission command is used for indicating the second terminal to transmit a first part of the target file to a fourth terminal;
And sending a second transmission command to the third terminal, wherein the second transmission command is used for indicating the third terminal to transmit the second part of the target file to a fourth terminal.
7. The method of claim 6, wherein the first command comprises any one of: an integrate command, a share command, an install command, or a play command.
8. The method of claim 6 or 7, wherein the first command includes a length offset of a first portion of the target file and a length offset of a second portion of the target file.
9. A file downloading method, applied to a second terminal, the method comprising:
Receiving a first downloading command from a first terminal, wherein the first downloading command is used for indicating the second terminal to download a target file;
downloading the target file based on the first downloading command;
And under the condition that the available storage space of the second terminal is insufficient, sending a request message to the first terminal, wherein the request message carries the first part of information of the target file downloaded by the second terminal.
10. The method of claim 9, wherein the method further comprises:
receiving a response message from the first terminal, wherein the response message carries an identifier of a third terminal and a length offset of a second part of the target file;
Transmitting a second download command to the third terminal, wherein the second download command is used for indicating the third terminal to download a second part of the target file; wherein a first portion of the target file is stored at the second terminal and a second portion of the target file is stored at the third terminal.
11. A method for downloading a file, the method being applied to a first terminal, the method comprising:
displaying a first interface, wherein the first interface displays a download notification, and the download notification indicates a user to download a target file;
Responding to a first operation of a user, and sending a first downloading command to a second terminal, wherein the first downloading command is used for indicating the second terminal to download a first part of the target file;
And sending a second downloading command to a third terminal, wherein the second downloading command is used for indicating the third terminal to download a second part of the target file.
12. The method of claim 11, wherein before the sending the first download command to the second terminal in response to the first operation of the user, the method further comprises:
acquiring a plurality of terminals including the second terminal and a third terminal which are in communication connection with the first terminal;
displaying a second interface, wherein the second interface displays the plurality of terminals;
the second terminal and the third terminal are selected from a plurality of terminals in response to an operation of a user.
13. The method of claim 11 or 12, wherein prior to said displaying the first interface, the method further comprises:
and receiving a first message from the cloud or other terminals which are in the same local area network with the first terminal, wherein the first message is used for transmitting the target file.
14. The method according to any one of claims 11 to 13, wherein the first download command carries a download address of the target file and/or a length offset of the first portion of the target file, and the second download command carries a download address of the target file and/or a length offset of the second portion of the target file.
15. The method of any one of claims 11 to 14, wherein the method further comprises:
receiving an integration instruction from the user in response to a second operation of the user;
Responding to a third operation of the user, and sending a first command to a fourth terminal, wherein the first command is used for instructing the fourth terminal to integrate a first part of the target file and a second part of the target file so as to obtain the target file;
Transmitting a first transmission command to the second terminal, wherein the first transmission command is used for indicating the second terminal to transmit a first part of the target file to the fourth terminal;
And sending a second transmission command to the third terminal, wherein the second transmission command is used for indicating the third terminal to transmit a second part of the target file to the fourth terminal.
16. The method of claim 15, wherein the first command comprises any one of: an integrate command, a share command, an install command, or a play command.
17. A terminal comprising means for implementing the method of any one of claims 1 to 16.
18. A terminal, comprising a processor and a memory, wherein,
The memory is used for storing a computer program;
the processor is configured to invoke the computer program to cause the terminal to perform the method of any of claims 1 to 16.
19. A computer readable storage medium, characterized in that the storage medium has stored therein a computer program or instructions which, when executed by a computer, implement the method of any one of claims 1 to 16.
20. A computer program product comprising instructions which, when executed by a computer, implement the method of any one of claims 1 to 16.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211379154.7A CN117991939A (en) | 2022-11-04 | 2022-11-04 | File downloading method and related device |
PCT/CN2023/127364 WO2024093853A1 (en) | 2022-11-04 | 2023-10-27 | File downloading method and related apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211379154.7A CN117991939A (en) | 2022-11-04 | 2022-11-04 | File downloading method and related device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117991939A true CN117991939A (en) | 2024-05-07 |
Family
ID=90898011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211379154.7A Pending CN117991939A (en) | 2022-11-04 | 2022-11-04 | File downloading method and related device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117991939A (en) |
WO (1) | WO2024093853A1 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103685426B (en) * | 2012-09-25 | 2017-11-03 | 联想(北京)有限公司 | Message processing device and information processing method |
CN103685295A (en) * | 2013-12-20 | 2014-03-26 | 乐视网信息技术(北京)股份有限公司 | Method, terminal and system for downloading multimedia files |
CN104092723B (en) * | 2014-04-04 | 2016-07-06 | 腾讯科技(深圳)有限公司 | Document down loading method, Apparatus and system |
KR101663526B1 (en) * | 2014-09-30 | 2016-10-07 | 아주대학교 산학협력단 | Storage integrating method and system using file system |
CN106550035A (en) * | 2016-11-04 | 2017-03-29 | 上海斐讯数据通信技术有限公司 | A kind of method of file download terminal and file download |
CN110825402B (en) * | 2019-09-26 | 2021-06-22 | 华为技术有限公司 | Method and device for downloading data packet |
-
2022
- 2022-11-04 CN CN202211379154.7A patent/CN117991939A/en active Pending
-
2023
- 2023-10-27 WO PCT/CN2023/127364 patent/WO2024093853A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024093853A1 (en) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4002108B1 (en) | Application start method and electronic device | |
WO2022089207A1 (en) | Cross-device application interaction method, electronic device, and server | |
CN114461239B (en) | Software upgrading system and software upgrading method | |
US20230054451A1 (en) | Communication Connection Method and Electronic Device | |
CN116360725A (en) | Display interaction system, display method and device | |
CN114064055B (en) | System theme configuration method and electronic equipment | |
WO2022161024A1 (en) | Upgrade prompt method, terminal device, and computer readable storage medium | |
US20240111595A1 (en) | Application deployment method, distributed operating system, electronic device, and storage medium | |
CN113608753A (en) | Application uninstalling method, application recovery method, electronic device and storage medium | |
CN117130541A (en) | Storage space configuration method and related equipment | |
WO2022111664A1 (en) | Patching method, related apparatus, and system | |
CN116795435A (en) | Compatibility management and control method and related equipment | |
CN117991939A (en) | File downloading method and related device | |
CN113835802A (en) | Device interaction method, system, device and computer readable storage medium | |
CN115278642A (en) | Method for acquiring information of SIM card, electronic equipment and terminal equipment | |
CN115268710A (en) | Login method of application program, related device and system | |
CN117009023B (en) | Method for displaying notification information and related device | |
CN115767602B (en) | Automatic error correction method for equipment protocol subsystem abnormality and electronic equipment | |
WO2023160217A1 (en) | Method for detecting embedded subscriber identity module (esim) card, and terminal device | |
CN117729561A (en) | System upgrading method, terminal and storage medium | |
CN118277120A (en) | Method for managing system service and related device | |
CN115328507A (en) | Icon updating method of application program and related device | |
CN118075393A (en) | Display method and electronic equipment | |
CN118233492A (en) | Application downloading method, server, electronic device and system | |
CN118260211A (en) | Memory management method and related device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |