Data transmission method and apparatus, electronic device and storage medium

By adjusting the transmission method according to the device's receiving capability information, the problem of low data transmission efficiency under the same frequency but different channels is solved, thus improving the user experience.

WO2026066220A1PCT designated stage Publication Date: 2026-04-02HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-06-05
Publication Date
2026-04-02

AI Technical Summary

Technical Problem

When multiple electronic devices are transferring files, they need to frequently switch channels because they are operating on the same frequency but different channels, resulting in low data transmission efficiency and a poor user experience.

Method used

Based on the data receiving capabilities of each device, file transfer is performed using either parallel or serial data transmission methods to ensure improved data transmission efficiency.

Benefits of technology

By optimizing data transmission methods, the efficiency of data transmission between multiple electronic devices and the user experience have been improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025099315_02042026_PF_FP_ABST
    Figure CN2025099315_02042026_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a data transmission method and apparatus, an electronic device, and a storage medium. The method comprises: acquiring data reception capability information of a plurality of second devices; if the plurality of second devices are all first-type devices, sending target data to the plurality of second devices in a parallel data transmission mode, the first-type devices being second devices among the plurality of second devices having the data reception capability information satisfying preset information; and if at least one second-type device exists in the plurality of second devices, sending the target data to a target second device and second devices in a second device group in a serial data transmission mode, wherein the second-type device is a second device among the plurality of second devices having the data reception capability information dissatisfying the preset information, the target second device is any one of the at least one second-type device, and the second device group comprises, among the plurality of second devices other than the target second device, second devices to which the target data has not been transmitted. The embodiments of the present application can improve the data transmission rate.
Need to check novelty before this filing date? Find Prior Art

Description

Data transmission method and device, electronic device and storage medium

[0001] The present application claims priority to the Chinese patent application No. 202411356177.5, filed on September 26, 2024, and entitled "Data transmission method and device, electronic device and storage medium", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] The present application relates to the field of communication technology, in particular to a data transmission method and device, electronic device and storage medium. BACKGROUND

[0003] Wireless Fidelity (Wi-Fi) direct connection refers to a Peer-To-Peer (P2P) connection of Wi-Fi devices, that is, devices can be connected without a wireless access point (AP). Two electronic devices that establish Wi-Fi direct connection are in the same channel of the same frequency band.

[0004] Currently, when an electronic device transmits a file using a wireless direct connection function, it needs to be in the same channel of the same frequency band (for example, the frequency band to which 5G belongs) as the opposite device (that is, another electronic device). For example, the A channel. At this time, if the electronic device establishes a communication connection with other devices (that is, another electronic device or an access point (AP), etc.), another channel, for example, the B channel, will be established between the electronic device and the other devices. The other channel and the channel corresponding to the wireless direct connection are in the same frequency band, that is, the electronic device is in the same frequency different channel working mode.

[0005] With the continuous improvement of user demand, in order to improve the transmission speed, when transmitting files to multiple electronic devices, a parallel transmission method is usually used. That is, the sending end transmits files to multiple electronic devices at the same time. In related technologies, the sending end and the receiving end can transmit files through wireless direct connection. That is, the sending end transmits files to multiple receiving electronic devices in parallel through wireless direct connection. However, since the electronic devices in the same frequency different channel need to switch between the wireless direct connection channel and another channel when working, the data transmission efficiency of multiple electronic devices in parallel transmission is greatly reduced when they are in the same frequency different channel working state, which further leads to poor user experience. SUMMARY

[0006] Therefore, the present application provides a data transmission method and device, electronic device and storage medium to solve the problem of low data transmission efficiency and poor user experience in the prior art.

[0007] In a first aspect, the embodiments of the present application provide a data transmission method, applied to a first device, the first device establishing a wireless direct connection with a plurality of second devices, and the method comprising:

[0008] obtaining data receiving capability information of the plurality of second devices; if all the plurality of second devices are first type devices, sending target data to the plurality of second devices in a parallel data transmission manner; the first type devices are second devices in the plurality of second devices whose data receiving capability information meets preset information; if there is at least one second type device in the plurality of second devices, sending target data to a target second device and the second devices in a second device group in a serial data transmission manner; the second type devices are second devices in the plurality of second devices whose data receiving capability information does not meet the preset information, the target second device is any one of the at least one second type device, and the second device group includes the second devices in the plurality of second devices other than the target second device and not transmitting the target data.

[0009] In this way, the second device with poor data receiving capability can be sent target data in a serial transmission manner with other second devices, so as to improve the data transmission efficiency between the plurality of second electronic devices, and further improve the terminal use experience of the user.

[0010] In a possible implementation manner of the first aspect, the data receiving capability information of the second device includes at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device, and transmission distance information of the second device.

[0011] In this way, the data transmission manner of sending target data to the plurality of second devices can be determined based on the data receiving capability information of the second device more comprehensively, and the data transmission efficiency between the plurality of second electronic devices is further improved, and the terminal use experience of the user is further improved.

[0012] In a possible implementation manner of the first aspect, the method further comprises:

[0013] For each of the plurality of second devices, when the data receiving capability information of the second device comprises working channel information of the second device, if the working channel information of the second device indicates that the second device is in a same frequency different channel, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises hardware transmission capability information of the second device, if a difference between the hardware transmission capability of the second device and the hardware transmission capability of other second devices does not satisfy a first preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises device specification information of the second device, if a difference between the device specification of the second device and the device specification of other second devices does not satisfy a second preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises signal quality information of the second device, if a difference between the signal quality of the second device and the signal quality of other second devices does not satisfy a third preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises transmission distance information of the second device, if a difference between the transmission distance of the second device and the transmission distance of other second devices does not satisfy a fourth preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information.

[0014] In this way, different preset information can be set according to different data receiving capability information, so that the data transmission mode between the plurality of second devices can be more accurately determined based on the data receiving capability information of the second devices, thereby further improving the data transmission efficiency between the plurality of second electronic devices, and further improving the terminal use experience of the user.

[0015] In a possible implementation manner of the first aspect, if there are at least two second devices of the second type in the plurality of second devices, the sending of the target data to the target second device and the second devices in the second device group in the serial data transmission mode comprises:

[0016] The target data is sent to the target second device and the second devices in the second device group in the serial data transmission mode, and when the target data is sent to the second devices in the second device group, the target data is sent to the second devices of the second type in the second device group and other second devices in the second device group in the serial data transmission mode.

[0017] That is, in the embodiment of the present application, when the first device includes at least two second devices, the first device can send target data to the at least two second devices in a serial data transmission manner, which reduces the possibility of reducing the data transmission rate of other second devices caused by the at least two second devices, further improves the data transmission efficiency between the plurality of second electronic devices, reduces the time consumption of transmitting data, improves the throughput of data transmission, and further improves the terminal use experience of the user.

[0018] In a possible implementation of the first aspect, when the second device group includes at least two first devices, the target data is sent to the second devices in the second device group in a parallel data transmission manner.

[0019] In the embodiment of the present application, when the plurality of second devices include at least two first devices, the first device can send target data to the at least two first devices in a parallel data transmission manner, which can improve the transmission rate of data transmission to the first devices, ensure the throughput of data transmission, and further improve the terminal use experience of the user.

[0020] In a possible implementation of the first aspect, the method further includes: sending transmission prompt information to the target second device; the transmission prompt information is used to indicate that the first device sends the target data to the target second device in a serial data transmission manner.

[0021] That is, when the target data is sent to the target second device in a serial data transmission manner, the transmission prompt information can be sent to the target second device, so that the target second device can send the transmission prompt information to the user, thereby improving the terminal use experience of the user.

[0022] In a possible implementation of the first aspect, the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner, including: when the data amount of the to-be-sent file is not greater than a preset threshold, the data of the to-be-sent file is taken as the target data, and the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner; when the data amount of the to-be-sent file is greater than the preset threshold, the data of the to-be-sent file is divided into at least two data blocks according to a preset size; a target first data block is determined in a first data block of the at least two data blocks, the target first data block is taken as the target data, and the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner, until the at least two data blocks are transmitted to the target second device and the second devices in the second device group; wherein the first data block is a data block that is not transmitted to the plurality of second devices among the at least two data blocks.

[0023] In this way, when the data amount of the to-be-sent file is not greater than the preset threshold, the to-be-sent file can be directly taken as the target data, and the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner. When the data amount of the to-be-sent file is greater than the preset threshold, the to-be-sent file is divided into at least two data blocks according to the preset size, and the at least two data blocks are taken as the target data one by one, and the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner until the at least two data blocks are all transmitted to the target second device and the second devices in the second device group. In this way, the multiple second devices can all receive part of the data in the to-be-sent file in a short time, the waiting time of the multiple second devices is reduced, and the user experience of data transmission is improved.

[0024] In a possible implementation of the first aspect, the sending of the target data to the target second device comprises: receiving receiving confirmation information sent by the target second device; when the first device is sending the target data to other second devices, determining whether the other second devices and the target second device that are in the process of sending the target data are devices that perform data transmission in a parallel data transmission manner; if not, storing information of the target second device in the waiting queue according to a preset rule; when the first device completes the sending of the target data to the other second devices, if the information of the target second device is obtained in the waiting queue according to the storage order, sending the target data to the target second device based on the information of the target second device.

[0025] In this way, when the receiving confirmation information of the target second device is received, if the first device is sending the target data to other devices, since the target second device and the other devices need to send the target data in a serial data transmission manner, the information of the target second device can be stored in the waiting queue, so as to send the target data to the target second device after the first device completes the sending of the target data to the other devices, to realize the sending of the target data to the target second device in a serial data transmission manner, improve the data transmission efficiency among the multiple second electronic devices, reduce the time consumption of the transmission data, improve the throughput of the data transmission, and further improve the terminal use experience of the user.

[0026] In a possible implementation of the first aspect, the sending of the target data to the target second device comprises: during the sending of the target data to the target second device, if receiving receiving confirmation information sent by at least two first-class devices, interrupting the sending of the target data to the target second device, sending the target data to the at least two first-class devices in a parallel data transmission manner, and resuming the sending of the target data to the target second device after completing the parallel data transmission.

[0027] That is, when the target data is transmitted to the target second device in the serial data transmission mode, if the receiving confirmation information of the at least two first-type devices is received, the transmission of the target data to the target second device is interrupted, and the target data is transmitted to the at least two second-type devices in the parallel data transmission mode. In this way, in the embodiment of the present application, the first-type device is preferentially transmitted with the target data in the parallel data transmission mode, which can ensure the transmission rate of the target data of the first-type device, improve the data transmission efficiency among the plurality of second electronic devices, reduce the time consumption of the transmission data, improve the throughput of the data transmission, and further improve the terminal use experience of the user.

[0028] In a possible implementation form of the first aspect, the method further includes: reacquiring the data receiving capability information of the plurality of second devices; and updating the second-type device to the first-type device if the data receiving capability information reacquired by the second-type device satisfies the preset information.

[0029] In this way, in the embodiment of the present application, by acquiring the data receiving capability information of the plurality of second devices, when the data receiving capability information of the plurality of second devices does not satisfy the preset information, that is, when the second-type device exists, the target data is transmitted between the second-type device and the other second devices in the serial data transmission mode. In this way, the possibility of low data transmission rate caused by the parallel transmission of the target data between the second device whose data receiving capability information does not satisfy the preset information and the other second devices can be reduced, the data transmission rate of the first device to the plurality of second devices can be improved, and the throughput of the data transmission can be further improved. Moreover, when the data receiving capability information of the second-type device satisfies the preset information again, the second-type device can be updated to the first-type device, so that the first-type device is transmitted with the target data in the parallel data transmission mode, the data transmission rate of the target data can be further improved, and the throughput of the data transmission can be further improved. That is, in the embodiment of the present application, the transmission rate of the target data to the plurality of second devices can be effectively improved without increasing the hardware cost, the transmission time can be reduced, and the user experience can be improved.

[0030] In a possible implementation form of the first aspect, the first device further establishes a first wireless connection with a first other device, and the second device further establishes a second wireless connection with a second other device; the first wireless connection works on the same channel as the wireless direct connection, and the second wireless connection works on a channel different from the channel on which the wireless direct connection works.

[0031] That is, in the embodiment of the present application, the second device is in the working state of the same frequency and different channels, and the first device needs to send target data to the second device and other second devices in a serial data transmission manner, which can reduce the influence of the second device in the same frequency and different channels on the data transmission rate of other second devices, improve the transmission rate of target data of multiple second devices, reduce the transmission time, and improve the user experience.

[0032] In a second aspect, the embodiment of the present application provides a data transmission method, applied to a first device, the first device and multiple second devices establish wireless direct connection respectively, and the method comprises:

[0033] Obtaining data receiving capability information of the multiple second devices; if the multiple second devices are all first type devices, sending target data to the multiple second devices in a parallel data transmission manner; the first type device is a second device in the multiple second devices whose data receiving capability information meets preset information; if there is at least one second type device in the multiple second devices, sending disconnection indication information to the at least one second type device, so that the second type device disconnects the wireless connection between the second type device and other devices; the second type device is a second device in the multiple second devices whose data receiving capability information does not meet the preset information; and sending target data to the multiple second devices in a parallel data transmission manner.

[0034] In the embodiment of the present application, after the at least one second type device disconnects the wireless communication between the second type device and other devices, the first device can send target data to the multiple second devices in a parallel data transmission manner, so as to ensure the data transmission rate of sending target data to the multiple second devices.

[0035] In a possible implementation manner of the second aspect, the data receiving capability information of the second device comprises at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device and transmission distance information of the second device.

[0036] In this way, the data transmission manner of sending target data to the multiple second devices can be determined based on the data receiving capability information of the second device more comprehensively, and the data transmission efficiency between the multiple second electronic devices is further improved, and the terminal use experience of the user is improved.

[0037] In a possible implementation manner of the second aspect, the method further comprises:

[0038] For each of the plurality of second devices, when the data receiving capability information of the second device comprises working channel information of the second device, if the working channel information of the second device indicates that the second device is in a same-frequency different-channel state, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises hardware transmission capability information of the second device, if a difference between the hardware transmission capability of the second device and the hardware transmission capability of another second device does not satisfy a first preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises device specification information of the second device, if a difference between the device specification of the second device and the device specification of another second device does not satisfy a second preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises signal quality information of the second device, if a difference between the signal quality of the second device and the signal quality of another second device does not satisfy a third preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information; or, when the data receiving capability information of the second device comprises transmission distance information of the second device, if a difference between the transmission distance of the second device and the transmission distance of another second device does not satisfy a fourth preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information.

[0039] In this way, different preset information can be set according to different data receiving capability information, so that the data transmission mode between the plurality of second devices can be more accurately determined based on the data receiving capability information of the second devices, thereby further improving the data transmission efficiency between the plurality of second electronic devices, and further improving the terminal use experience of the user.

[0040] In a possible implementation manner of the second aspect, the first device further establishes a first wireless connection with a first other device, and the second device further establishes a second wireless connection with a second other device; the first wireless connection works on a same channel as the wireless direct connection, and the second wireless connection works on a different channel from the wireless direct connection.

[0041] In this way, in the embodiment of the present application, when the second device is in a same-frequency different-channel working state, the first device can send disconnection indication information to the second device, so that the second device disconnects other working channels, so that the second device only communicates with the first device wirelessly, and the first device can send target data to the plurality of second devices in a parallel data transmission manner, thereby ensuring the data transmission rate of sending target data to the plurality of second devices.

[0042] In a third aspect, an embodiment of the present application provides a data transmission apparatus applied to a first device, the first device establishing a wireless direct connection with a plurality of second devices, and the data transmission apparatus comprising:

[0043] The acquisition unit is configured to acquire data receiving capability information of the plurality of second devices.

[0044] The processing unit is configured to send the target data to the plurality of second devices in a parallel data transmission mode if the plurality of second devices are all first-type devices, wherein the first-type devices are second devices in the plurality of second devices whose data receiving capability information meets preset information.

[0045] The processing unit is further configured to send the target data to the target second device and the second devices in the second device group in a serial data transmission mode if there is at least one second-type device in the plurality of second devices, wherein the second-type devices are second devices in the plurality of second devices whose data receiving capability information does not meet the preset information, the target second device is any one of the at least one second-type device, and the second device group includes second devices in the plurality of second devices except the target second device.

[0046] In a fourth aspect, an embodiment of the present application provides a data transmission apparatus applied to a first device, the first device establishing a wireless direct connection with a plurality of second devices, and the data transmission apparatus comprising:

[0047] The acquisition unit is configured to acquire data receiving capability information of the plurality of second devices.

[0048] The processing unit is configured to send the target data to the plurality of second devices in a parallel data transmission mode if the plurality of second devices are all first-type devices, wherein the first-type devices are second devices in the plurality of second devices whose data receiving capability information meets preset information.

[0049] The processing unit is further configured to send disconnection indication information to the at least one second-type device to make the second-type device disconnect the wireless connection between the second-type device and other devices if there is at least one second-type device in the plurality of second devices, wherein the second-type devices are second devices in the plurality of second devices whose data receiving capability information does not meet the preset information.

[0050] The processing unit is further configured to send the target data to the plurality of second devices in a parallel data transmission mode.

[0051] In a fifth aspect, an embodiment of the present application provides an electronic device comprising a memory for storing computer program instructions and a processor for executing the program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to execute the method in any one of the first aspect or execute the method in any one of the second aspect.

[0052] In a sixth aspect, an embodiment of the present application provides a computer readable storage medium, the computer readable storage medium including a stored program, wherein the program, when executed, controls a device in which the computer readable storage medium is located to perform the method of any one of the first aspect, or perform the method of any one of the second aspect.

[0053] In a seventh aspect, an embodiment of the present application provides a computer program product, which, when executed on a computer, causes the computer to perform the method of any one of the above aspects and any possible implementation manner thereof.

[0054] It can be understood that the beneficial effects of the apparatus, system, computer readable storage medium, and computer program product provided in the above third aspect to sixth aspect can refer to the beneficial effects of the first aspect, the second aspect, and any possible implementation manner, which will not be described here. BRIEF DESCRIPTION OF DRAWINGS

[0055] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor.

[0056] FIG. 1 is a schematic diagram of a data transmission scenario provided in the related art;

[0057] FIG. 2a is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0058] FIG. 2b is a schematic diagram of the software structure of an electronic device provided in an embodiment of the present application;

[0059] FIG. 2c is a schematic diagram of the software structure of another electronic device provided in an embodiment of the present application;

[0060] FIG. 3 is a schematic diagram of the flow of a data transmission method provided in an embodiment of the present application;

[0061] FIG. 4 is a schematic diagram of the flow of another data transmission method provided in an embodiment of the present application;

[0062] FIG. 5 is a schematic diagram of a data transmission method provided in an embodiment of the present application;

[0063] FIG. 6 is a schematic diagram of another data transmission method provided in an embodiment of the present application;

[0064] FIG. 7 is a schematic diagram of the flow of another data transmission method provided in an embodiment of the present application;

[0065] FIG. 8 is a flow diagram of another data transmission method according to an embodiment of the present application;

[0066] FIG. 9 is a flow diagram of another data transmission method according to an embodiment of the present application;

[0067] FIG. 10 is a flow diagram of another data transmission method according to an embodiment of the present application;

[0068] FIG. 11 is a flow diagram of another data transmission method according to an embodiment of the present application;

[0069] FIG. 12 is a flow diagram of another data transmission method according to an embodiment of the present application;

[0070] FIG. 13 is a flow diagram of another data transmission method according to an embodiment of the present application;

[0071] FIG. 14 is a structural diagram of a data transmission apparatus according to an embodiment of the present application;

[0072] FIG. 15 is a structural diagram of a data transmission apparatus according to an embodiment of the present application;

[0073] FIG. 16 is a structural diagram of another electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0074] In order to better understand the technical solutions of the present application, the embodiments of the present application are described in detail below with reference to the drawings.

[0075] It should be clear that the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.

[0076] The terms used in the embodiments of the present application are only for the purpose of describing the specific embodiments, and are not intended to limit the present application. The singular forms "a", "an" and "the" used in the embodiments of the present application and the appended claims are also intended to include the plural forms, unless the context clearly indicates otherwise.

[0077] It should be understood that the term "and / or" used herein is only to describe the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which can represent the three cases of A alone, A and B together, and B alone. In addition, the character " / " in this paper generally represents that the front and rear associated objects are a "or" relationship.

[0078] Before specifically introducing the embodiments of the present application, first, the terms applied or possibly applied in the embodiments of the present application are explained.

[0079] Frequency band, in the field of communication, refers to the frequency range of electromagnetic waves. Currently, the frequency bands commonly used by WiFi include 2.4G, 5G, etc.

[0080] Channel refers to the channel of signal transmission in a communication system, which is composed of the transmission medium through which the signal is transmitted from the transmitting end to the receiving end. Each frequency band commonly used by WiFi is divided into multiple channels. For example, according to the IEEE 802.11 protocol, the 2.4GHz Wi-Fi frequency band is divided into 13 overlapping channels, and the width of each channel is 22MHz (megahertz) (the frequency width of each channel in the IEEE 802.11g standard and the IEEE 802.11n standard is 20MHz, and the frequency width of each channel in the IEEE 802.10B standard is 22MHz); the 5GHz Wi-Fi frequency band is divided into 201 channels.

[0081] WiFi STA mode refers to the mode in which an electronic device connects to a wireless access access point (Access Point, AP) to access the Internet.

[0082] Wireless direct connection mode refers to the mode in which electronic devices are connected in a peer-to-peer (Peer-To-Peer, P2P) manner in a Wi-Fi network, i.e., electronic devices in a wireless network can be connected to each other without the need for a router.

[0083] Same frequency and different channels refer to the operation of an electronic device in WiFi STA mode and WiFi wireless direct connection mode in the same frequency band and different channels. The electronic device needs to be switched between the working channel of WiFi STA mode (referred to as STA channel) and the working channel of WiFi wireless direct connection mode (referred to as direct connection channel) in time. For example, 100ms (milliseconds) / 100ms in time, with a switching time of 20ms, indicating that the electronic device will switch to the direct connection channel after working in the STA channel for 100ms, and the switching process will take 20ms. After working in the direct connection channel for 100ms, it will be switched to the STA channel again.

[0084] As shown in FIG. 1, in a possible scenario in the related art, a first electronic device (for example, a mobile phone 1) needs to transmit files to four second electronic devices (for example, mobile phones 2). In order to improve the file transmission rate, the first electronic device can establish a wireless direct link of a 149 channel of a 5G frequency band with the four second electronic devices respectively. The four second electronic devices establish a wireless communication connection of a 36 channel of the 5G frequency band with other electronic devices (for example, a router). At this time, the second electronic devices are all same-frequency different channels. For each second electronic device, the second electronic device can only process data of one channel at a time for one frequency band, so the second electronic device needs to switch between the 149 channel and the 36 channel at this time. For example, switching once every 100 ms, that is, the second electronic device works on the 149 channel for 100 ms, switches to the 36 channel, and works on the 36 channel for 100 ms before switching to the 149 channel. The 5G frequency band 149 channel and the 5G frequency band 36 channel are only examples, and in actual use, other same-frequency different channels can also be used.

[0085] When the first electronic device transmits files to the four second electronic devices in parallel, because each same-frequency different channel second electronic device needs to switch channels, the scheduling control loss of the first electronic device is large, and the conflict avoidance loss between the data packets of the transmitted files and the reverse confirmation packets sent by the second electronic devices to the first electronic device is also increased, so that the data transmission rate between the first electronic device and the multiple second electronic devices is low, and the user's terminal use experience is poor.

[0086] Therefore, an embodiment of the present application provides a data transmission method, obtaining data receiving capability information of multiple second electronic devices, when the multiple second electronic devices are all first type devices, transmitting target data to the multiple second electronic devices in a parallel transmission mode. The first type device is a second device whose data receiving capability information meets preset information. When there is at least one second type device in the multiple second electronic devices, transmitting target data to a target second device and a second device in a second device group in a serial transmission mode. The second type device is a second device whose data receiving capability information does not meet the preset information in the multiple second electronic devices. The target second device is any one of the second type devices, and the second device group includes second devices in the multiple second electronic devices except the target second device and not transmitting the target data. In this way, the second device with poor data receiving capability can be transmitted target data in a serial transmission mode, so as to improve the data transmission efficiency between the multiple second electronic devices, and further improve the user's terminal use experience.

[0087] The data transmission method provided in the embodiments of the present application can be applied to mobile phones, tablet computers, desktop computers, laptop computers, notebook computers, ultra-mobile personal computers (UMPC), handheld computers, netbooks, personal digital assistants (PDA), wearable electronic devices, smart watches, and the like.

[0088] FIG. 2a is a structural schematic diagram of an electronic device 200 provided in an embodiment of the present application. The electronic device 200 can include a processor 210, an external memory interface 220, an internal memory 221, a display screen 230, an antenna 1, an antenna 2, a mobile communication module 240, and a wireless communication module 250, and the like.

[0089] It can be understood that the structure illustrated in the embodiment does not constitute a specific limitation on the electronic device. In other embodiments, the electronic device can include more or fewer components than those illustrated, or combine certain components, or split certain components, or different arrangement of components. The illustrated components can be implemented in hardware, software, or a combination of software and hardware.

[0090] The processor 210 can include one or more processing units, for example: the processor 210 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), and the like. Different processing units can be independent devices, or can be integrated in one or more processors.

[0091] The controller can be the nerve center and command center of the electronic device 200. The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching instructions and executing instructions.

[0092] The video codec is used to compress or decompress digital video. The electronic device can support one or more video codecs. In this way, the electronic device can play or record videos in multiple encoding formats, such as moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 2, and the like.

[0093] The NPU is a neural-network (NN) computing processor. By drawing on the structure of a biological neural network, for example, by drawing on the transmission mode between human brain neurons, the NPU can quickly process input information and can also constantly self-learn. Through the NPU, intelligent cognition and other applications of an electronic device can be realized, for example, image recognition, face recognition, voice recognition, text understanding, and the like.

[0094] The processor 210 can also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 210 is a cache memory. The memory can hold instructions or data that have just been used or are being recycled by the processor 210. If the processor 210 needs to use the instructions or data again, it can directly call them from the memory. This avoids repeated access and reduces the waiting time of the processor 210, thus improving the efficiency of the system.

[0095] In some embodiments, the processor 210 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, and the like.

[0096] The GPIO interface can be configured by software. The GPIO interface can be configured as a control signal or as a data signal. In some embodiments, the GPIO interface can be used to connect the processor 210 with the display screen 230, the camera 220, the wireless communication module 260, and the like. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, an MIPI interface, and the like.

[0097] It can be understood that the interface connection relationship between the modules shown in the embodiment is only illustrative and does not constitute a structural limitation on the electronic device 200. In other embodiments of the present application, the electronic device 200 can also use different interface connection modes or a combination of multiple interface connection modes.

[0098] The external memory interface 220 can be used to connect an external memory card, such as a MicroSD card, to expand the storage capacity of the electronic device. The external memory card communicates with the processor 210 through the external memory interface 220 to realize data storage functions. For example, music, video, and other files are saved in the external memory card.

[0099] The internal memory 221 can be used to store computer executable program codes, which include instructions. The processor 210 executes various functional applications and data processing of the electronic device 200 by running the instructions stored in the internal memory 221. The internal memory 221 can include a program storage area and a data storage area. The program storage area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.), and the like. The data storage area can store data created during the use of the electronic device (such as audio data, a phone book, etc.), and the like. In addition, the internal memory 221 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (UFS), and the like. The processor 210 executes various functional applications and data processing of the electronic device by running the instructions stored in the internal memory 221 and / or the instructions stored in the memory disposed in the processor.

[0100] The electronic device realizes the display function through the GPU, the display screen 230, and the application processor, etc. The GPU is a microprocessor for image processing, connected to the display screen 230 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 210 can include one or more GPUs, which execute program instructions to generate or change display information.

[0101] The display screen 230 is configured to display images, videos, and the like. The display screen 230 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oled, a quantum dot light emitting diodes (QLED), or the like. In some embodiments, the electronic device can include one or N display screens 230, where N is a positive integer greater than 1.

[0102] A series of graphical user interfaces (GUIs) can be displayed on the display screen 230 of the electronic device, and these GUIs are all home screens of the electronic device. Generally, the size of the display screen 230 of the electronic device is fixed, and only limited controls can be displayed in the display screen 230 of the electronic device. A control is a GUI element, which is a software component included in an application program, controls all data processed by the application program and interactive operations related to the data, and a user can interact with the control through direct manipulation to read or edit relevant information of the application program. Generally, a control can include an icon, a button, a menu, a tab, a text box, a dialog box, a status bar, a navigation bar, a widget, and the like. For example, in the embodiments of the present application, the display screen 230 can display virtual keys (one-key arrangement, start arrangement, scene arrangement).

[0103] The electronic device can implement a photographing function through an ISP, a camera, a video codec, a GPU, a display screen 230, and an application processor.

[0104] The ISP is configured to process data fed back by the camera 220. For example, when taking a photo, the shutter is opened, light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing to convert it into an image visible to the naked eye. The ISP can also perform algorithm optimization on the noise, brightness, and skin color of the image. The ISP can also optimize the exposure, color temperature, and other parameters of the shooting scene. In some embodiments, the ISP can be arranged in the camera 220.

[0105] The wireless communication function of the electronic device can be implemented through the antenna 1, the antenna 2, the mobile communication module 240, the wireless communication module 250, the modem processor, and the baseband processor, etc.

[0106] The antenna 1 and the antenna 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna of a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.

[0107] The mobile communication module 240 can provide a solution for wireless communication including 2G / 3G / 2G / 5G, etc. applied to the electronic device. The mobile communication module 240 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 240 can receive electromagnetic waves from the antenna 1, and perform filtering, amplification, etc. on the received electromagnetic waves, and transmit the processed signals to the modem processor for demodulation. The mobile communication module 240 can also amplify the signals modulated by the modem processor, and convert the signals into electromagnetic waves to be radiated through the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 240 can be arranged in the processor 210. In some embodiments, at least part of the functional modules of the mobile communication module 240 and at least part of the modules of the processor 210 can be arranged in the same device.

[0108] The wireless communication module 250 can provide a solution for wireless communication including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) network), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied to the electronic device. The wireless communication module 250 can be one or more devices integrated with at least one communication processing module. The wireless communication module 250 receives electromagnetic waves through the antenna 2, performs frequency modulation and filtering processing on the electromagnetic wave signals, and transmits the processed signals to the processor 210. The wireless communication module 250 can also receive signals to be transmitted from the processor 210, perform frequency modulation and amplification on the signals, and convert the signals into electromagnetic waves to be radiated through the antenna 2.

[0109] In some embodiments, the WiFi module in the wireless communication module 250 is configured to provide network access for the electronic device 200 in compliance with Wi-Fi related standard protocols. The electronic device 200 can access a Wi-Fi access point via the WiFi module and access the Internet. The WiFi module can also function as a Wi-Fi wireless access point and provide Wi-Fi network access for other devices. The Bluetooth module in the wireless communication module 250 is configured to enable short-range communication between the electronic device 200 and other devices.

[0110] The WiFi module can be an integrated circuit or a Wi-Fi chip, and the Bluetooth module can be an integrated circuit or a Bluetooth chip. The WiFi module and the Bluetooth module can be separate chips or integrated circuits, or can be integrated together. For example, in one embodiment, the WiFi module and the Bluetooth module can be integrated into the same chip. In another embodiment, the WiFi module, the Bluetooth module, and the processor can be integrated into the same chip.

[0111] In addition, an operating system runs on top of the above-mentioned components. For example, a HongMeng system, an iOS operating system, an Android operating system, a Windows operating system, etc. Application programs can be installed and run on the operating system.

[0112] FIG. 2b is a software structure block diagram of the electronic device 200 according to an embodiment of the present application.

[0113] The layered architecture of the electronic device 200 divides the software into several layers, each of which has a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom, the application layer, the application framework layer, the Android runtime and the system library, and the kernel layer.

[0114] The application layer can include a series of application packages.

[0115] As shown in FIG. 2b, the application packages can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, video, service management, etc.

[0116] In some embodiments, the service management application can provide at least one of wireless projection, multi-screen collaboration, file sharing, and call sharing. The service management application is, for example, a computer manager or the like.

[0117] The service management application can establish a wireless direct connection with a peer device, such as a mobile phone, a tablet, a television, or the like, in response to a user-triggered interaction instruction, such as a file sharing instruction, a multi-screen collaboration instruction, or the like. The service management application can also acquire data receiving capability information of the peer electronic device, and determine a data transmission mode for transmitting target data to the peer electronic device according to the data receiving capability information, and transmit the target data to the peer device according to the determined data transmission mode.

[0118] Alternatively, the service management application can also establish a wireless direct connection with a peer device, such as a mobile phone, a tablet, or the like, and send its own data receiving capability information to the peer device, so that the peer device can determine a data transmission mode according to the data receiving capability information, and the peer device can transmit target data to the electronic device according to the determined data transmission mode.

[0119] The application framework layer provides an application programming interface (API) and a programming framework for the application programs of the application layer. The application framework layer includes some pre-defined functions.

[0120] As shown in FIG. 2b, the application framework layer can include a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, and the like.

[0121] The window manager is used to manage window programs. The window manager can acquire a display screen size, determine whether there is a status bar, lock a screen, and capture a screen, and the like.

[0122] The content provider is used to store and acquire data, and make the data accessible to the application programs. The data can include videos, images, audios, dialed and received calls, browsing history and bookmarks, a phonebook, and the like.

[0123] The view system includes visual controls, such as a control for displaying text, a control for displaying pictures, and the like. The view system can be used to build an application program. A display interface can be composed of one or more views. For example, a display interface including a short message notification icon can include a view for displaying text and a view for displaying pictures.

[0124] The phone manager is used to provide a communication function of the electronic device 100. For example, management of a call state (including call connection, call hang-up, and the like).

[0125] The resource manager provides various resources for the application programs, such as localized strings, icons, pictures, layout files, video files, and the like.

[0126] The notification manager enables applications to display notification information in the status bar, which can be used to convey alert-type messages that can automatically disappear after a brief stay without user interaction. For example, the notification manager is used to notify download completion, message reminders, etc. The notification manager can also be a notification that appears in the form of a chart or a scroll bar text in the top status bar of the system, such as a notification of an application running in the background, and can also be a notification that appears in the form of a dialog window on the screen. For example, the status bar prompts text information, emits a prompt sound, the electronic device vibrates, the indicator light flashes, etc.

[0127] The kernel layer is a layer between hardware and software. The kernel layer at least includes a display driver, a camera driver, an audio driver, and a sensor driver.

[0128] It can be understood that the layers in the software structure shown in FIG. 2b and the components included in each layer do not constitute a specific limitation on the electronic device 200. In some other embodiments of the present application, the electronic device 200 can include more or fewer layers than shown, and each layer can include more or fewer components, which are not limited in the present application.

[0129] FIG. 2c is a block diagram of a software structure of another electronic device 200 according to an embodiment of the present application. The electronic device 200 shown in FIG. 2c can be a terminal device such as a mobile phone, a tablet, and a television.

[0130] The layered architecture of the electronic device 200 divides the software into several layers, each of which has a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom, the application layer, the application framework layer, the Android runtime and the system library, and the kernel layer.

[0131] The application layer can include a series of application packages.

[0132] As shown in FIG. 2c, the application packages can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc.

[0133] The application framework layer provides application programming interfaces (APIs) and programming frameworks for the applications of the application layer. The application framework layer includes some pre-defined functions.

[0134] As shown in FIG. 2c, the application framework layer can include a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, etc.

[0135] The application framework layer in FIG. 2c is similar to the structure of the application framework layer in the aforementioned FIG. 2b. The description of the parts included in the application framework layer in FIG. 2c can refer to the detailed description of the corresponding application framework layer in the aforementioned FIG. 2b, and will not be repeated here.

[0136] The Android Runtime includes a core library and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.

[0137] The core library includes two parts: one part is the function function that the java language needs to call, and the other part is the core library of Android.

[0138] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the java file of the application layer and the application framework layer into a binary file. The virtual machine is used to perform the management of the object life cycle, the management of the stack, the management of the thread, the management of the security and the exception, and the garbage collection and the like.

[0139] The system library can include a plurality of functional modules. For example: a surface manager, media libraries, a three-dimensional graphics processing library (for example: OpenGL ES), a 2D graphics engine (for example: SGL) and the like.

[0140] The surface manager is used to manage the display subsystem, and provides a plurality of applications with the fusion of 2D and 3D layers.

[0141] The media library supports a plurality of commonly used audio, video format playback and recording, and static image files and the like. The media library can support a plurality of audio and video coding formats, for example: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG and the like.

[0142] The three-dimensional graphics processing library is used to realize three-dimensional graphics drawing, image rendering, synthesis, and layer processing and the like.

[0143] The 2D graphics engine is a drawing engine for 2D drawing.

[0144] In some embodiments, the system library further includes a service management module, wherein the service management module is used to provide at least one service of wireless projection, multi-screen collaboration, file sharing, and call sharing.

[0145] The service management application can establish a wireless direct connection with a peer device, such as a mobile phone, a tablet, a television, or the like, in response to a user-triggered interaction instruction, such as a file sharing instruction, a multi-screen collaboration instruction, or the like. The service management application can also acquire data receiving capability information of the peer electronic device, and determine a data transmission mode for transmitting target data to the peer electronic device according to the data receiving capability information, and transmit the target data to the peer device according to the determined data transmission mode.

[0146] Alternatively, the service management application can also establish a wireless direct connection with a peer device, such as a mobile phone, a tablet, or the like, and send its own data receiving capability information to the peer device, so that the peer device can determine a data transmission mode according to the data receiving capability information, and the peer device can transmit target data to the electronic device according to the determined data transmission mode.

[0147] The kernel layer is a layer between hardware and software. The kernel layer at least includes a display driver, a Wi-Fi driver, a Bluetooth driver, an audio driver, and a sensor driver.

[0148] It can be understood that the layers in the software structure shown in FIG. 2c and the components included in each layer do not constitute a specific limitation on the electronic device 200. In other embodiments of the present application, the electronic device 200 can include more or fewer layers than shown, and each layer can include more or fewer components, which are not limited in the present application.

[0149] FIG. 3 is a flow diagram of a data transmission method according to an embodiment of the present application. The method is applied to a first device, and the first device establishes a wireless direct connection with a plurality of second devices. The method includes the following steps:

[0150] In step S301, data receiving capability information of the plurality of second devices is acquired.

[0151] The data receiving capability information of the second device can represent the speed of data receiving of the second device. For example, when the data receiving capability information of the second device indicates that the second device works in a same frequency and different channels, it can represent that the second device receives data slowly.

[0152] In the embodiments of the present application, after the first device establishes a wireless direct connection with a plurality of second devices, in order to ensure the data transmission rate of transmitting target data to the plurality of second devices, the data receiving capability of the second device needs to be acquired, so as to determine a data transmission mode for transmitting target data to the second device according to the data receiving capability of the second device.

[0153] In some embodiments, the second device can actively send its own data receiving capability information to the first device after establishing the wireless direct connection with the first device. For example, after the first device establishes the wireless direct connection with the second device a and the second device b, the second device a can obtain its own data receiving capability information and send the data receiving capability information of the second device a to the first device through the wireless direct connection between the first device and the second device a. Similarly, the second device b can obtain its own data receiving capability information and send the data receiving capability information of the second device b to the first device through the wireless direct connection between the first device and the second device b.

[0154] In some other embodiments, the first device can also obtain the data receiving capability information of the second device by sending a request message to the second device. That is, the first device can send a request message for the data receiving capability information to the second device through the wireless direct connection after establishing the wireless direct connection with the second device. After receiving the request message for the data receiving capability, the second device can obtain its own data receiving capability information and send the data receiving capability information to the first device through the wireless direct connection.

[0155] Of course, the first device can also obtain the data receiving capability information of the second device through other manners, which is not limited in the embodiments of the present application.

[0156] As a possible implementation, the data receiving capability information includes at least one of the working channel information of the second device, the hardware transmission capability information of the second device, the device specification information of the second device, the signal quality information of the second device and the transmission distance information of the second device.

[0157] As a possible implementation, the first device also establishes a first wireless connection with a first other device, and the second device also establishes a second wireless connection with a second other device; the first wireless connection works on the same channel as the wireless direct connection, and the second wireless connection works on a different channel from the wireless direct connection. That is, the first device is in the same frequency and same channel working mode, and the second device is in the same frequency and different channel working mode. At this time, when the data receiving capability information includes the working channel information of the second device, the working channel information of the second device can indicate that the second device includes two working channels, thereby representing that the second device is in the same frequency and different channel working mode.

[0158] In some embodiments, the wireless direct connection is a WiFi wireless direct connection, that is, a WiFi P2P connection mode.

[0159] The first device can determine the type of the second device according to the data receiving capability information after obtaining the data receiving capability information of the plurality of second devices, so as to determine the data transmission mode for sending the target data to the second device. In some embodiments, the information of the data receiving capability corresponding to the parallel data transmission mode can be preset, that is, the preset information, so that whether the parallel data transmission mode is used to send the target data to the plurality of second devices can be determined by detecting whether the obtained data receiving capability information of the second device meets the preset information. The first device performs different steps according to different determination results. For example, when it is determined that the plurality of second devices are all the first type of devices, step S302a is performed. When it is determined that at least one second device of the plurality of second devices is the second type of device, step S302b is performed.

[0160] If the plurality of second devices are all the first type of devices, the first device sends the target data to the plurality of second devices in the parallel data transmission mode.

[0161] The first type of device is a second device of the plurality of second devices whose data receiving capability information meets the preset information.

[0162] In the embodiments of the present application, after obtaining the data receiving capability information of the plurality of second devices respectively, the first device can compare the data receiving capability information of the second device with the preset information respectively, and detect whether the data receiving capability information of the second device meets the preset information. If the data receiving capability information of the plurality of second devices all meets the preset information, the first device can determine that the plurality of second devices are all the first type of devices, and the first device can send the target data to the plurality of second devices in the parallel data transmission mode.

[0163] For example, the first device establishes a wireless direct connection with four second devices, that is, a second device a, a second device b, a second device c and a second device d respectively, and the first device can obtain the data receiving capability information of the second device a, the second device b, the second device c and the second device d respectively. After obtaining the data receiving capability information of the second device a, the first device can determine whether the data receiving capability information of the second device a meets the preset information, and if it meets, it can be determined that the second device a can send the target data in parallel with other second devices. At this time, the first device can send the target data to the second device a.

[0164] The first device can detect whether the data receiving capability information of the second device b meets the preset information, and if it meets, it can be determined that the second device b can send the target data in parallel with other second devices. When the first device is sending the target data to the second device supporting the parallel data transmission mode, the target data can also be sent to the second device b. For example, when the first device is sending the target data to the second device a, the target data can also be sent to the second device b.

[0165] Similarly, the first device can detect whether the data receiving capability information of the second device c satisfies the preset information, and if so, it can be determined that the second device c sends the target data in parallel with other second devices. When the first device is sending the target data to the second devices supporting parallel data transmission mode, the target data can also be sent to the second device c.

[0166] The first device can detect whether the data receiving capability information of the second device d satisfies the preset information, and if so, it can be determined that the second device d sends the target data in parallel with other second devices. When the first device is sending the target data to the second devices supporting parallel data transmission mode, the target data can also be sent to the second device d.

[0167] If there is at least one second-class device in the plurality of second devices, the target data is sent to the target second device and the second devices in the second device group in a serial data transmission mode.

[0168] The second-class device is a second device in the plurality of second devices whose data receiving capability information does not satisfy the preset information, the target second device is any one of the at least one second-class device, and the second device group includes the second devices in the plurality of second devices other than the target second device and not transmitting the target data.

[0169] In the embodiments of the present application, if the first device detects that there is at least one second-class device in the plurality of second devices, i.e., there is at least one second device in the plurality of second devices whose data receiving capability information does not satisfy the preset information, the target second device can be determined in the at least one second-class device, and in order to improve the transmission efficiency of the data, the target data can be sent to the target second device and the second devices in the second device group in a serial data transmission mode. The second device group includes the second devices in the plurality of second devices other than the target second device and not transmitting the target data.

[0170] That is, when the first device determines that there is at least one second-class device in the plurality of second devices, it can determine the target device in the second-class device, for example, any one of the at least one second-class device can be taken as the target second device, and the other second devices in the plurality of second devices other than the target second device and not transmitting the target data can be taken as the second devices in the second device group. The target second device and the second devices in the second device group send the target data in a serial data transmission mode.

[0171] In some embodiments, when there are at least two second-type devices in the plurality of second devices, each second-type device needs to be sent target data in a serial data transmission manner. That is, when there are at least two second-type devices in the plurality of second devices, the above sending target data to the target second device and the second device in the second device group in a serial data transmission manner includes:

[0172] sending target data to the target second device and the second device in the second device group in a serial data transmission manner, and when sending target data to the second device in the second device group, sending target data to the second-type device in the second device group and other second devices in the second device group in a serial data transmission manner.

[0173] In the embodiments of the present application, when the first device determines that there are at least two second-type devices in the plurality of second devices, it determines a target second device in the second-type devices, and sends target data to the target second device and the second device in the second device group in a serial data transmission manner. When sending target data to the second device in the second device group, if the second device in the second device group also has a second-type device, target data can be sent to the second-type device in the second device group and other devices in the second device group in a serial data transmission manner, so that target data can be sent to each second-type device in a serial data transmission manner, and the data transmission rate is improved.

[0174] For example, when the plurality of second devices have second device a, second device b and second device c as second-type devices, that is, the data receiving capability information of second device a, second device b and second device c does not meet the preset information, the first device can take second device a as the target second device, and take the second devices in the plurality of second devices except second device a as the second devices in the second device group. At this time, the second device group includes second device b and second device c. Target data is sent to second device a and the second devices in the second device group in a serial data transmission manner. When the first device sends target data to the second devices in the second device group, since second device b and second device c are also second-type devices, the first device sends target data to the second devices in the second device group in a serial data transmission manner when sending target data to the second devices in the second device group. That is, the first device sends target data to second device a, second device b, second device c and other second devices in a serial data transmission manner.

[0175] In some embodiments, if the plurality of second devices includes at least two first type devices in addition to the at least one second type device, the target data can be transmitted to the at least two first type devices in parallel. That is, if the second device group includes at least two first type devices, transmitting the target data to the second devices in the second device group includes transmitting the target data to the at least two first type devices in parallel.

[0176] That is, if the plurality of second devices includes at least one second type device and at least two first type devices, the first device can determine a target second device from the at least one second type device, and the second devices in the second device group are the second devices in the second device group other than the target second device and not transmitting the target data. The target data is transmitted to the target second device and the second devices in the second device group in serial data transmission. When transmitting the target data to the second devices in the second device group, since the second devices in the second device group include at least two first type devices, the target data can be transmitted to the at least two first type devices in parallel.

[0177] In this way, when transmitting the target data to the plurality of second devices, the target data can be transmitted to the second type device whose data receiving capability information does not meet the preset information in serial data transmission, that is, when transmitting the target data to one second type device, the target data is no longer transmitted to other second devices, so that the data transmission rate of the second type device can be improved, and since the target data is no longer affected when transmitting the target data to other second devices, the data transmission rate of other second devices can also be improved.

[0178] As a possible implementation, transmitting the target data to the target second device and the second devices in the second device group in serial data transmission includes:

[0179] When the data amount of the file to be transmitted is not greater than a preset threshold, the data of the file to be transmitted is taken as the target data, and the target data is transmitted to the target second device and the second devices in the second device group in serial data transmission.

[0180] When the data amount of the file to be transmitted is greater than the preset threshold, the data of the file to be transmitted is divided into at least two data blocks according to a preset size; a target first data block is determined in a first data block of the at least two data blocks, the target first data block is taken as the target data, and the target data is transmitted to the target second device and the second devices in the second device group in serial data transmission, until the at least two data blocks are all transmitted to the target second device and the second devices in the second device group.

[0181] The first data block is a data block that is not transmitted to the plurality of second devices among the at least two data blocks.

[0182] In the embodiment of the present application, the data amount of the file to be sent in the first device can be large or small. When the first device sends the target data to the target second device and the second devices in the second device group in the serial data transmission mode, the target data can be determined according to the data amount of the file to be sent. The first device can compare the data amount of the file to be sent with a preset threshold. When the data amount of the file to be sent is not greater than the preset threshold, it indicates that the file to be sent is small. At this time, the first device can directly take the file to be sent as the target data, for example, directly take the complete file to be sent as the target data, and send the target data to the target second device and the second devices in the second device group in the serial data transmission mode respectively. The target data received by the target second device is the file to be sent, and the target data received by the second devices in the second device group is also the file to be sent.

[0183] Alternatively, the first device determines that the data amount of the to-be-sent file is greater than the preset threshold, indicating that the to-be-sent file is large. If the to-be-sent file is directly used as the target data, the first device sends the target data to the target second device and the second devices in the second device group in the serial data transmission mode. For example, the first device first sends the target data to the target second device. Since the target data is large, it takes a long time to transmit the target data. At this time, the first device needs to transmit the target data to the target second device before transmitting the target data to the second devices in the second device group. At this time, the second devices in the second device group need to wait for a long time, and the user experience is poor. In order to improve the user's data transmission experience, when the data amount of the to-be-sent file is greater than the preset threshold, the first device can divide the to-be-sent file into at least two data blocks according to the preset size. After the at least two data blocks are divided, the first device can determine a target first data block in the first data block of the at least two data blocks, that is, determine the target first data block in the data block that has not been transmitted to the plurality of second devices. The target first data block is used as the target data, and the target data is sent to the target second device and the second devices in the second device group in the serial data transmission mode. After the target data is sent to the target second device and the second devices in the second device group in the serial data transmission mode, the first data block in the at least two data blocks can be updated, and the target first data block can be re-determined in the first data block in the at least two data blocks. The target first data block is used as the target data, and the target data is re-sent to the target second device and the second devices in the second device group in the serial data transmission mode. After the first device sends the target data to the target second device and the second devices in the second device group in the serial data transmission mode, the first data block in the at least two data blocks can be updated. When there is still a first data block in the at least two data blocks, the first device needs to re-determine the target first data block in the first data block, and re-sends the target first data block to the target second device and the second devices in the second device group in the serial data transmission mode; until there is no first data block in the at least two data blocks, that is, until the at least two data blocks are transmitted to the target second device and the second devices in the second device group. When the at least two data blocks are transmitted to the target second device and the second devices in the second device group, the first device completes the process of sending the to-be-sent file to the target second device and the second devices in the second device group in the serial data transmission mode.

[0184] In this way, in the embodiment of the present application, the first device can divide the to-be-sent file into at least two data blocks, and send each data block to the plurality of second devices as target data in turn, so that the plurality of second devices can receive part of the data in the to-be-sent file in a short time, thereby reducing the waiting time of the plurality of second devices and improving the user's data transmission experience.

[0185] It should be understood that when the first device divides the file to be sent into at least two data blocks according to the preset size, the size of at least one of the at least two data blocks is the preset size.

[0186] For example, assuming that the first device determines that the data amount of the file to be sent is 100 Mb (Mega bit), the preset threshold is 50 Mb, and the preset size is 30 Mb. The first device can determine that the data amount of the file to be sent is greater than the preset threshold, and can divide the file to be sent into four data blocks, namely data block a, data block b, data block c and data block d, according to the preset size. The sizes of data block a, data block b and data block c are all 30 Mb, and the size of data block d is 10 Mb. Since the first device has not started to send target data to the target second device and the second devices in the second device group, data block a, data block b, data block c and data block d are all first data blocks, and the first device can take data block a as the target first data block among data block a, data block b, data block c and data block d. Taking the target first data block as the target data, that is, taking data block a as the target data, and sending the target data to the target second device and the second devices in the second device group in a serial data transmission manner. For example, data block a can be sent to the target second device first, and then data block a is sent to the second devices in the second device group after the sending to the target second device is completed. After the sending to the second devices in the second device group is completed, the first device can update data block b, data block c and data block d to first data blocks among data block a, data block b, data block c and data block d. The first device can take data block b as the target first data block among data block b, data block c and data block d. Taking the target first data block as the target data, that is, taking data block b as the target data, and sending the target data to the target second device and the second devices in the second device group in a serial data transmission manner. The process of sending data block a to the target second device and the second devices in the second device group in a serial data transmission manner can be referred to and will not be described here again. After the sending of data block b to the target second device and the second devices in the second device group in a serial data transmission manner is completed, the first device can update data block c and data block d to first data blocks among data block a, data block b, data block c and data block d. The first device can take data block c as the target first data block among data block c and data block d. Taking the target first data block as the target data, that is, taking data block c as the target data, and sending the target data to the target second device and the second devices in the second device group in a serial data transmission manner. The process of sending data block a to the target second device and the second devices in the second device group in a serial data transmission manner can be referred to and will not be described here again. After the sending of data block c to the target second device and the second devices in the second device group in a serial data transmission manner is completed, the first device can update data block d to a first data block among data block a, data block b, data block c and data block d. The first device can take data block d as the target first data block.The target first data block is taken as the target data, that is, the data block c is taken as the target data, and the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner. For details, refer to the process of sending the data block a to the target second device and the second devices in the second device group in a serial data transmission manner, which is not described herein again. After the data block c is sent to the target second device and the second devices in the second device group in a serial data transmission manner, the first device can determine that the data block a, the data block b, the data block c, and the data block d have all been transmitted to the target second device and the second devices in the second device group, and the first device can determine that the file to be sent is transmitted completely.

[0187] In some embodiments, when the first device determines the target data block in the first data block, the first device can determine the target data block in each first data block in sequence according to the division order of the data blocks, as described in the above example. Alternatively, in some other embodiments, the first device can randomly select a first data block as the target data block in the first data block. Of course, the first device can also determine the target data block in the first data block in other manners, which are not limited in the embodiments of the present application.

[0188] It should be noted that the preset threshold and the preset size are both preset by a user according to actual needs, and the embodiments of the present application do not limit this.

[0189] As a possible implementation manner, as shown in FIG. 4, the above sending the target data to the target second device includes:

[0190] Step 401, receiving the receiving confirmation information sent by the target second device.

[0191] In the embodiments of the present application, generally, before the first device sends the target data to the second device, the second device can send the receiving confirmation message to the first device, that is, before the first device sends the target data to the second device, the user of the second device needs to confirm whether to receive. If receiving, the second device can send the receiving confirmation information to the first device. The first device will not transmit the target data to the second device until receiving the receiving confirmation information. Based on this, when the user of the target second device confirms to receive the target data, the user can send the receiving confirmation information to the first device. At this time, the first device can receive the receiving confirmation information sent by the target second device.

[0192] Step 402, when the first device is sending the target data to other second devices, determining whether the other second devices and the target second device that are performing the target data transmission are devices performing data transmission in a parallel data transmission manner.

[0193] In the embodiment of the present application, after receiving the receiving confirmation information of the target second device, the first device can be transmitting data to other second devices. At this time, the first device can confirm whether the second device being transmitting data and the target second device are both devices transmitting data in parallel. If both the second device being transmitting data and the target second device are devices transmitting data in parallel, the first device can transmit target data to the target second device while transmitting data to other second devices. If at least one of the second device being transmitting data and the target second device is not a device transmitting data in parallel, the first device needs to wait until the second device being transmitting data completes data transmission before transmitting target data to the target second device.

[0194] In the step S302b, it is determined that the target second device needs to transmit target data to other second devices in serial data transmission, that is, the first device can determine that the target second device is not a device transmitting data in parallel.

[0195] In step S403, if no, the information of the target second device is stored in the waiting queue according to a preset rule.

[0196] In the embodiment of the present application, when the first device determines that the target device transmits target data in serial data transmission and is not a device transmitting data in parallel, the first device cannot transmit target data of the target second device because it is currently transmitting data to other second devices. Therefore, the first device can store the information of the target second device in the waiting queue according to a preset rule.

[0197] In the embodiment of the present application, the first device can store the information of the target second device in the waiting queue according to the time sequence of receiving the confirmation information.

[0198] Of course, the preset rule can also be other rules, such as the transmission mode of the device, which is not limited in the embodiment of the present application.

[0199] In step S404, when the first device completes transmitting data to other second devices, it can detect whether there is information of a device to be transmitted in the waiting queue.

[0200] In the embodiment of the present application, after the first device completes transmitting data to other devices, it needs to detect whether there is information of a device to be transmitted in the waiting queue.

[0201] In step S405a, if yes, the information of the device with data to be sent is obtained in the waiting queue in the storage order. If the information of the target second device is obtained, the target data is sent to the target second device only based on the information of the target second device.

[0202] In the embodiment of the present application, after the first device completes sending the target data to the other second devices, the information of the device with data to be sent is obtained in the waiting queue. If the information of the target second device is obtained in the waiting queue in the storage order, the target data is sent to the target second device according to the information of the second device. Since the target second device is a device that performs data transmission in the serial data transmission mode, the first device no longer sends data to the other second devices when the target data is sent to the target second device.

[0203] In step S405b, if no, it is detected whether the sending of the target data to the plurality of second devices is completed.

[0204] In the embodiment of the present application, when the first device determines whether there is information of the device with data to be transmitted in the waiting queue, there is information of the device without data to be transmitted in the waiting queue. At this time, the first device can detect whether the sending of the target data to the plurality of second devices is completed. If the sending of the target data to the plurality of second devices is completed, it is determined that the transmission of the target data is received. If the sending of the target data to at least one second device is not completed, the confirmation information of the at least one second device needs to be waited for.

[0205] As a possible implementation manner, in order to improve the data transmission experience of the first type device, the above sending of the target data to the target second device comprises:

[0206] In the process of sending the target data to the target second device, if the receiving confirmation information sent by at least two first type devices is received, the sending of the target data to the target second device is interrupted, the target data is sent to the at least two first type devices in the parallel data transmission mode, and when the parallel data transmission is completed, the sending of the target data to the target second device is resumed.

[0207] In the embodiment of the present application, in the process of sending the target data to the target second device, if the first device receives the receiving confirmation information sent by at least two first type devices, the first device can interrupt the current sending of the target data to the target second device, send the target data to the at least two first type devices in the parallel data transmission mode, and after the sending of the target data to the at least two first type devices is completed, the sending of the target data to the target second device can be resumed and the target data is continuously sent to the target second device. In this way, the data transmission rate of the first type device that performs data transmission in the parallel data transmission mode can be improved.

[0208] For example, the first device establishes a wireless direct connection with four second devices, i.e., a second device a, a second device b, a second device c and a second device d. The working channel of the wireless direct connection between the first device and the second device a, the second device b, the second device c and the second device d is channel s. The second device a among the four second devices establishes a second wireless connection with the router, and the working channel of the second wireless connection is channel k. The second device b establishes a second wireless connection with the router, and the working channel of the second wireless connection is channel k. The second device c establishes a second wireless connection with the router, and the working channel of the second wireless connection is channel s. The second device d establishes a second wireless connection with the router, and the working channel of the second wireless connection is channel s. That is, among the four second devices, the second device a and the second device b are in the same frequency different channel working mode, and the second device c and the second device d are in the same frequency same channel working mode, as shown in FIG. 5. The first device can obtain the data receiving capability information of the four second devices. In this example, the data receiving capability information is taken as the working channel information of the second device. The first device can obtain the working channel information of the second device a and the second device b as two channels in the working state, and the first device can obtain the working channel information of the second device c and the second device d as one channel in the working state. Assuming that the preset information obtained by the first device is that only one channel is in the working state. The first device can obtain the working channel information of the second device a and the second device b as two channels in the working state, which indicates that the second device a and the second device b are both in the same frequency different channel working mode. At this time, the first device can determine that the data receiving capability information of the second device a and the second device b does not conform to the preset information, and determines the second device a and the second device b as the second type of device. The first device can obtain the working channel information of the second device c and the second device d as one channel in the working state, which indicates that the second device c and the second device d are both in the same frequency same channel working mode. At this time, the first device can determine that the second device c and the second device d conform to the preset information, and determines the second device c and the second device d as the first type of device. The first device can take the second device a as a target second device, and take the second device b, the second device c and the second device d as the second devices in the second device group, and transmit target data to the second device a and the second devices in the second device group in the serial data transmission mode. When transmitting the target data to the second devices in the second device group, since the second device b is the second type of device, the first device can determine to transmit the target data to the second device b and other second devices in the second device group in the serial data transmission mode. Moreover, when transmitting the target data to the other second devices in the second device group, since the second device c and the second device d are both the first type of device, the first device can determine to transmit the target data to the second device c and the second device d in the parallel data transmission mode.

[0209] Assuming that the first device receives the receiving confirmation information of the second device c first, the first device does not transmit data to other devices, and the first device can transmit target data to the second device c. During the process that the first device transmits target data to the second device c, the receiving confirmation information of the second device a is received. Since the second device a is a device that transmits target data in a serial data transmission manner, the second device a cannot transmit target data to the second device c in parallel. At this time, the first device can store the information of the second device a in the waiting queue according to the time of the receiving confirmation information of the second device a. If the first device receives the receiving confirmation information of the second device d. At this time, the second device c and the second device d are devices that transmit target data in a parallel data transmission manner, so the first device can transmit target data to the second device d while transmitting target data to the second device c. After the first device completes the transmission of target data to the second device c and the second device d, the information of the second device a can be obtained from the waiting queue according to the storage time, and target data can be transmitted to the second device a according to the information of the second device a, and target data is no longer transmitted to other devices when the second device a transmits target data. After completing the transmission of target data to the second device a, there is no information of the second device in the waiting queue, and at this time the first device detects that the second device b has not transmitted target data, and waits to receive the receiving confirmation information of the second device b. After receiving the receiving confirmation information of the second device b, target data is transmitted to the second device b, and target data is no longer transmitted to other devices when the second device b transmits target data. After completing the transmission of target data to the second device b, the first device detects that there is no information of the device to be transmitted in the waiting queue, and can further determine whether the target data is transmitted to the four second devices. If target data is not transmitted to the second device b, the receiving confirmation information of the second device b needs to be waited. After receiving the receiving confirmation information of the second device b, target data can be transmitted to the second device b, as shown in FIG. 6.

[0210] As a possible implementation manner, as shown in FIG. 7, the method further includes:

[0211] In step S303, whether the plurality of second devices meet the preset information is determined according to the data receiving capability information of the plurality of second devices.

[0212] In the embodiments of the present application, the first device needs to determine the data transmission mode to the second device according to whether the second device meets the preset information. When the second device meets the preset information, it means that the second device supports the parallel data transmission mode with other devices and does not reduce the data transmission rate. When the second device does not meet the preset information, in order to ensure the data transmission rate, the first device needs to send the target data to the second device and other devices through the serial data transmission mode. Therefore, the first device needs to determine whether each second device meets the preset information before transmitting the target data to the multiple second devices, and then determines the transmission mode of each second device.

[0213] In some embodiments, for each of the multiple second devices, when the data reception capability information of the second device includes the working channel information of the second device, if the working channel information of the second device represents that the second device is in the same frequency different channel, it is determined that the data reception capability information of the second device does not meet the preset information. Or,

[0214] When the data reception capability information of the second device includes the hardware transmission capability information of the second device, if the difference between the hardware transmission capability of the second device and the hardware transmission capability of other second devices does not meet the first preset threshold, it is determined that the data reception capability information of the second device does not meet the preset information. Or,

[0215] When the data reception capability information of the second device includes the device specification information of the second device, if the difference between the device specification of the second device and the device specification of other second devices does not meet the second preset threshold, it is determined that the data reception capability information of the second device does not meet the preset information. Or,

[0216] When the data reception capability information of the second device includes the signal quality information of the second device, if the difference between the signal quality of the second device and the signal quality of other second devices does not meet the third preset threshold, it is determined that the data reception capability information of the second device does not meet the preset information. Or,

[0217] When the data reception capability information of the second device includes the transmission distance information of the second device, if the difference between the transmission distance of the second device and the transmission distance of other second devices does not meet the fourth preset threshold, it is determined that the data reception capability information of the second device does not meet the preset information.

[0218] That is, the preset information is related to the data receiving information of the second device, and different data receiving capability information corresponds to different preset information. When the data receiving capability information of the second device includes the working channel information of the second device, if the working channel information of the second device indicates that the second device is in the same frequency different channel, for example, the working channel of the second device is two channels in the working state, and the two channels are signals of the same frequency, then the second device is a same frequency different channel device, at this time, it can be determined that the data receiving capability information of the second device does not satisfy the preset information. That is, when the data receiving capability information of the second device includes the working channel information of the second device, the preset information can be information that the second device is a same frequency same channel device. When the second device is a same frequency different channel device, it can be determined that the data receiving capability information of the second device does not satisfy the preset information, and the second device can be determined as a second type device, and the target data needs to be transmitted in a serial data transmission manner between the second device and other devices.

[0219] When the data receiving capability information of the second device includes the hardware transmission capability information of the second device, when the hardware transmission capability of the plurality of second devices is similar, the target data can be transmitted in a parallel data transmission manner to the plurality of second devices, so as to ensure the transmission rate of the data. The first device can compare the obtained hardware transmission capability information of the second device with the obtained hardware transmission capability information of other second devices, and when the difference between the hardware transmission capability of the second device and the hardware transmission capability of the other second devices obtained does not satisfy a first preset threshold, for example, is greater than the first preset threshold, it can be determined that the data receiving capability information of the second device does not satisfy the preset information. That is, when the data receiving capability information of the second device includes the hardware transmission capability information of the second device, the preset information can be that the difference between the hardware transmission capability of the second device satisfies the first preset threshold. When the difference between the hardware transmission capability information of the second device and the hardware transmission capability information of the other second devices does not satisfy the first preset threshold, the second device can be determined as a second type device, and the target data needs to be transmitted in a serial data transmission manner between the second device and other devices.

[0220] When the data receiving capability information of the second device comprises the device specification information of the second device, parallel data transmission can be used to send the target data to the multiple second devices when the device specification information of the multiple second devices is similar, so as to ensure the data transmission rate. The first device can compare the device specification information of the second device with the device specification information of the other second devices, and when the difference between the device specification information of the second device and the device specification information of the other second devices does not satisfy the second preset threshold, for example, is greater than the second preset threshold, it can be determined that the data receiving capability information of the second device does not satisfy the preset information. That is, when the data receiving capability information of the second device comprises the device specification information of the second device, the preset information can be that the difference between the device specification information of the second device satisfies the second preset threshold. When the difference between the device specification information of the second device and the device specification information of the other second devices does not satisfy the second preset threshold, it can be determined that the second device is a second type of device, and serial data transmission needs to be used to send the target data to the other devices.

[0221] When the data receiving capability information of the second device comprises the signal quality information of the second device, parallel data transmission can be used to send the target data to the multiple second devices when the signal quality information of the multiple second devices is similar, so as to ensure the data transmission rate. The first device can compare the signal quality information of the second device with the signal quality information of the other second devices, and when the difference between the signal quality information of the second device and the signal quality information of the other second devices does not satisfy the third preset threshold, for example, is greater than the third preset threshold, it can be determined that the data receiving capability information of the second device does not satisfy the preset information. That is, when the data receiving capability information of the second device comprises the signal quality information of the second device, the preset information can be that the difference between the signal quality information of the second device satisfies the third preset threshold. When the difference between the signal quality information of the second device and the signal quality information of the other second devices does not satisfy the third preset threshold, it can be determined that the second device is a second type of device, and serial data transmission needs to be used to send the target data to the other devices.

[0222] When the data receiving capability information of the second device includes the transmission distance information of the second device, the target data can be transmitted to the plurality of second devices in parallel when the transmission distance information of the plurality of second devices is similar, so that the transmission rate of the data can be ensured. The first device can compare the transmission distance information of the second device obtained by the first device with the transmission distance information of other second devices obtained by the first device. When the difference between the transmission distance of the second device and the transmission distance of the other second devices does not satisfy the fourth preset threshold value, for example, is greater than the fourth preset threshold value, it can be determined that the data receiving capability information of the second device does not satisfy the preset information. That is, when the data receiving capability information of the second device includes the transmission distance information of the second device, the preset information can be that the difference between the transmission distances of the second devices satisfies the fourth preset threshold value. When the difference between the transmission distance information of the second device and the transmission distance information of the other second devices does not satisfy the fourth preset threshold value, it can be determined that the second device is a second type of device, and the target data needs to be transmitted to the second device and the second devices in the second device group in a serial data transmission manner.

[0223] Of course, the data receiving capability information of the second device described above can also be other information, and the preset information can also be other information, and the embodiments of the present application do not limit this.

[0224] As a possible implementation manner, the method further includes:

[0225] transmitting transmission prompt information to the target second device.

[0226] The transmission prompt information is used to indicate that the first device transmits the target data to the target second device in a serial data transmission manner.

[0227] That is, when the first device determines that the target second device and the second devices in the second device group need to transmit the target data in a serial data transmission manner, the first device can transmit transmission prompt information to the target second device. Through the transmission prompt information, the user of the target second device can be informed that the first device transmits the target data to the target second device in a serial data transmission manner.

[0228] In some embodiments, the user of the first device can also set the data transmission manner of the target second device. At this time, when the first device determines to transmit the target data to the target second device and the second devices in the second device group in a serial data transmission manner, the first device can display prompt information in the display interface of the first device, for example, the first device can display the transmission of the target data to the target second device and the second devices in the second device group in a serial data transmission manner in a prompt box.

[0229] In some embodiments, the user of the first device can change the data transmission mode, for example, a determination button and a modification button can be displayed in a prompt box. If the user of the first device operates the determination button, it means that the user agrees to send the target data to the target second device and the second devices in the second device group in the serial data transmission mode, and the first device can send the target data to the target second device and the second devices in the second device group in the serial data transmission mode. If the user operates the modification button, it means that the user needs to modify the data transmission mode, and the user of the first device can modify the data transmission mode of sending the target data to the target second device and the second devices in the second device group, for example, from the serial data transmission mode to the parallel data transmission mode.

[0230] Of course, the method of modifying the data transmission mode by the user of the first device can also include other modes, for example, other modes such as setting items, and the like, which are not limited in the embodiments of the present application.

[0231] As a possible implementation, the above method, as shown in FIG. 8, further includes:

[0232] In step S304, the data receiving capability information of the plurality of second devices is reacquired.

[0233] In the embodiments of the present application, as the second devices move, the data receiving capability of the second devices also changes. The first device can reacquire the data receiving capability information of the plurality of second devices after a preset interval. The specific acquisition method can refer to step S301, which is not described here.

[0234] It should be understood that the preset interval can be set by the user according to actual needs, for example, 5 seconds, 1 second, and the like, which are not limited in the embodiments of the present application.

[0235] In step S305, if the data receiving capability information reacquired by the second type device satisfies the preset information, the second type device is updated to the first type device.

[0236] In the embodiments of the present application, if the data receiving capability information reacquired by the second type device satisfies the preset information, it means that the second type device can perform parallel data transmission with other second devices, and at this time, the first device can update the second type device to the first type device, so as to send the target data to other first type devices in the parallel data transmission mode. For example, if the data receiving capability information reacquired by the target second device satisfies the preset information, the target second device can be updated to the first type device, so as to send the target data to other first type devices in the parallel data transmission mode.

[0237] Thus, in the embodiment of the present application, by obtaining the data receiving capability information of the plurality of second devices, when there is a second device whose data receiving capability information does not satisfy the preset information among the plurality of second devices, the second device and other second devices can be sent target data in a serial data transmission manner. In this way, the possibility of low data transmission rate caused by parallel transmission of target data between the second device whose data receiving capability information does not satisfy the preset information and other second devices can be reduced, the data transmission rate of the first device to the plurality of second devices can be improved, and the throughput of data transmission can be improved. Furthermore, when the data receiving capability information of the second device satisfies the preset information, the second device can be updated to the first device, so that the first device can be sent target data in a parallel data transmission manner, the data transmission rate of target data can be further improved, and the throughput of data transmission can be further improved. That is, in the embodiment of the present application, the transmission rate of sending target data to the plurality of second devices can be effectively improved without increasing hardware cost, the transmission time can be reduced, and the user experience can be improved.

[0238] FIG. 9 is a flow diagram of data transmission provided by an embodiment of the present application. The method is applied to a data transmission system. The data transmission system includes a first device and a plurality of second devices. As shown in FIG. 9, the method includes:

[0239] Step S901, the first device and the plurality of second devices establish a wireless direct connection.

[0240] In the embodiment of the present application, the first device needs to send target data to the plurality of second devices, in order to improve the data transmission rate, the first device and the plurality of second devices can be established a wireless direct connection.

[0241] In some embodiments, the first device can send a request for wireless direct connection to the plurality of second devices, the second device receives the request for wireless direct connection, and establishes a wireless direct connection with the second device based on the request for wireless direct connection, sends a wireless direct connection response message to the first device, the first device receives the wireless direct connection response message, and determines that the establishment of the wireless direct connection with the second device is completed.

[0242] Step S902, the first device obtains data receiving capability information of the plurality of second devices.

[0243] For details, please refer to step S301, which will not be repeated here.

[0244] Step S903, the first device determines whether all the plurality of second devices are first devices based on the data receiving capability information of the plurality of second devices.

[0245] That is, the first device can compare the data receiving capability information of the plurality of second devices with preset information, determine whether the preset information is satisfied, take the second device whose data receiving capability information satisfies the preset information as the first type device, and take the second device whose data receiving capability information does not satisfy the preset information as the second type device.

[0246] When the plurality of second devices are all the first type devices, the following step S904a is performed, and when there is at least one second type device in the plurality of second devices, the following step S904b is performed.

[0247] In step S904a, if the plurality of second devices are all the first type devices, the target data is sent to the plurality of second devices in a parallel data transmission manner.

[0248] For details, refer to step S302a.

[0249] In step S904b, if there is at least one second type device in the plurality of second devices, the target second device and the second devices in the second device group are sent the target data in a serial data transmission manner.

[0250] The target second device is any one of the at least one second type device. The second devices in the second device group are the second devices in the plurality of second devices except the target second device and the second devices that have not transmitted the target data.

[0251] For details, refer to step S302a.

[0252] FIG. 10 is a flow diagram of data transmission provided by an embodiment of the present application. The method is applied to a data transmission system. The data transmission system includes a first device and a plurality of second devices. The software structure diagrams of the first device and the plurality of second devices can refer to FIG. 2b and FIG. 2c. The service management included in the first device and the second device includes a sharing application module, a sharing system service module, a soft bus transmission interface, and a soft bus system service module. As shown in FIG. 10, the method includes:

[0253] In step S1001, the sharing application module of the first device determines a second device for establishing a wireless direct connection in response to a selection operation of a user.

[0254] In step S1002, the sharing application module of the first device sends an IPC (Inter-Process Communication) message of a session establishment request to the sharing system service module.

[0255] In step S1003, the sharing system service module of the first device sends a request message for establishing a wireless direct connection with the second device to the soft bus transmission interface of the first device.

[0256] Step S1004, the soft bus transmission interface of the first device sends an IPC message of establishing a wireless direct connection with the second device to the soft bus system service module of the first device.

[0257] Step S1005, the soft bus system service module of the first device sends a request message of establishing a wireless direct connection to the soft bus system service module of the second device.

[0258] Step S1006, the soft bus system service module of the second device sends an IPC message of opening a transmission channel of the wireless direct connection to the soft bus transmission interface.

[0259] Step S1007, the soft bus transmission interface of the second device sends a communication channel binding message to the sharing system service module of the second device.

[0260] Step S1008, the soft bus transmission interface of the second device sends an IPC message of opening a transmission channel response to the soft bus system service module of the second device.

[0261] Step S1009, the soft bus system service module of the second device sends a response message of transmission channel information to the soft bus system service module of the first device.

[0262] Step S1010, the soft bus system service module of the first device sends an IPC message of opening a transmission channel response to the soft bus transmission interface of the first device.

[0263] Step S1011, the soft bus transmission interface of the first device sends a response message of transmission channel binding to the sharing system service module.

[0264] Step S1012, the sharing system service module of the second device obtains data receiving capability information of the second device from the underlying hardware, for example, obtains working channel information of the second device.

[0265] Step S1013, the sharing system service module of the second device sends the data receiving capability information of the second device to the sharing system service module of the first device through the wireless direct connection.

[0266] Step S1014, the sharing system service module of the first device determines the data transmission mode used when transmitting target data to the second device according to the data receiving capability information of the second device.

[0267] For example, it can be determined whether to send target data in parallel data transmission mode or in serial data transmission mode with other devices.

[0268] Step S1015, the sharing system service module of the first device can send the data transmission mode information of the second device to the user of the first device.

[0269] Step S1016, the sharing system service module of the first device can send the data transmission mode information of the second device to the sharing system service module of the second device through the wireless direct connection.

[0270] Step S1017, the sharing system service module of the second device can send the data transmission mode information of the second device to the user.

[0271] That is, after the first device and the second device establish the wireless direct communication, the second device can obtain the data receiving capability information through its underlying hardware, and transmit the data receiving capability information to the first device through the wireless direct connection. The service system service module in the first device can determine the data transmission mode between the second device and other second devices when sending the target data to the second device according to the data receiving capability information of the second device, as shown in FIG. 11.

[0272] Referring to FIG. 12, a flowchart of a data transmission method provided by an embodiment of the present application is shown. The method is applied to a first device, and the first device establishes a wireless direct connection with a plurality of second devices. As shown in FIG. 12, the method comprises:

[0273] Step S1201, obtaining data receiving capability information of a plurality of second devices.

[0274] For details, please refer to step S301, which will not be repeated here.

[0275] After obtaining the data receiving capability information of the second device, the first device can compare the data receiving capability information of the second device with the preset information to determine whether the second device meets the preset information.

[0276] When the first device determines that the plurality of second devices all meet the preset information, it can perform the following step S1202a. If it is determined that at least one second device in the plurality of second devices does not meet the preset information, it can perform the following steps S1202b-1203.

[0277] Step S1202a, if the plurality of second devices are all first-type devices, the target data is sent to the plurality of second devices in a parallel data transmission mode.

[0278] Among them, the first-type device is a second device in the plurality of second devices whose data receiving capability information meets the preset information.

[0279] For details, please refer to step S302a, which will not be repeated here.

[0280] Step S1202b, if there is at least one second-type device in the plurality of second devices, a disconnection instruction information is sent to the at least one second-type device to make the second-type device disconnect the wireless connection between the second-type device and other devices.

[0281] The second type of device is a second device in the plurality of second devices whose data receiving capability information does not satisfy the preset information.

[0282] In the embodiments of the present application, when there is at least one second type of device in the plurality of second devices, if the target data is sent to the plurality of second devices in a parallel data transmission manner, the data transmission rate of sending the target data to the plurality of second devices is reduced due to the presence of the second type of device in the plurality of second devices. In order to reduce the occurrence of the above situation, after determining that there is at least one second type of device in the plurality of second devices, the first device can send disconnection indication information to the at least one second type of device, so that the at least one second type of device can disconnect the wireless connection between the second type of device and other devices after receiving the disconnection indication information. For example, the at least one second type of device establishes wireless communication with a wireless access point, and at this time, the second type of device can disconnect the wireless communication between the second type of device and the wireless access point.

[0283] In some embodiments, the second type of device can send a disconnection response message to the first device after disconnecting the wireless connection between the second type of device and other devices, so as to inform the first device that the second type of device has disconnected the wireless connection between the second type of device and other devices.

[0284] Step S1203, the first device sends target data to the plurality of second devices in a parallel data transmission manner.

[0285] In the embodiments of the present application, after the at least one second type of device disconnects the wireless communication between the second type of device and other devices, the first device can send target data to the plurality of second devices in a parallel data transmission manner, so as to ensure the data transmission rate of sending the target data to the plurality of second devices.

[0286] In some embodiments, the data receiving capability information of the second device includes at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device, and transmission distance information of the second device.

[0287] In some embodiments, as shown in FIG. 13, the above method further includes:

[0288] Step S1204, the first device determines whether the plurality of second devices satisfy the preset information according to the data receiving capability information of the plurality of second devices.

[0289] In some embodiments, for each of the plurality of second devices, when the data receiving capability information of the second device includes working channel information of the second device, if the working channel information of the second device indicates that the second device is in a same frequency different channel, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Alternatively,

[0290] In a case where the data receiving capability information of the second device comprises the hardware transmission capability information of the second device, if the difference between the hardware transmission capability of the second device and the hardware transmission capability of the other second devices does not satisfy the first preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Alternatively,

[0291] In a case where the data receiving capability information of the second device comprises the device specification information of the second device, if the difference between the device specification of the second device and the device specification of the other second devices does not satisfy the second preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Alternatively,

[0292] In a case where the data receiving capability information of the second device comprises the signal quality information of the second device, if the difference between the signal quality of the second device and the signal quality of the other second devices does not satisfy the third preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Alternatively,

[0293] In a case where the data receiving capability information of the second device comprises the transmission distance information of the second device, if the difference between the transmission distance of the second device and the transmission distance of the other second devices does not satisfy the fourth preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information.

[0294] The specific implementation can refer to the step S303 and will not be described here.

[0295] In some embodiments, the first device further establishes a first wireless connection with a first other device, and the second device further establishes a second wireless connection with a second other device; the first wireless connection works on the same channel as the wireless direct connection, and the second wireless connection works on a channel different from the channel on which the wireless direct connection works. That is, the second device is in a same-frequency different-channel working state.

[0296] In this way, in the embodiments of the present application, by obtaining the data receiving capability information of the plurality of second devices, when there is a second device whose data receiving capability information does not satisfy the preset information among the plurality of second devices, the second device can be sent with the disconnection indication information so that the second device can disconnect the wireless communication with other devices. In this way, the target data can be transmitted to the plurality of second devices in a parallel data transmission manner, which can improve the data transmission rate of the target data, and further improve the throughput of data transmission and the user experience.

[0297] Referring to FIG. 14, a structural schematic diagram of a data transmission apparatus provided by an embodiment of the present application is shown. The data transmission apparatus is applied to a first device, and the first device establishes a wireless direct connection with a plurality of second devices. As shown in FIG. 14, the data transmission apparatus comprises:

[0298] The acquisition unit 1401 is configured to acquire data receiving capability information of a plurality of second devices.

[0299] The processing unit 1402 is configured to, if the plurality of second devices are all first-type devices, send target data to the plurality of second devices in a parallel data transmission manner.

[0300] The first-type device is a second device in the plurality of second devices whose data receiving capability information meets preset information.

[0301] The processing unit 1402 is further configured to, if there is at least one second-type device in the plurality of second devices, send the target data to a target second device and a second device in a second device group in a serial data transmission manner.

[0302] The second-type device is a second device in the plurality of second devices whose data receiving capability information does not meet the preset information, the target second device is any one of the at least one second-type device, and the second device group includes second devices in the plurality of second devices except the target second device.

[0303] As a possible implementation, the data receiving capability information of the second device includes at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device, and transmission distance information of the second device.

[0304] As a possible implementation, the processing unit 1402 is further configured to, for each of the plurality of second devices, if the data receiving capability information of the second device includes the working channel information of the second device, and the working channel information of the second device indicates that the second device is in a same-frequency different-channel, determine that the data receiving capability information of the second device does not meet the preset information. Or,

[0305] If the data receiving capability information of the second device includes the hardware transmission capability information of the second device, and a difference between the hardware transmission capability of the second device and hardware transmission capability of another second device does not meet a first preset threshold, it is determined that the data receiving capability information of the second device does not meet the preset information. Or,

[0306] If the data receiving capability information of the second device includes the device specification information of the second device, and a difference between the device specification of the second device and device specification of another second device does not meet a second preset threshold, it is determined that the data receiving capability information of the second device does not meet the preset information. Or,

[0307] When the data receiving capability information of the second device includes the signal quality information of the second device, if the difference between the signal quality of the second device and the signal quality of the other second devices does not satisfy the third preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Or,

[0308] When the data receiving capability information of the second device includes the transmission distance information of the second device, if the difference between the transmission distance of the second device and the transmission distance of the other second devices does not satisfy the fourth preset threshold, it is determined that the data receiving capability of the second device.

[0309] As a possible implementation, if there are at least two second-class devices in the plurality of second devices, the processing unit 1402 is specifically configured to send the target data to the target second device and the second devices in the second device group in a serial data transmission manner, and when sending the target data to the second devices in the second device group, send the target data to the second-class devices in the second device group and the other second devices in the second device group in a serial data transmission manner.

[0310] As a possible implementation, when the second device group includes at least two first-class devices, the processing unit 1402 is specifically configured to send the target data to the at least two first-class devices in a parallel data transmission manner.

[0311] As a possible implementation, the processing unit 1402 is specifically configured to send the transmission prompt information to the target second device.

[0312] The transmission prompt information is used to instruct the first device to send the target data to the target second device in a serial data transmission manner.

[0313] As a possible implementation, when the data amount of the to-be-sent file is not greater than a preset threshold, the processing unit 1402 is specifically configured to take the data of the to-be-sent file as the target data, and send the target data to the target second device and the second devices in the second device group in a serial data transmission manner.

[0314] When the data amount of the to-be-sent file is greater than the preset threshold, the data of the to-be-sent file is divided into at least two data blocks according to a preset size.

[0315] The target first data block is determined in a first data block of the at least two data blocks, the target first data block is taken as the target data, and the target data is sent to the target second device and the second devices in the second device group in a serial data transmission manner, until the at least two data blocks are transmitted to the target second device and the second devices in the second device group.

[0316] The first data block is a data block that is not transmitted to the plurality of second devices in the at least two data blocks.

[0317] As a possible implementation manner, the processing unit 1402 is specifically configured to receive the receiving confirmation information sent by the target second device; when the first device is sending target data to other second devices, determine whether the other second devices and the target second device which are in the process of sending target data are devices which perform data transmission in a parallel data transmission manner; if not, store the information of the target second device to a waiting queue according to a preset rule; when the first device completes sending target data to the other second devices, if the information of the target second device is obtained in the waiting queue according to the storage order, send target data to the target second device based on the information of the target second device.

[0318] As a possible implementation manner, the processing unit 1402 is specifically configured to, in the process of sending target data to the target second device, if receiving receiving confirmation information sent by at least two first-class devices, interrupt sending target data to the target second device, send target data to the at least two first-class devices in a parallel data transmission manner, and when the parallel data transmission is completed, resume sending target data to the target second device.

[0319] As a possible implementation manner, the processing unit 1402 is further configured to reacquire data receiving capability information of the plurality of second devices; if the data receiving capability information reacquired by the second-class device meets preset information, update the second-class device to a first-class device.

[0320] As a possible implementation manner, the first device further establishes a first wireless connection with a first other device, and the second device further establishes a second wireless connection with a second other device; the first wireless connection works in the same channel as the wireless direct connection, and the second wireless connection works in a channel different from the channel in which the wireless direct connection works.

[0321] Referring to FIG. 15, a structural schematic diagram of a data transmission device provided by an embodiment of the present application is shown. The data transmission device is applied to a first device, and the first device establishes a wireless direct connection with a plurality of second devices. As shown in FIG. 15, the data transmission device includes:

[0322] The obtaining unit 1501 is configured to obtain data receiving capability information of the plurality of second devices.

[0323] The processing unit 1502 is configured to, if the plurality of second devices are all first-class devices, send target data to the plurality of second devices in a parallel data transmission manner.

[0324] The first-class device is a second device in the plurality of second devices whose data receiving capability information meets preset information.

[0325] The processing unit 1502 is further configured to send disconnection indication information to at least one second-type device, so as to make the second-type device disconnect the wireless connection between the second-type device and other devices, if there is at least one second-type device in the plurality of second devices.

[0326] The second-type device is a second device in the plurality of second devices whose data receiving capability information does not satisfy the preset information.

[0327] The processing unit 1502 is further configured to send target data to the plurality of second devices in a parallel data transmission manner.

[0328] As a possible implementation, the data receiving capability information of the second device includes at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device, and transmission distance information of the second device.

[0329] As a possible implementation, the processing unit 1502 is further configured to, for each of the plurality of second devices, if the data receiving capability information of the second device includes the working channel information of the second device, and if the working channel information of the second device indicates that the second device is in a same-frequency different-channel, determine that the data receiving capability information of the second device does not satisfy the preset information. Or,

[0330] If the data receiving capability information of the second device includes the hardware transmission capability information of the second device, and if a difference between the hardware transmission capability of the second device and the hardware transmission capability of other second devices does not satisfy a first preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Or,

[0331] If the data receiving capability information of the second device includes the device specification information of the second device, and if a difference between the device specification of the second device and the device specification of other second devices does not satisfy a second preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Or,

[0332] If the data receiving capability information of the second device includes the signal quality information of the second device, and if a difference between the signal quality of the second device and the signal quality of other second devices does not satisfy a third preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information. Or,

[0333] If the data receiving capability information of the second device includes the transmission distance information of the second device, and if a difference between the transmission distance of the second device and the transmission distance of other second devices does not satisfy a fourth preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information.

[0334] As a possible implementation, the first device further establishes a first wireless connection with a first other device, and the second device further establishes a second wireless connection with a second other device; the first wireless connection is in the same channel as the sidelink connection, and the second wireless connection is in a different channel from the sidelink connection.

[0335] Corresponding to the above-mentioned embodiments, the present application further provides an electronic device. FIG. 16 is a structural schematic diagram of an electronic device provided by an embodiment of the present application. The electronic device can include a processor 1601, a memory 1602, and a communication unit 1603. These components communicate through one or more buses. Those skilled in the art can understand that the structure of the server shown in the figure does not constitute a limitation on the embodiments of the present application. It can be a bus structure or a star structure. It can also include more or fewer components than shown in the figure, or combine some components or different component arrangements.

[0336] The communication unit 1603 is configured to establish a communication channel, so that the storage device can communicate with other devices. It receives user data sent by other devices or sends user data to other devices.

[0337] The processor 1601 is the control center of the storage device. It connects various parts of the electronic device through various interfaces and lines, executes or runs software programs and / or modules stored in the memory 1602, and calls data stored in the memory, to perform various functions of the electronic device and / or process data. The processor can be composed of integrated circuits (ICs). For example, it can be composed of a single packaged IC, or it can be composed of multiple packaged ICs with the same function or different functions connected. For example, the processor 1601 can only include a central processing unit (CPU). In the embodiments of the present application, the CPU can be a single operation core or can include multiple operation cores.

[0338] The memory 1602 is configured to store execution instructions for the processor 1601. The memory 1602 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk, or optical disk.

[0339] When the execution instructions in the memory 1602 are executed by the processor 1601, the electronic device can perform some or all of the steps in the embodiments shown in the above-mentioned embodiments.

[0340] In particular implementations, the present application further provides a computer storage medium, wherein the computer storage medium can store a program, and the program can include some or all steps in the embodiments of the data transmission method provided by the present application when executed. The storage medium can be a disk, an optical disk, a read-only memory (ROM), a random access memory (RAM), or the like.

[0341] The embodiments of the present application further provide a computer program product, which contains executable instructions, and when the computer program product is run on an electronic device, the electronic device executes the communication method provided by the foregoing embodiments.

[0342] Those skilled in the art can clearly understand that the technologies in the embodiments of the present application can be realized by means of software plus necessary general hardware platforms. Based on such understanding, the technical solutions in the embodiments of the present application can be embodied in the form of a software product, and the computer software product can be stored in a storage medium, such as a ROM / RAM, a magnetic disk, an optical disk, or the like, and includes a plurality of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute the methods described in the embodiments of the present application or some parts of the embodiments.

[0343] The same or similar parts among the various embodiments in the present specification can be referred to each other. In particular, for the device embodiments and the terminal embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the description in the method embodiments.

Claims

1. A data transmission method, characterized by, The method is applied to a first device, and the first device establishes a wireless direct connection with a plurality of second devices respectively, and the method comprises: obtaining data receiving capability information of the plurality of second devices; if the plurality of second devices are all first type devices, transmitting target data to the plurality of second devices in a parallel data transmission mode; the first type devices are the second devices in the plurality of second devices whose data receiving capability information meets preset information; if there is at least one second type device in the plurality of second devices, transmitting target data to a target second device and the second devices in a second device group in a serial data transmission mode; the second type devices are the second devices in the plurality of second devices whose data receiving capability information does not meet preset information, the target second device is any one of the at least one second type device, and the second device group comprises the second devices in the plurality of second devices except the target second device and the second devices which have not transmitted the target data.

2. The method of claim 1, wherein, The data receiving capability information of the second device comprises at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device, and transmission distance information of the second device.

3. The method of claim 2, wherein, The method further comprises: for each of the plurality of second devices, if the working channel information of the second device indicates that the second device is in a same frequency different channel when the data receiving capability information of the second device comprises the working channel information of the second device, it is determined that the data receiving capability information of the second device does not meet preset information; or, if the difference between the hardware transmission capability of the second device and the hardware transmission capability of other second devices does not meet a first preset threshold when the data receiving capability information of the second device comprises the hardware transmission capability information of the second device, it is determined that the data receiving capability information of the second device does not meet preset information; or, if the difference between the device specification of the second device and the device specification of other second devices does not meet a second preset threshold when the data receiving capability information of the second device comprises the device specification information of the second device, it is determined that the data receiving capability information of the second device does not meet preset information; or, if the difference between the signal quality of the second device and the signal quality of other second devices does not meet a third preset threshold when the data receiving capability information of the second device comprises the signal quality information of the second device, it is determined that the data receiving capability information of the second device does not meet preset information; or, if the difference between the transmission distance of the second device and the transmission distance of other second devices does not meet a fourth preset threshold when the data receiving capability information of the second device comprises the transmission distance information of the second device, it is determined that the data receiving capability information of the second device does not meet preset information.

4. The method according to any one of claims 1 to 3, characterized in that, if there are at least two second type devices in the plurality of second devices, the transmitting target data to the target second device and the second devices in the second device group in the serial data transmission mode comprises: The target data is sent to the target second device and the second device in the second device group in a serial data transmission mode, and when the target data is sent to the second device in the second device group, the target data is sent to the second device in the second device group and other second devices in the second device group in a serial data transmission mode.

5. The method according to any one of claims 1 to 4, characterized in that, When the second device group includes at least two first devices, the target data is sent to the second device in the second device group includes: The target data is sent to the at least two first devices in a parallel data transmission mode.

6. The method according to any one of claims 1 to 5, characterized in that, Further comprising: Sending transmission prompt information to the target second device; The transmission prompt information is used to instruct the first device to send target data to the target second device in a serial data transmission mode.

7. The method according to any one of claims 1 to 6, characterized in that, The target data is sent to the target second device and the second device in the second device group in a serial data transmission mode includes: When the data amount of the to-be-sent file is not greater than a preset threshold, the data of the to-be-sent file is taken as the target data, and the target data is sent to the target second device and the second device in the second device group in a serial data transmission mode; When the data amount of the to-be-sent file is greater than a preset threshold, the data of the to-be-sent file is divided into at least two data blocks according to a preset size; A target first data block is determined in a first data block of the at least two data blocks, the target first data block is taken as the target data, and the target data is sent to the target second device and the second device in the second device group in a serial data transmission mode until the at least two data blocks are transmitted to the target second device and the second device in the second device group; wherein the first data block is a data block that is not transmitted to the plurality of second devices.

8. The method according to any one of claims 1 to 7, characterized in that, The target data is sent to the target second device includes: Receiving receiving confirmation information sent by the target second device; When the first device is sending target data to other second devices, it is determined whether the other second devices and the target second device that are performing target data transmission are devices that perform data transmission in a parallel data transmission mode; If not, the information of the target second device is stored in a waiting queue according to a preset rule; When the first device completes sending target data to other second devices, if the information of the target second device is obtained in the waiting queue according to the storage order, the target data is only sent to the target second device based on the information of the target second device.

9. The method according to any one of claims 1 to 8, characterized in that, The target data is sent to the target second device includes: During the process of sending target data to the target second device, if receiving confirmation information sent by at least two first devices, interrupting sending the target data to the target second device, sending target data to the at least two first devices in a parallel data transmission mode, and resuming sending the target data to the target second device when the parallel data transmission is completed.

10. The method according to any one of claims 1 to 9, characterized in that, Further comprising: Reacquiring data receiving capability information of the plurality of second devices; If the data receiving capability information re-acquired by the second type of device satisfies preset information, the second type of device is updated to a first type of device.

11. The method according to any one of claims 1 to 10, characterized in that, The first device also establishes a first wireless connection with a first other device, and the second device also establishes a second wireless connection with a second other device; the first wireless connection works on the same channel as the wireless direct connection, and the channel on which the second wireless connection works is different from the channel on which the wireless direct connection works.

12. A data transmission method, characterized by, The method is applied to a first device, and the first device establishes a wireless direct connection with a plurality of second devices respectively, and the method comprises: acquiring data receiving capability information of the plurality of second devices; if all the plurality of second devices are first type of devices, sending target data to the plurality of second devices in a parallel data transmission manner; the first type of device is the second device in the plurality of second devices whose data receiving capability information satisfies preset information; if there is at least one second type of device in the plurality of second devices, sending disconnection indication information to the at least one second type of device, so that the second type of device disconnects the wireless connection between the second type of device and other devices; the second type of device is the second device in the plurality of second devices whose data receiving capability information does not satisfy preset information; sending target data to the plurality of second devices in a parallel data transmission manner.

13. The method of claim 12, wherein, The data receiving capability information of the second device comprises at least one of working channel information of the second device, hardware transmission capability information of the second device, device specification information of the second device, signal quality information of the second device, and transmission distance information of the second device.

14. The method of claim 12, wherein, The method further comprises: for each of the plurality of second devices, if the working channel information of the second device indicates that the second device is in a same frequency different channel when the data receiving capability information of the second device comprises the working channel information of the second device, it is determined that the data receiving capability information of the second device does not satisfy preset information; or, if the difference between the hardware transmission capability of the second device and the hardware transmission capability of other second devices does not satisfy a first preset threshold when the data receiving capability information of the second device comprises the hardware transmission capability information of the second device, it is determined that the data receiving capability information of the second device does not satisfy preset information; or, if the difference between the device specification of the second device and the device specification of other second devices does not satisfy a second preset threshold when the data receiving capability information of the second device comprises the device specification information of the second device, it is determined that the data receiving capability information of the second device does not satisfy preset information; or, if the difference between the signal quality of the second device and the signal quality of other second devices does not satisfy a third preset threshold when the data receiving capability information of the second device comprises the signal quality information of the second device, it is determined that the data receiving capability information of the second device does not satisfy preset information; or, if the difference between the transmission distance of the second device and the transmission distance of other second devices does not satisfy a fourth preset threshold when the data receiving capability information of the second device comprises the transmission distance information of the second device, it is determined that the data receiving capability information of the second device does not satisfy preset information. When the data receiving capability information of the second device includes the transmission distance information of the second device, if the difference between the transmission distance of the second device and the transmission distance of other second devices does not satisfy a fourth preset threshold, it is determined that the data receiving capability information of the second device does not satisfy the preset information.

15. The method according to any one of claims 12-14, characterized in that, The first device also establishes a first wireless connection with a first other device, and the second device also establishes a second wireless connection with a second other device; the first wireless connection and the wireless direct connection work on the same channel, and the second wireless connection works on a channel different from the channel on which the wireless direct connection works.

16. A data transmission apparatus, characterized by comprising: The data transmission device applied to a first device, the first device establishes a wireless direct connection with a plurality of second devices respectively, and the data transmission device comprises: an acquisition unit configured to acquire data receiving capability information of the plurality of second devices; a processing unit configured to, if all the plurality of second devices are first-type devices, send target data to the plurality of second devices in a parallel data transmission manner; the first-type devices are the second devices in the plurality of second devices whose data receiving capability information satisfies preset information. The processing unit is further configured to, if there is at least one second-type device in the plurality of second devices, send target data to a target second device and the second devices in a second device group in a serial data transmission manner; the second-type devices are the second devices in the plurality of second devices whose data receiving capability information does not satisfy the preset information, the target second device is any one of the at least one second-type device, and the second device group includes the second devices in the plurality of second devices except the target second device.

17. A data transmission apparatus, characterized by comprising: The data transmission device applied to a first device, the first device establishes a wireless direct connection with a plurality of second devices respectively, and the data transmission device comprises: an acquisition unit configured to acquire data receiving capability information of the plurality of second devices; a processing unit configured to, if all the plurality of second devices are first-type devices, send target data to the plurality of second devices in a parallel data transmission manner; the first-type devices are the second devices in the plurality of second devices whose data receiving capability information satisfies preset information. The processing unit is further configured to, if there is at least one second-type device in the plurality of second devices, send disconnection indication information to the at least one second-type device, so that the second-type devices disconnect the wireless connections between the second-type devices and other devices; the second-type devices are the second devices in the plurality of second devices whose data receiving capability information does not satisfy the preset information. The processing unit is further configured to send target data to the plurality of second devices in a parallel data transmission manner.

18. An electronic device, comprising: An electronic device comprising a memory for storing computer program instructions and a processor for executing the program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to execute the method of any one of claims 1-11, or execute the method of any one of claims 12-15.

19. A computer-readable storage medium, characterized in that, The computer readable storage medium includes a stored program, wherein the program, when executed, controls a device in which the computer readable storage medium is located to perform the method of any one of claims 1-11, or to perform the method of any one of claims 12-15.

Citation Information

Patent Citations

  • WiFi P2P connection method, electronic device, program product and medium

    CN113645693A

  • Facilitating sidelink-based relaying and multi-connectivity in advanced networks

    US20230012849A1

  • Data transmission method, terminal device, and network device

    WO2021207946A1

  • Multiple paths

    WO2024091565A1