WO2019218282A1 - 一种数据传输方法及终端 - Google Patents
一种数据传输方法及终端 Download PDFInfo
- Publication number
- WO2019218282A1 WO2019218282A1 PCT/CN2018/087153 CN2018087153W WO2019218282A1 WO 2019218282 A1 WO2019218282 A1 WO 2019218282A1 CN 2018087153 W CN2018087153 W CN 2018087153W WO 2019218282 A1 WO2019218282 A1 WO 2019218282A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- terminal
- data
- usb
- connection
- interface
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/04—Terminal devices adapted for relaying to or from another terminal or user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/18—Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
- H04W8/20—Transfer of user or subscriber data
- H04W8/205—Transfer to or from user equipment or user record carrier
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W92/00—Interfaces specially adapted for wireless communication networks
- H04W92/16—Interfaces between hierarchically similar devices
- H04W92/18—Interfaces between hierarchically similar devices between terminal devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0042—Universal serial bus [USB]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Definitions
- the present application relates to the field of terminals, and in particular, to a data transmission method and a terminal.
- Wi-Fi wireless fidelity
- the data transmission speed in the above data transmission process depends on the network speed of the accessed Wi-Fi network and the stability of the Wi-Fi network.
- the quality of the Wi-Fi network is not good, it will affect the data transmission speed between the terminals, and even cause problems such as transmission interruption.
- the technical solution of the present application provides a data transmission method and a terminal, which can improve data transmission speed between terminals and ensure stability during data transmission.
- the technical solution of the present application provides a data transmission method, including: establishing, by a terminal, a wireless connection with another terminal; the terminal establishes a universal serial bus (USB) connection with the other terminal; the terminal can display a first interface, the first interface includes at least one candidate data; after the user performs the first input in the first interface, the data to be transmitted may be selected from the at least one candidate data; and further, the user performs the first interface in the first interface.
- the terminal can send the data to be transmitted to the other terminal through the wireless connection and the USB connection.
- a USB connection and a wireless connection transmission channel can be established between the two terminals.
- the terminal can simultaneously transmit the selected data to be transmitted to the other terminal through the USB connection and the wireless connection, thereby greatly improving the data transmission speed between the terminals.
- the wireless connection may be a Wi-Fi connection
- the terminal and the other terminal may establish a Wi-Fi connection by:
- the terminal and the other terminal can install the mobile phone clone APP, in response to the trigger of the user, open the mobile phone clone APP on the terminal, select the old mobile phone; in response to the user's trigger, open the mobile phone clone APP on the other terminal, select a new mobile phone, new A two-dimensional code is generated on the mobile phone, and in response to the user's operation, the terminal scans the two-dimensional code to establish a Wi-Fi connection with another terminal.
- the two-dimensional code may include information for accessing another terminal hotspot, such as a name and password of the hotspot.
- the mobile phone clone APP is a data transmission application.
- a one-touch exchange APP or the like can also be understood as a data transmission application.
- the data to be transmitted specifically includes the first data and the second data
- the terminal may further include: Determining the size of the first data and the size of the second data by the power of the other terminal; or determining, by the terminal, the size of the first data and the size of the second data according to the network quality of the wireless connection; or The transmission speed of the USB connection determines the size of the first data and the size of the second data. In this way, the terminal can dynamically determine which data is transmitted through the USB connection and which data is connected through the wireless connection, so that the power consumption and the transmission speed of the terminal can be optimized.
- the terminal when the wireless connection is disconnected, the terminal may also send untransmitted data to another terminal through the USB connection.
- the terminal may also send untransmitted data to another terminal through a wireless connection.
- the two terminals have two transmission channels, a USB connection and a Wi-Fi connection, when any one of the transmission channels is interrupted, the transmitting end can continue to use another transmission channel to transmit data, thereby ensuring The stability of data transmission.
- the method further includes: the terminal supplies power to the other terminal by using the USB connection.
- the method further includes: acquiring the remaining power of the terminal and the remaining power of the other terminal; and according to the remaining power of the terminal and the remaining power of the other terminal, Switch the master-slave relationship of the USB connection.
- switching the master-slave relationship of the USB connection according to the remaining power of the terminal and the remaining power of the other terminal may specifically include: when the difference between the remaining power of the terminal and the remaining power of the other terminal is greater than the first A threshold (for example, the first threshold is 50%), and the terminal is the one with the lower remaining power, and the master-slave relationship of the USB connection is switched.
- the first A threshold for example, the first threshold is 50%
- the USB main device with lower power can be switched to the USB slave device that receives the power supply, and the USB slave device with higher power can be switched to the USB host device for power supply, so that the party with lower power can be timely supplemented in time.
- Electricity to avoid the problem of transmission interruption caused by one party's low battery, improve the stability of the data transmission process.
- the first input and the second input may be two independent gestures; or, the first input and the second input may also be two stages of one gesture.
- the above terminal and another terminal support a USB Type-C interface.
- the terminal establishes a USB connection with another terminal, and can connect the terminal and another terminal through a direct connection data line of C-to C (Type C to Type C).
- the foregoing candidate data may specifically include at least one of a contact, an information, a photo, a call record, an audio, a video, a document, or an application.
- a data transmission application is installed in the terminal, and the first interface is an interface in the data transmission application.
- the method further includes: in response to the user opening the operation of the data transmission application, the terminal displays a second interface of the data transmission application, where the second interface is used to prompt the user Set the terminal as the data sender or data receiver.
- the method further includes: in response to the user setting the terminal as the data sending end or the data receiving end, the terminal displays the prompting information, prompting the terminal and the another The terminal establishes a connection.
- the above wireless connection may be a Wi-Fi connection.
- the terminal may also switch the master-slave relationship of the current Wi-Fi connection according to the remaining power of the terminal and the remaining power of the other terminal.
- the terminal is a Wi-Fi master and the other terminal is a Wi-Fi slave, and the power consumption of the Wi-Fi master is greater than the power consumption of the Wi-Fi slave, if the above is detected If the difference between the remaining power of the terminal and the remaining power of the other terminal is greater than a second threshold (for example, the second threshold is 60%), and the terminal is the one with the lower remaining power, the Wi-Fi connection can be switched. Master-slave relationship.
- the Wi-Fi master device with higher power consumption can be switched to a Wi-Fi slave device with lower power consumption, and the Wi-Fi slave device with lower power consumption can be switched to the power consumption.
- a high Wi-Fi master device which alleviates the problem that the Wi-Fi master consumes too much power and causes transmission interruption.
- the technical solution of the present application provides a data transmission method, where a data transmission application is installed in both the first terminal and the second terminal in a scenario where the first terminal and the second terminal transmit data.
- the method includes: in response to a trigger of the first terminal by the user, the first terminal opens its data transmission application and uses itself as an old mobile phone; in response to the user triggering the second terminal, the second terminal opens its data transmission application, And the first terminal can establish a Wi-Fi connection and a USB connection with the second terminal respectively; the first terminal displays a first interface of the data transmission application, the first interface includes at least one candidate data; the response The first input of the user in the first interface may select data to be transmitted from the at least one candidate data; in response to the second input of the user in the first interface, the first terminal may connect through the Wi-Fi and the USB The connection sends the selected data to be transmitted to the second terminal. Thereby improving the data transmission speed when the user uses the data transmission application to replace the mobile phone.
- the first terminal opens its data transmission application and uses itself as an old mobile phone.
- the specific implementation may be: the first terminal opens its data transmission application, and the first terminal displays the second interface of the data transmission application.
- the second interface is used to prompt the user to set the first terminal as the old mobile phone, and set the first terminal as the old mobile phone in response to the trigger of the user.
- the second terminal may also display a second interface of the data transmission application, and the second interface is used to prompt the user to set the second terminal as a new mobile phone, in response to the trigger of the user. Set the second terminal as a new phone.
- the first terminal after the first terminal displays the second interface of the data transmission application, if the user receives the operation of setting the first terminal as the old mobile phone, the first terminal may display prompt information for prompting The first terminal establishes a connection with the second terminal.
- the prompt information may include a first prompt and a second prompt, where the first prompt is used to prompt the first terminal to establish a Wi-Fi connection with the second terminal, and the second prompt is used to prompt the first terminal to establish a USB connection with the second terminal.
- the second terminal displays the second interface of the data transmission application, if the user receives the operation of setting the second terminal as a new mobile phone, the second terminal may also display prompt information for prompting to establish with the first terminal. connection.
- the prompt information may include a first prompt for prompting the second terminal to establish a Wi-Fi connection with the first terminal, and a second prompt for prompting the second terminal to establish a USB connection with the first terminal.
- the first terminal establishes a Wi-Fi connection with the second terminal, and may: generate a two-dimensional code on the second terminal (new mobile phone), and the first terminal (old mobile phone) scans the two-dimensional code in response to the user's operation. , establish a Wi-Fi connection with the new phone.
- the two-dimensional code may include information for accessing the second terminal hotspot, such as a name and password of the hotspot.
- the Wi-Fi manager and the USB manager are included in the application framework layer of the first terminal and the second terminal.
- the Wi-Fi connection establishment event may be reported to the data transmission application; when the USB manager of the first terminal detects the second After the terminal establishes a USB connection, it reports a USB connection establishment event to its data transmission application.
- the Wi-Fi manager of the second terminal detects that the Wi-Fi connection is established with the first terminal
- the Wi-Fi connection establishment event can be reported to the data transmission application; when the USB manager of the second terminal detects After establishing a USB connection with the first terminal, the USB connection establishment event is reported to its data transmission application.
- the data transmission application in the first terminal as the old mobile phone can display the first interface after confirming that both the USB connection and the Wi-Fi connection are established; the data transmission application in the second terminal as the new mobile phone confirms the USB connection and After the Wi-Fi connection is established, it can wait to receive the data to be transmitted sent by the first terminal.
- the data to be transmitted includes the first data and the second data
- the terminal sends the data to be transmitted to the second terminal by using the Wi-Fi connection and the USB connection
- the terminal includes: The data transmission application sends the first data to the second terminal on the Wi-Fi connection by calling the Wi-Fi manager; the data transmission application of the first terminal sends the second connection to the second terminal on the USB connection by calling the USB manager data.
- the first terminal may serve as a USB host device to supply power to the second terminal.
- the data transmission application in the first terminal may invoke the power manager to obtain its own remaining power, and obtain the remaining power of the opposite end through a USB connection or a Wi-Fi connection.
- the first terminal when the difference between the remaining power of the first terminal and the remaining power of the second terminal is greater than a first threshold (eg, the first threshold is 50%), the first terminal is lower in remaining power.
- the data transfer application in the first terminal can call its USB manager to switch the USB manager from the USB host operating mode to the USB slave operating mode.
- the data transmission application in the second terminal can also call its USB manager to switch the USB manager from the USB slave operating mode to the USB master working mode. In this way, the master-slave relationship switching process of the devices at both ends of the USB connection can be completed.
- the first terminal when the difference between the remaining power of the first terminal and the remaining power of the second terminal is greater than a second threshold (eg, the second threshold is 60%), the first terminal is a Wi-Fi connection.
- the data transmission application in the first terminal can call its Wi-Fi manager to switch the Wi-Fi manager from the Wi-Fi master working mode to the Wi-Fi slave operating mode.
- the data transmission application in the second terminal can also call its Wi-Fi manager to switch the Wi-Fi manager from the Wi-Fi slave operating mode to the Wi-Fi master working mode. In this way, the master-slave relationship switching process of the devices at both ends of the Wi-Fi connection can be completed.
- the USB manager in the first terminal detects that the USB connection is disconnected, the USB manager can respond to the corresponding data.
- the transmission application reports a USB connection disconnection event; in turn, the data transfer application can invoke the Wi-Fi Manager to send untransmitted data to the second terminal over the Wi-Fi connection.
- the Wi-Fi manager in the first terminal detects that the Wi-Fi connection is disconnected, the Wi-Fi manager can correspond thereto.
- the data transfer application reports the Wi-Fi connection disconnection event; in turn, the data transfer application can invoke the Wi-Fi Manager to send untransmitted data to the second terminal over the USB connection.
- the technical solution of the present application provides a terminal, including: an establishing unit, configured to establish a wireless connection with another terminal; establish a USB connection with the other terminal; and display a unit, configured to display the first interface, the first interface Include at least one candidate data; a determining unit, configured to select data to be transmitted from the at least one candidate data in response to a first input of the user in the first interface; and a transmitting unit configured to respond to the user in the first interface
- the second input of the second input, the data to be transmitted is sent to the other terminal through the wireless connection and the USB connection.
- the data to be transmitted includes the first data and the second data
- the determining unit is further configured to: determine the size of the first data and the second data according to the power quantity of the terminal and the other terminal Size; or; determining the size of the first data and the size of the second data according to the network quality of the wireless connection; or determining the size of the first data and the size of the second data according to the transmission speed of the USB connection.
- the transmitting unit when the wireless connection is disconnected, is further configured to send untransmitted data to the other terminal through the USB connection.
- the transmission unit when the USB connection is disconnected, is further configured to send untransmitted data to the other terminal through the wireless connection.
- the terminal further includes a power supply unit, configured to supply power to the other terminal by using the USB connection.
- the terminal further includes a switching unit, configured to acquire a remaining power of the terminal and a remaining power of the other terminal; and switch the USB connection according to the remaining power of the terminal and the remaining power of the other terminal. Master-slave relationship.
- the foregoing switching unit is specifically configured to: when a difference between a remaining power of the terminal and a remaining power of the other terminal is greater than a first threshold, and the terminal is a party with a lower remaining power, Switch the master-slave relationship of the USB connection.
- the first input and the second input are two independent gestures; or, the first input and the second input are two phases of one gesture.
- both the terminal and the other terminal support a USB Type-C interface.
- the candidate data includes at least one of a contact, an information, a photo, a call record, an audio, a video, a document, or an application.
- the terminal is installed with a data transmission application
- the first interface is an interface of the data transmission application
- the display unit is further configured to display a second interface of the data transmission application in response to the user opening the operation of the data transmission application, where the second interface is used to prompt the user to set the terminal as data transmission. End or data receiver.
- the display unit is further configured to display prompt information for prompting the terminal to establish a connection with the other terminal, in response to the user setting the terminal as an operation of the data sending end or the data receiving end.
- the technical solution of the present application provides a terminal, including a touch screen and one or more processors; the processor is configured to: control a terminal to establish a wireless connection with another terminal; and control the terminal to establish a USB connection with the other terminal;
- the touch screen displays a first interface, the first interface includes at least one candidate data; in response to the first input of the user in the first interface, the data to be transmitted is selected from the at least one candidate data; and the user is in the first interface
- the second input of the control terminal transmits the data to be transmitted to the other terminal through the wireless connection and the USB connection.
- the data to be transmitted includes first data and second data
- the processor is further configured to: determine a size of the first data and a size of the second data according to a power quantity of the terminal and the other terminal Or determining the size of the first data and the size of the second data according to the network quality of the wireless connection; or determining the size of the first data and the size of the second data according to the transmission speed of the USB connection.
- the processor is further configured to: when the wireless connection is disconnected, the control terminal sends untransmitted data to the another terminal through the USB connection.
- the processor is further configured to: when the USB connection is disconnected, the control terminal sends untransmitted data to the another terminal by using the wireless connection.
- the processor is further configured to: control the terminal to supply power to the other terminal through the USB connection.
- the processor is further configured to: acquire a remaining power of the terminal and a remaining power of the other terminal; and switch the master of the USB connection according to the remaining power of the terminal and the remaining power of the other terminal. From relationship.
- the processor is specifically configured to: when a difference between a remaining power of the terminal and a remaining power of the other terminal is greater than a first threshold, and the terminal is a party with a lower remaining power, Controls the master-slave relationship that ultimately switches the USB connection.
- the terminal is installed with a data transmission application, and the first interface is an interface of the data transmission application; the processor is further configured to: in response to the user opening the operation of the data transmission application, controlling the touch screen to display the The second interface of the data transmission application is used to prompt the user to set the terminal as a data sending end or a data receiving end.
- the processor is further configured to: in response to the user setting the terminal as an operation of the data sending end or the data receiving end, controlling the touch screen to display prompt information, and prompting the terminal to establish a connection with the other terminal .
- the technical solution of the present application provides a computer storage medium, including computer instructions, when the computer instruction is run on the terminal, causing the terminal to perform the data transmission method according to any one of the first aspects.
- the technical solution of the present application provides a computer program product, when the computer program product is run on a computer, causing the computer to perform the data transmission method according to any one of the first aspects.
- the terminal of the third aspect and the fourth aspect, the computer storage medium of the fifth aspect, and the computer program product of the sixth aspect may be used to perform the correspondence provided above.
- the method, therefore, the beneficial effects that can be achieved can be referred to the beneficial effects in the corresponding methods provided above, and are not described herein again.
- FIG. 1 is a schematic structural diagram 1 of a terminal according to an embodiment of the present disclosure
- FIG. 2 is a schematic diagram 1 of a scenario of a data transmission method according to an embodiment of the present application
- FIG. 3 is a schematic structural diagram of an operating system in a terminal according to an embodiment of the present disclosure
- FIG. 4 is a schematic diagram 1 of interaction of a data transmission method according to an embodiment of the present application.
- FIG. 5 is a second schematic diagram of a data transmission method according to an embodiment of the present disclosure.
- FIG. 6 is a schematic diagram 3 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 7A is a schematic diagram 4 of a data transmission method according to an embodiment of the present application.
- FIG. 7B is a schematic diagram 5 of a data transmission method according to an embodiment of the present application.
- FIG. 8 is a schematic diagram 6 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 9 is a schematic diagram 7 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 10 is a schematic diagram 8 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 11 is a schematic diagram nin of a data transmission method according to an embodiment of the present disclosure.
- FIG. 12 is a schematic diagram 10 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 13 is a schematic diagram 2 of interaction of a data transmission method according to an embodiment of the present disclosure.
- FIG. 14 is a schematic diagram 11 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 15 is a schematic diagram 3 of interaction of a data transmission method according to an embodiment of the present disclosure.
- FIG. 16 is a schematic diagram 12 of a data transmission method according to an embodiment of the present disclosure.
- FIG. 17 is a schematic structural diagram 2 of a terminal according to an embodiment of the present application.
- the data transmission method provided by the embodiment of the present application can be applied to a terminal.
- the terminal can be a tablet, a desktop, a laptop, a laptop, an Ultra-mobile Personal Computer (UMPC), a handheld computer, a netbook, a Personal Digital Assistant (PDA).
- UMPC Ultra-mobile Personal Computer
- PDA Personal Digital Assistant
- the device such as a wearable electronic device, a smart watch, or the like, may also be the mobile phone 100 shown in FIG. 1.
- the specific form of the terminal in the embodiment of the present application is not particularly limited.
- the terminal in the embodiment of the present application may be the mobile phone 100.
- the embodiment will be specifically described below by taking the mobile phone 100 as an example. It should be understood that the illustrated mobile phone 100 is only one example of a terminal, and the mobile phone 100 may have more or fewer components than those shown in the figures, two or more components may be combined, or may have Different component configurations.
- the various components shown in the figures can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing or application specific integrated circuits.
- the mobile phone 100 may include a processor 101, a radio frequency (RF) circuit 102, a memory 103, a touch screen 104, a Bluetooth device 105, one or more sensors 106, a Wi-Fi 107, and a positioning device 108.
- the processor 101 is a control center of the mobile phone 100, and connects various parts of the mobile phone 100 using various interfaces and lines, executes the mobile phone by running or executing an application stored in the memory 103, and calling data and instructions stored in the memory 103. 100 various functions and processing data.
- processor 101 may include one or more processing units; processor 101 may also integrate an application processor and a modem processor; wherein the application processor primarily processes operating systems, user interfaces, applications, etc.
- the modem processor primarily handles wireless communications. It can be understood that the above modem processor may not be integrated into the processor 101.
- processor 101 can be a multi-core processor.
- the radio frequency circuit 102 can be used to receive and transmit wireless signals during transmission or reception of information or calls. Specifically, the radio frequency circuit 102 can process the downlink data of the base station and then process it to the processor 101. In addition, the data related to the uplink is sent to the base station.
- radio frequency circuits include, but are not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, and the like.
- the radio frequency circuit 102 can also communicate with other devices through wireless communication.
- the wireless communication can use any communication standard or protocol, including but not limited to global mobile communication systems, general packet radio services, code division multiple access, wideband code division multiple access, long term evolution, email, short message service, and the like.
- the memory 103 is used to store applications and data, and the processor 101 executes various functions and data processing of the mobile phone 100 by running applications and data stored in the memory 103.
- the memory 103 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.); the storage data area may be stored according to the use of the mobile phone Data created at 100 o'clock (such as audio data, phone book, etc.).
- the memory 103 may include a high speed random access memory, and may also include a nonvolatile memory such as a magnetic disk storage device, a flash memory device, or other storage device.
- the memory 103 can store various operating systems, such as those developed by Apple. Operating system, developed by Google Inc. Operating system, etc.
- Touch screen 104 can include touch sensitive surface 104-1 and display 104-2.
- the touch-sensitive surface 104-1 (eg, a touch panel) can collect touch events on or near the user of the mobile phone 100 (eg, the user uses a finger, a stylus, or the like on the touch-sensitive surface 104-1. Or operation in the vicinity of the touch-sensitive surface 104-1), and the collected touch information is transmitted to other devices such as the processor 101.
- the touch sensitive surface 104-1 can include two portions of a touch detection device and a touch controller.
- the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits a signal to the touch controller; the touch controller receives the touch information from the touch detection device, and converts the touch information into contact coordinates, and then Sended to the processor 101, the touch controller can also receive instructions from the processor 101 and execute them.
- the touch sensitive surface 104-1 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
- a display (also referred to as display) 104-2 can be used to display information entered by the user or information provided to the user as well as various menus of the mobile phone 100.
- the display 104-2 can be configured in the form of a liquid crystal display, an organic light emitting diode, or the like.
- the touch-sensitive surface 104-1 can be overlaid on the display 104-2, and when the touch-sensitive surface 104-1 detects a touch event on or near it, is transmitted to the processor 101 to determine the type of touch event, followed by the processor 101 may provide a corresponding visual output on display 104-2 depending on the type of touch event.
- touch-sensitive surface 104-1 and display 104-2 are implemented as two separate components to implement the input and output functions of handset 100, in some embodiments, touch-sensitive surface 104- 1 is integrated with the display screen 104-2 to implement the input and output functions of the mobile phone 100. It can be understood that the touch screen 104 is formed by stacking a plurality of layers of materials. In the embodiment of the present application, only the touch-sensitive surface (layer) and the display screen (layer) are shown, and other layers are not described in the embodiment of the present application.
- the touch-sensitive surface 104-1 can be overlaid on the display 104-2, and the size of the touch-sensitive surface 104-1 is greater than the size of the display 104-2 such that the display 104- 2 is completely covered under the touch-sensitive surface 104-1, or the touch-sensitive surface 104-1 may be disposed on the front side of the mobile phone 100 in a full-board form, that is, the user's touch on the front of the mobile phone 100 can be perceived by the mobile phone. You can achieve a full touch experience on the front of your phone.
- the touch-sensitive surface 104-1 is disposed on the front side of the mobile phone 100 in a full-board form
- the display screen 104-2 may also be disposed on the front side of the mobile phone 100 in the form of a full-board, such that the front side of the mobile phone is Can achieve a borderless structure.
- the touch screen 104 may further include one or more sets of sensor arrays for the touch screen 104 to sense the pressure exerted by the user while sensing the touch event of the user thereon. Wait.
- the mobile phone 100 can also include a Bluetooth device 105 for enabling data exchange between the handset 100 and other short-range terminals (eg, mobile phones, smart watches, etc.).
- the Bluetooth device in the embodiment of the present application may be an integrated circuit or a Bluetooth chip or the like.
- the handset 100 can also include at least one type of sensor 106, such as a light sensor, motion sensor, and other sensors.
- the light sensor can include an ambient light sensor and a proximity sensor.
- the ambient light sensor can adjust the brightness of the display of the touch screen 104 according to the brightness of the ambient light
- the proximity sensor can turn off the power of the display when the mobile phone 100 moves to the ear.
- the accelerometer sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity.
- the mobile phone 100 can also be configured with fingerprint recognition devices, gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors I will not repeat them here.
- Wi-Fi 107 is used to provide mobile phone 100 with network access complying with the Wi-Fi related standard protocol, and the mobile phone 100 can access the Wi-Fi access point through the Wi-Fi 107, thereby helping the user to send and receive emails and browse the webpage. And access to streaming media, etc., it provides users with wireless broadband Internet access.
- the Wi-Fi 107 can also function as a Wi-Fi wireless access point, and can provide Wi-Fi network access to other terminals.
- the positioning device 108 is configured to provide a geographic location for the mobile phone 100. It can be understood that the positioning device 108 can be specifically a receiver of a positioning system such as a global positioning system (GPS) or a Beidou satellite navigation system. After receiving the geographical location transmitted by the positioning system, the positioning device 108 sends the information to the processor 101 for processing, or sends it to the memory 103 for storage. In some other embodiments, the positioning device 108 can be an assisted global positioning system (AGPS) receiver, and the AGPS is an operation mode for performing GPS positioning with certain assistance, which can be utilized.
- AGPS assisted global positioning system
- the signal of the base station, in conjunction with the GPS satellite signal, can make the mobile phone 100 locate faster; in the AGPS system, the positioning device 108 can obtain positioning assistance by communicating with an auxiliary positioning server (such as a mobile phone positioning server).
- the AGPS system assists the positioning device 108 in performing the ranging and positioning services by acting as a secondary server, in which case the secondary positioning server provides positioning through communication over a wireless communication network with a positioning device 108 (i.e., GPS receiver) of the terminal, such as the handset 100. assist.
- the audio circuit 109, the speaker 113, and the microphone 114 can provide an audio interface between the user and the handset 100.
- the audio circuit 109 can transmit the converted electrical data of the received audio data to the speaker 113 for conversion to the sound signal output by the speaker 113; on the other hand, the microphone 114 converts the collected sound signal into an electrical signal by the audio circuit 109. After receiving, it is converted into audio data, and then the audio data is output to the RF circuit 102 for transmission to, for example, another mobile phone, or the audio data is output to the memory 103 for further processing.
- the peripheral interface 110 is used to provide various interfaces for external input/output devices (such as a keyboard, a mouse, an external display, an external memory, a subscriber identity module card, etc.). For example, it is connected to the mouse through a universal serial bus interface, and is electrically connected to a subscriber identity module (SIM) card provided by a telecommunications carrier through a metal contact on the card slot of the subscriber identity module.
- SIM subscriber identity module
- Peripheral interface 110 can be used to couple the external input/output peripherals described above to processor 101 and memory 103.
- the mobile phone 100 may further include a power supply device 111 (such as a battery and a power management chip) that supplies power to the various components.
- the battery may be logically connected to the processor 101 through the power management chip to manage charging, discharging, and power management through the power supply device 111. And other functions.
- the mobile phone 100 may further include a camera, a flash, a micro projection device, a near field communication (NFC) device, and the like, which are not described herein.
- a camera a camera
- a flash a flash
- micro projection device a micro projection device
- NFC near field communication
- two terminals can perform data transmission based on a wired connection, data transmission based on the wireless connection, and data transmission based on the wired connection and the wireless connection at the same time.
- both mobile phone A and mobile phone B have Wi-Fi capabilities.
- mobile phone A can access a Wi-Fi access point through its Wi-Fi
- mobile phone B can also access the Wi-Fi access point through its Wi-Fi, so that mobile phone A Data transfer can be performed with mobile phone B.
- mobile phone A and mobile phone B can also establish a WLAN direct connection through their respective Wi-Fi.
- data transmission between mobile phone A and mobile phone B does not need to be additionally transmitted through the Wi-Fi access point.
- the mobile phone A (or the mobile phone B) can also establish a wireless connection with another mobile phone as a Wi-Fi access point, thereby using the wireless connection for data transmission.
- the mobile phone A and the mobile phone B can also establish a wireless connection through a Bluetooth, NFC or 4G network, a 5G network, etc., and the embodiment of the present application does not impose any limitation on this.
- both the mobile phone A and the mobile phone B have a USB interface (the USB interface is one of the peripheral interfaces).
- the USB interface is one of the peripheral interfaces.
- a wired connection between the mobile phone A and the mobile phone B can be established using the USB data line 201 that is compatible with the USB interfaces of the mobile phone A and the mobile phone B.
- the type of the USB interface may be a USB Type A interface, a USB Type B interface, a Micro USB interface, a Mini USB interface, or a USB Type C interface.
- the interfaces on the two ends of the data line 201 need to be respectively adapted to the USB interfaces of the mobile phone A and the mobile phone B.
- the USB interfaces of mobile phone A and mobile phone B are both USB Type C interfaces
- the USB interface of mobile phone A and mobile phone B can be connected using a Type C to Type C (C-to-C) direct data cable.
- the interface at both ends of the data line 201 is not a USB Type C interface
- one end of the USB data line 201 is a USB Type C interface
- the other end of the USB data line 201 is a USB Type A interface.
- the USB Type A interface of the USB data line 201 can be converted into a USB Type C interface through an OTG (On The Go) connector, thereby implementing a wired connection between the mobile phone A and the mobile phone B.
- the data transmission of the mobile phone A and the mobile phone B through the USB data line 201 can be based on any type of USB specification such as USB 1.0, USB 2.0, USB 3.0 or USB 3.1, and the embodiment of the present application does not impose any restrictions on this. .
- a wired connection and a wireless connection can be established between the two terminals.
- the old mobile phone and the new mobile phone can be connected to establish a USB connection using the data cable of the corresponding interface, and a Wi-Fi function can be established between the old mobile phone and the new mobile phone. Wi-Fi connection.
- the old mobile phone can simultaneously transmit data to the new mobile phone through the USB connection and the Wi-Fi connection, thereby greatly improving the data transmission speed between the terminals.
- the old mobile phone and the new mobile phone have two transmission channels, a USB connection and a Wi-Fi connection, when the transmission channel is interrupted (for example, the Wi-Fi connection is disconnected), the transmitting end can continue to use.
- Another transmission channel (such as a USB connection) transmits data, thereby ensuring stability during data transmission.
- the operating system which is a Linux-based mobile device operating system, and implements various functions in combination with the above hardware in the mobile phone 100.
- the software architecture of the operating system It should be noted that the embodiment of the present application only uses The operating system is an example to illustrate the software environment required for the terminal to implement the technical solution of the embodiment. Those skilled in the art can understand that the embodiment of the present application can also be implemented by other operating systems, such as the ios operating system.
- FIG. 3 is a type that can be operated in the above terminal.
- the software architecture can be divided into four layers, namely the application layer, the application framework layer, the function library layer and the Linux kernel layer.
- the application layer is the top layer of the operating system, including the native applications of the operating system, such as email clients, text messages, calls, calendars, browsers, contacts, and more. Of course, for developers, developers can write applications and install them to that layer.
- applications can be developed using the Java language by calling the application programming interface (API) provided by the application framework layer.
- API application programming interface
- the application framework layer mainly provides developers with various APIs that can be used to access applications. Developers can interact with the underlying operating system (such as function libraries, Linux kernels, etc.) through the application framework to develop their own. application.
- the application framework is primarily a series of service and management systems for the Android operating system.
- the application framework mainly includes the following basic services:
- Activity Manager used to manage the application life cycle and provide common navigation rollback functions
- Content Providers Used to manage data sharing and access between different applications
- Notification Manager used to control the application to display prompt information (such as Alerts, Notifications, etc.) to the user in the status bar, lock screen interface, etc.;
- Clipboard Manager mainly provides copy or paste function inside the application or between applications
- View A rich, extensible collection of views that can be used to build an application. It specifically includes a list, a grid, a text, a button, and an image.
- Location Manager Mainly allows the application to access the geographic location of the terminal.
- the function library layer is the support of the application framework, and is an important link between the application framework layer and the Linux kernel layer.
- the library layer includes libraries that are compiled by the computer program C or C++. These libraries can be used by different components in the operating system to serve developers through the application framework layer.
- the function library may include a libc function library, which is specifically designed for embedded linux-based devices; the function library may also include a multimedia library (Media Framework), which supports playback and recording of audio or video in multiple encoding formats. Also supports still image files, as well as common audio or video encoding formats.
- Media Framework multimedia library
- the function library also includes an interface management library (Surface Manager), which is mainly responsible for managing access to the display system, and is used to manage the interaction between display and access operations when executing multiple applications, and is also responsible for 2D drawing and 3D. The drawing is displayed for synthesis.
- interface management library Silicon Manager
- the function library layer may also include other function libraries for implementing various functions of the mobile phone, for example: SGL (Scalable Graphics Library): 2D graphics image processing engine based on XML (Extensible Markup Language) file; SSL (Secure Sockets Layer): Located between TVP/IP protocol and various application layer protocols, providing support for data communication; OpenGL/ES: 3D effect support; SQLite: relational database engine; Webkit: Web browser engine; FreeType: bitmap and vector font Support; and so on.
- SGL Scalable Graphics Library
- XML Extensible Markup Language
- SSL Secure Sockets Layer
- Android Runtime is a kind of The operating environment on the operating system is A new virtual machine used by the operating system. In Android Runtime, AOT (Ahead-Of-Time) technology is used. When the application is first installed, the application's bytecode is pre-compiled into machine code, making the application a real local application. After running again, the compilation step is eliminated, and startup and execution become faster.
- AOT Address-Of-Time
- the Android Runtime may also be replaced by a Core Libraries and a Dalvik Virtual Machine.
- the core function library provides most of the functions in the Java language API, and provides an interface to the application framework layer to call the underlying library mainly through the Java native interface (JNI). It also contains some core APIs of the operating system, such as android.os, android.net, android.media, and so on.
- the Dalvik virtual machine uses a JIT (Just-in-Time) runtime compilation mechanism. Each time a process is started, the virtual machine needs to recompile the bytecode in the background, which will have a certain impact on the startup speed.
- Each application runs in an instance of a Dalvik virtual machine, and each Dalvik virtual machine instance is a separate process space.
- the Dalvik virtual machine is designed to run multiple virtual machines efficiently on a single device.
- the Dalvik virtual machine executable file format is .dex.
- the dex format is a compression format designed for Dalvik and is suitable for systems with limited memory and processor speed. What needs to be mentioned is that the Dalvik virtual machine relies on the Linux kernel to provide basic functions (threading, underlying memory management). It can be understood that Android Runtime and Dalvik belong to different types of virtual machines, and those skilled in the art can select different types of virtual machines in different situations.
- This layer provides the core system services of the operating system, such as security, memory management, process management, network protocol stack and driver model, all based on the Linux kernel.
- the Linux kernel also acts as an abstraction layer between the hardware and software stacks.
- This layer has many mobile device related drivers.
- the main drivers are: display driver; Linux-based frame buffer driver; keyboard driver as input device; memory driver based on memory technology device; camera driver; Bluetooth driver; Wi- Fi driver; USB driver, etc.
- the application layer is installed with one or more data transmission applications for transmitting data between the terminals, for example, a mobile phone clone APP, a one-touch switch APP, and the like.
- the application framework layer includes Wi-Fi Manager (Wi-Fi Manager) and USB Manager (USB Manager). Taking the mobile clone APP as an example, the mobile clone APP can interact with the Wi-Fi Manager and the USB Manager by calling the corresponding API, so that when the data transmission service is provided to the user, the mobile cloned APP can be used as a decision maker to control the Wi-Fi. Manager and USB Manager enable dual-channel data transfer mode for simultaneous data transfer over Wi-Fi and USB connections.
- the Wifi Manager in the application framework layer can be called by the Context.getSystemService(Context.WiFi_SERVICE) function, and the Wifi Manager can pass the Wifi Manager. Call the Wifi driver in the kernel layer to discover and manage other Wi-Fi enabled devices, such as turning Wi-Fi on or off, scanning Wi-Fi networks, establishing Wi-Fi connections, and more.
- the USB Manager object in the application framework layer can be called by the Context.getSystemService(Context.USB_SERVICE) function, and the USB Manager can be called again.
- the USB driver in the kernel layer discovers and manages other USB devices, such as scanning USB devices, detecting USB device plug-and-drop events, and the like.
- the USB Manager can have two working modes at runtime, one is the USBHostManager mode as the master device, and the other is the USBDeviceManager mode as the slave device.
- the terminal for example, mobile phone A
- the terminal indicates that the role of the mobile phone A is a USB host device (host), and the mobile phone A can supply power to other terminals (such as the mobile phone B) connected to the USB data cable.
- the mobile phone B operates as a USB slave (slave) in the USBDeviceManager mode.
- the USBDeviceManager mode and the USBHostManager mode are a relative concept.
- the mobile phone when the mobile phone is connected to the PC through the USB data cable, the mobile phone is in the USBDeviceManager mode, the mobile phone is the USB slave device, and when the mobile phone is connected to the USB flash drive through the USB data cable, the mobile phone is in the USBHostManager mode, and the mobile phone is the USB master device. .
- the USB Manager can switch between USBDeviceManager mode and USBHostManager mode by calling the function: public void setCurrentFunction(String function, boolean usbDataUnlocked).
- the USB Manager executable function public ParcelFileDescriptor openAccessory(UsbAccessory accessory) to connect to the slave device;
- the USB Manager executable function public UsbDeviceConnection openDevice(UsbDevice device) to connect and respond to the master The instruction issued by the device.
- the master-slave relationship at both ends of the USB data line is generally determined.
- the USB Manager that triggers the terminal is switched to the USBHostManager mode.
- the terminal plays the role of the USB host device; when the other terminal is connected to the USB data line as the interface of the USB slave device, the USB Manager that triggers the terminal switches to the USBDeviceManager mode, and the terminal plays the role of the USB slave device.
- the USB OTG protocol introduces a Host Negotiation Protocol (HNP) mechanism. Based on this mechanism, devices at both ends of the USB data cable can negotiate which terminal to use as the USB master device when establishing a USB connection.
- HNP Host Negotiation Protocol
- USB host device Power is supplied from the USB host device to the other party (ie, the USB slave device). Therefore, when using a USB data line supporting HNP, the above-mentioned negotiation mechanism can be used to determine the master-slave relationship of devices at both ends of the USB data line.
- USB host device determined based on the USB Type-C specification may also be referred to as a Source device, that is, a device powered by VBUS or VCONN.
- a USB slave device based on the USB Type-C specification may also be referred to as a sink device, that is, a device that is powered by VBUS or VCONN.
- the USB host device and the USB slave device are taken as an example for description.
- the mobile phone clone APP may prompt the user to establish a Wi-Fi connection with another transmission end (for example, the mobile phone B).
- USB connection the mobile clone application can call the Wi-Fi Manager of the application framework layer to detect and complete the Wi-Fi connection with the mobile phone B, and the mobile clone application can call the USB Manager of the application framework layer to detect and complete the USB connection with the mobile phone B.
- the mobile phone A can send a part of the data selected by the user to the mobile phone B through the above Wi-Fi connection, and send another part of the data selected by the user to the mobile phone B through the USB connection.
- Such a two-channel data transmission method can significantly increase the data transmission speed, and when the USB connection (or Wi-Fi connection) is disconnected, the mobile phone A can also transmit data to the mobile phone B through another channel, that is, during the data transmission process.
- the dynamic switching of single-channel transmission and dual-channel transmission can be realized, thereby improving data stability during data transmission.
- FIG. 4 is a schematic flowchart diagram of a data transmission method according to an embodiment of the present application. As shown in FIG. 4, the data transmission method may include:
- the first terminal establishes a wireless connection with the second terminal.
- the first terminal establishes a USB connection with the second terminal.
- the user can separately open the mobile phone installed on the new mobile phone and the old mobile phone. Clone the app.
- a button 501 set as an old phone and a button 502 set as a new phone are displayed on the top page of the mobile clone application.
- the button 501 indicates that the terminal operated by the user is the old mobile phone (ie, the first terminal), and the first terminal can be connected to the terminal as the transmitting end.
- the receiving end ie, the second terminal
- the button 502 indicates that the terminal operated by the user is a new mobile phone (ie, the second terminal), and the second terminal can be subsequently received as a receiving end.
- the data sent by the sender ie the first terminal).
- the first terminal can be displayed between the new mobile phone and the old mobile phone.
- a prompt 601 for a wireless connection eg, a Wi-Fi connection
- a prompt 602 to establish a USB connection between the new phone and the old phone may also be in the form of a two-dimensional code, an animation, a video, or a voice. The embodiment of the present application does not impose any limitation on this.
- the user can open the Wi-Fi function of the new mobile phone and the old mobile phone and access the same Wi-Fi network, thereby establishing a Wi-Fi connection between the new mobile phone and the old mobile phone.
- the user can also open the WLAN direct connection function of the new mobile phone and the old mobile phone, and establish a Wi-Fi connection between the new mobile phone and the old mobile phone through the WLAN direct connection function.
- the user can also set the new mobile phone (or the old mobile phone) as a personal hotspot, and then operate another terminal to access the personal hotspot to establish a Wi-Fi connection between the new mobile phone and the old mobile phone.
- the mobile clone application can invoke the Wi-Fi Manager to automatically establish a personal hotspot, and display information such as the name and password of the personal hotspot in a two-dimensional code or the like. Then, the user operates the first terminal to scan the two-dimensional code to establish a Wi-Fi connection with the second terminal. In this case, the first terminal and the second terminal may not display the prompt 601.
- the second terminal detects that the user clicks the button 502
- a certain terminal for example, the first terminal
- the mobile phone clone APP in the first terminal cannot determine whether the other end of the current Wi-Fi connection is a new mobile phone (ie, the second terminal) ready to receive data
- the mobile phone clone APP may indicate that the first terminal is current.
- the other end of the Wi-Fi connection sends an identity confirmation message, for example, asking if the other end of the current Wi-Fi connection is a new handset ready to receive data.
- the first terminal receives the correct response from the other end, the current terminal has established a Wi-Fi connection with the second terminal, and the first terminal and the second terminal may not display the prompt 601.
- the user can connect the new mobile phone and the old mobile phone with a USB data cable that is compatible with both the new mobile phone and the old mobile phone to establish a USB connection between the first terminal and the second terminal.
- a USB data cable that is compatible with both the new mobile phone and the old mobile phone to establish a USB connection between the first terminal and the second terminal.
- the USB interface of the new mobile phone and the old mobile phone are of the USB Type-C type
- the user can insert the interfaces at both ends of the C-to-C direct data cable into the USB interface of the new mobile phone and the old mobile phone respectively.
- the new mobile phone and the old mobile phone can determine that one of the parties is a USB master device and the other is a USB slave device based on the above Host Negotiation Protocol (HNP).
- HNP Host Negotiation Protocol
- the new phone can notify the old phone that the new phone is a USB master device and the old phone is a USB slave device.
- the old mobile phone sends a confirmation message to the new mobile phone to confirm the master-slave relationship
- the new mobile phone can operate in the USB master mode, and the old mobile phone can operate in the USB slave mode.
- a USB slave device for example, a new mobile phone
- a USB host device for example, an old mobile phone
- the mobile phone clone APP may not be able to determine whether the other end of the current USB connection is a new mobile phone (ie, the second terminal) ready to receive data. Therefore, the mobile phone clone APP may instruct the first terminal to send an identity to the other end of the current USB connection.
- a confirmation message for example, asks if the other end of his current USB connection is a new handset ready to receive data. Then, if the first terminal receives the correct response from the other end, it indicates that the first terminal has established a USB connection with the second terminal, and the first terminal and the second terminal do not need to display the prompt 602.
- the USBManager in the application framework layer in the first terminal can report the event that the USB connection has been established to the mobile phone clone APP in the application layer.
- the WiFiManager in the application framework layer in the first terminal may report the event that the Wi-Fi connection has been established to the mobile phone clone APP in the application layer. Then, after the mobile phone clone APP determines that two transmission channels have been established, the following steps S402-S404 can be performed to use the two transmission channels for data transmission, thereby improving the data transmission speed when the mobile phone is cloned.
- the terminal that is the USB host device supplies power to the terminal that is the USB slave device, and thus the power of the devices at both ends of the USB connection changes.
- the first terminal can obtain the power status of the second terminal and the power status of the second terminal.
- the second terminal may obtain the power status of the first terminal and the power status of the first terminal, and the embodiment of the present application does not impose any limitation on this.
- the first terminal or the second terminal can obtain the power status of the other party through the established USB connection, and can also obtain the power status of the other party through the established Wi-Fi connection.
- the mobile clone APP can register the power of the PowerManager to be reported in the PowerManager of the application framework layer in advance, for example, requesting the PowerManager to periodically report (for example, every 5 minutes). The remaining amount of power is given to the mobile phone to clone the APP, or the PowerManager is requested to report the current remaining amount of power to the mobile phone clone APP after detecting that the power is reduced by 10%. Then, when the powerManager detects that the power of the terminal is in accordance with the pre-registration condition of the mobile clone application, the PowerManager can report the current remaining amount of the power to the mobile clone application.
- the second terminal may also obtain its own power status according to the foregoing method, and then send the power status of the second terminal to the first terminal through the established Wi-Fi connection or USB connection.
- the PowerManager can also open the power query interface to the mobile phone clone APP.
- the mobile phone clone APP can also actively obtain the current power status by calling the interface, and the embodiment of the present application does not impose any restrictions on this.
- data transmission is performed after the first terminal and the second terminal establish a wireless connection and a USB connection as an example.
- the first terminal can also start data transmission after establishing a wireless connection with the second terminal, and the USB connection between the first terminal and the second terminal can be established in the process of data transmission.
- the first terminal may start data transmission after establishing a USB connection with the second terminal, and the wireless connection between the first terminal and the second terminal may be established in the process of data transmission, and in subsequent embodiments, This is elaborated on, so it will not be repeated here.
- S402 may be performed first, and then S401 may be performed.
- the order of the steps S401 and S402 is not limited.
- the first terminal receives a first input that the user selects data to be transmitted in the first terminal.
- step S403 after the first terminal detects that the wireless connection and the USB connection between the first terminal and the second terminal have been established as the old mobile phone (ie, the transmitting end), as shown in FIG. 7A, the first terminal operates in the first terminal.
- the mobile phone clone APP can jump to interface 701.
- the user can select, in the interface 701, data to be transmitted that needs to be sent to the second terminal (ie, the receiving end).
- the above interface 701 includes candidate data such as contacts, short messages, photos, call records, music, and applications.
- the specific application may include the application itself, and may also include recorded data and stored files generated by the user during use of the application, such as contact avatars, buffers, and downloaded pictures.
- the user can select the data to be transmitted by clicking at least one of the contact, the short message, the photo, the call record, the music, and the application to be transmitted in the interface 701.
- the selected candidate data in the interface 701 can be used as the foregoing. An input.
- the transmission mode of the data to be transmitted may be further determined.
- the first terminal may transmit a part of the data to be transmitted (for example, the first data) through the wireless connection, and transmit another part (for example, the second data) of the data to be transmitted through the USB connection.
- the first terminal may determine the data amount of the first data according to a network quality of the wireless connection between the first terminal and the second terminal. For example, when the Wi-Fi network speed between the first terminal and the second terminal is less than a threshold, a small portion of data may be determined to be transmitted through a Wi-Fi connection, and most of the remaining data is determined to be connected through a USB. Mode transmission, which can increase the transmission speed of the entire data to be transmitted.
- the first terminal may determine the amount of data of the first data based on the amount of power of the first terminal and the second terminal. For example, when it is detected that the power of a terminal connected to the USB data line is less than 20% or the power difference between the first terminal and the second terminal is greater than 60%, the power consumption when the terminal transmits data using the Wi-Fi connection Larger, therefore, the first terminal can determine a small portion of data to be transmitted through a Wi-Fi connection, and determine most of the remaining data to be transmitted through a USB connection, which can reduce a terminal in the data transmission process. Excessive power consumption causes the terminal to shut down, causing the data transmission to be interrupted.
- the USB connection between the first terminal and the second terminal is based on the transmission speed.
- the slower USB 1.1 specification is implemented, then the first terminal can determine most of the data to be transmitted through the Wi-Fi connection, and the remaining small portion of the data is determined to be transmitted through the USB connection, thereby improving the data to be transmitted. Transmission speed.
- the minimum speed (Low Speed) supported by USB 1.1 is 1.5Mbits/s
- the full speed (Full Speed) is 12Mbits/s
- the high speed of USB 2.0 full speed (High Speed) can reach 480Mbits/s
- the latest USB 3.0 supports 5Gbits/s Super Speed transmission.
- the mobile phone clone APP in the first terminal may divide the data to be transmitted selected by the user into a plurality of data blocks. For example, the 1G data to be transmitted is divided into 1024 data blocks according to the size of 1M, and each data block is numbered in the order of division. In this way, the first terminal can determine the number of data blocks transmitted through the Wi-Fi connection and the number of data blocks when transmitting over the USB connection according to the method in the above embodiment.
- the data block transmitted through the Wi-Fi connection may be the first data
- the data block transmitted through the USB connection may be the second data.
- the mobile clone APP can also dynamically determine the transmission mode of each data block during the transmission process based on factors such as power consumption, Wi-Fi network speed, and USB transmission speed. Subsequently, after receiving the data blocks sent by the two transmission modes, the second terminal may recover the 1G data to be transmitted according to the number of each data block.
- the first terminal for example, the mobile phone clone APP running in the first terminal
- the user may also be used by the user. Manually select the transmission method of the data to be transmitted.
- the user may pop up a selection box 703 after selecting one item to be transmitted in the interface 701, so that the user can select the item to be transmitted in the selection box 703 to pass the Wi. -Fi connection transfer or transfer via USB connection.
- the interface 701 includes an area 704 corresponding to the Wi-Fi connection and an area 705 corresponding to the USB connection. Then, the user can drag each of the data to be transmitted to be transferred into the corresponding area to select the transmission mode of the data to be transmitted. For example, the user drags the data to be transmitted by the contact to the area 704, that is, the first terminal is instructed to transmit the data to be transmitted through the Wi-Fi connection. At this time, the user drags the data to be transmitted by the contact into the area.
- the operation of 704 can be used as the first input described above.
- the first terminal sends the data to be transmitted to the second terminal by using the wireless connection and the USB connection in response to the second input performed by the user on the first terminal.
- step S404 if it is detected that the user performs the second input of transmitting the data to be transmitted on the first terminal, for example, the user clicks the send button 702 in the interface 701, at this time, the first terminal is used as the old mobile phone (ie, sent A portion of the data to be transmitted (ie, the first data) may be transmitted to the second terminal through an established wireless connection (eg, a Wi-Fi connection).
- the first terminal can also transmit another part of the data to be transmitted (ie, the second data) to the second terminal through the established USB connection. In this way, the first terminal can simultaneously transmit data to the new mobile phone through the USB connection and the Wi-Fi connection, thereby greatly improving the data transmission speed between the terminals.
- the second input that sends the data to be transmitted and the first input that selects the data to be input may be two independent gestures performed by the user.
- the first input may be a click gesture in which the user clicks on candidate data such as a contact in the interface 701
- the second input is a click gesture in which the user clicks the send button 702.
- the second input and the first input may also be two stages in a gesture performed by the user.
- the first terminal can confirm that the user selects the contact 801 as the data to be transmitted.
- the first terminal can confirm that the user wants to send the contact 801 to the data to be transmitted, and step S404 is performed.
- the mobile terminal clone APP is installed and run by the first terminal and the second terminal. It can be understood that the first terminal and the second terminal can also integrate the foregoing data transmission function. Within its own settings.
- the setting interface 901 of the first terminal includes the option of data copy 902.
- the first terminal can display at least one candidate data such as a contact, a short message, a photo, a call record, a music, and an application for the user to select.
- the sending button 903 can be triggered to trigger the first terminal to send the data to be transmitted to the second terminal through the Wi-Fi connection and the USB connection according to the above step S404.
- the Wi-Fi Manager in the first terminal may The mobile clone APP reports that the Wi-Fi connection is disconnected. At this time, the mobile clone APP can convert the transmission mode of the first data described above from a Wi-Fi connection transmission to a transmission via a USB connection. Moreover, the first terminal or the second terminal may prompt the user that the Wi-Fi connection has been disconnected, or one of the first terminal and the second terminal prompts the user that the Wi-Fi connection has been disconnected. Correspondingly, as shown in (b) of FIG.
- the USBManager in the first terminal may report to the mobile phone clone APP.
- the Wi-Fi connection is disconnected from this event.
- the mobile phone clone APP can convert the transmission mode of the above second data from the transmission through the USB connection to the transmission through the Wi-Fi connection.
- the first terminal or the second terminal may prompt the user that the USB connection has been disconnected, or one of the first terminal and the second terminal prompts the user that the USB connection has been disconnected.
- the first terminal and the second terminal re-establish a Wi-Fi connection, or after the USB connection is disconnected, the first terminal and the second terminal re-establish a USB connection, then The first terminal can resume using the two transmission channels of the USB connection and the Wi-Fi connection to simultaneously transmit the currently remaining data to be transmitted to the second terminal, thereby implementing dynamic switching between the dual transmission channel and the single transmission channel.
- the above Wi-Fi connection disconnection or USB connection disconnection may be that the user manually operates the first terminal (or the second terminal) to be disconnected. For example, the user turns off the Wi-Fi function or the user unplugs the USB data line between the first terminal and the second terminal.
- the above Wi-Fi connection disconnection or USB connection disconnection may also be automatically disconnected by the first terminal (or the second terminal). For example, the first terminal or the second terminal may automatically disconnect the established Wi-Fi connection when the quality of the Wi-Fi network is poor, or the power of a certain terminal is low. limit.
- the USB in the process of data transmission between the first terminal and the second terminal, if the power difference between the first terminal and the second terminal is greater than the first threshold, and the lower battery is the USB host device that supplies power, the USB If the master continues to supply power to the USB slave, it is likely to run out of power to the USB master and cause data transfer to be interrupted.
- the first terminal and the second terminal when the power difference between the USB host device and the USB slave device (ie, the first terminal and the second terminal) is greater than a first threshold, and the USB host device is a lower power source,
- the first terminal and the second terminal at both ends of the USB data line can automatically switch the master-slave relationship of the current USB connection. Switch the low-power USB host device to a powered USB slave device and switch the higher-power USB slave device to the powered USB master device. Therefore, timely timely replenishment of the lower-powered party to avoid the problem of transmission interruption due to the low power of one party, and improve the stability of the data transmission process.
- the USB host device that is powered may be the first terminal or the second terminal.
- the USB slave device receiving the power supply is the second terminal
- the USB slave device receiving the power supply is the first terminal.
- the first terminal when the first terminal establishes a USB connection with the second terminal (ie, step S402), the master-slave relationship between the first terminal and the second terminal has been determined.
- the first terminal is a USB master device and the second terminal is a USB slave device.
- the first terminal can obtain the power status of the second terminal (ie, the USB slave device) and the power status of the second terminal.
- the mobile phone clone APP running in the first terminal can periodically acquire the power status of the second terminal and its own The battery condition and calculate the difference between the USB master and the USB slave.
- the power of the USB master device is 25%, and the power of the USB slave device is 80%.
- the power difference between the USB host device and the USB slave device is greater than a first threshold (for example, 50%).
- the mobile phone clone APP in the USB host device can interact with the mobile phone clone APP in the USB slave device to confirm that both parties are ready to switch the current master-slave relationship switch.
- the mobile phone clone APP in the USB host device can invoke the USB Manager in the application framework layer to switch the USB Manager from the USB HostManager mode to the USBDeviceManager mode.
- the first terminal is The USB master device switches to a USB slave device.
- the USB clone device in the USB slave device can also call the USB Manager in the application framework layer to switch the USB Manager from the USBDeviceManager mode to the USBHostManager mode.
- the second terminal Switching from the USB slave device to the USB master device the second terminal switching to the USB master device supplies power to the first terminal switched to the USB slave device.
- the second terminal is switched to the USB host device, and the first terminal is switched to the USB slave device, although the master-slave relationship at both ends of the USB data line is switched, the data between the first terminal and the second terminal is The transmission direction does not change, and the first terminal still sends the data to be transmitted to the second terminal. In this way, without disturbing the data transmission, the power balance of the devices at both ends of the USB data line can be realized, and the transmission interruption problem caused by the low power of one side during data transmission can be avoided.
- the USB data line between the first terminal and the second terminal may be a C-to-C direct data line. Since the direct connection data line of the C-to-C supports the negotiation mechanism specified by the above Host Negotiation Protocol (HNP), when the power difference between the USB host device and the USB slave device is greater than the first threshold, and the USB host device is When the battery is lower, the USB master device and the USB slave device can negotiate based on the HNP, determine the switching result of the USB master device and the USB slave device, and the role of the switch, and then dynamically switch the self according to the negotiation result. Master-slave relationship.
- HNP Host Negotiation Protocol
- the USB data line between the first terminal and the second terminal may also be a non-C-to-C direct data line.
- the USB data line between the first terminal and the second terminal may be a USB data line that is transferred through the OTG connector. Since the non-C-to-C direct data cable may not support the mechanism of the above host negotiation protocol, when the power difference between the USB host device and the USB slave device is greater than the first threshold, and the USB host device is lower in power consumption, On one side, the USB host device can send a switching instruction to the USB slave device, and automatically receives the USB data cable connected thereto after receiving the response from the USB slave device, thereby forcibly switching the originally operated USB master device mode to USB. Slave mode.
- the original USB slave device After receiving the switching instruction sent by the USB host device, the original USB slave device can also automatically power off the USB data cable connected thereto, and forcibly switch the originally operated USB slave device mode to the USB host device mode. After the switched USB host device and the USB slave device re-power the USB data line, the USB connection between the first terminal and the second terminal can be restored, and the master-slave relationship of the devices at both ends of the USB data line is switched.
- the USB connection can be suspended for data transmission, thereby avoiding data transmission errors due to master-slave relationship switching.
- the USB host device is used as the execution body to obtain the power difference between the USB host device and the USB slave device, and the master-slave relationship is switched according to the power difference, and the USB slave device is instructed to perform the slave device. Master-slave relationship switching and other processes. It can be understood that the USB slave device can also obtain the power difference between the USB host device and the USB slave device, and switch the master-slave relationship according to the power difference, and instruct the USB master device to perform the master-slave relationship switch.
- the embodiment of the present application does not impose any limitation on this.
- the devices at both ends of the Wi-Fi connection may also have a master-slave relationship.
- the first terminal opens the personal hotspot
- the second terminal can access the first terminal as a Wi-Fi access point to the personal hotspot of the first terminal.
- the first terminal can function as a Wi-Fi master device
- the second terminal can function as a Wi-Fi slave device.
- the Wi-Fi connection may be based on a related protocol specification of the Wi-Fi connection, such as 802.11.
- the z protocol determines a certain terminal (for example, the first terminal) as a group owner (ie, a Wi-Fi master device), and then the second terminal can be connected to the group owner as a group client (ie, a Wi-Fi slave device), thereby establishing a A Wi-Fi connection between a terminal and a second terminal.
- a group owner ie, a Wi-Fi master device
- the second terminal can be connected to the group owner as a group client (ie, a Wi-Fi slave device), thereby establishing a A Wi-Fi connection between a terminal and a second terminal.
- a Wi-Fi master consumes more power than a Wi-Fi slave in transferring data. Therefore, in order to avoid the problem that the transmission is interrupted due to excessive power consumption of the Wi-Fi master in the process of transmitting data, when the power difference between the Wi-Fi master device and the Wi-Fi slave device is greater than the second threshold (The second threshold may be the same as the first threshold, or may be different.
- the second threshold may be the same as the first threshold, or may be different.
- the power difference between the Wi-Fi master device and the Wi-Fi slave device may be greater than a second threshold (second threshold and the above)
- the threshold is the same or different, and the Wi-Fi slave device is the one with the lower power
- the first terminal and the second terminal automatically switch the master-slave relationship of the current Wi-Fi connection, thereby alleviating the power consumption of the Wi-Fi slave device.
- the master-slave relationship switching of the Wi-Fi connection may be performed by the first terminal, and of course, the master-slave relationship of the Wi-Fi connection may be performed by the second terminal.
- the party that controls the more power can bear the role of more power consumption in the transmission process, thereby reducing the power consumption of one party during the data transmission process.
- the probability of causing a transmission interruption is to say, in the embodiment of the present application, based on the power status of the first terminal and the second terminal, the party that controls the more power can bear the role of more power consumption in the transmission process, thereby reducing the power consumption of one party during the data transmission process. The probability of causing a transmission interruption.
- the power of the Wi-Fi master device is 32%, and the power of the Wi-Fi slave device is 80%.
- the power difference between the Wi-Fi master device and the Wi-Fi slave device is greater than a second threshold (eg, 40%).
- the mobile phone clone APP in the Wi-Fi master device can interact with the mobile phone clone APP in the Wi-Fi slave device to confirm that the two parties switch the master-slave relationship of the current Wi-Fi connection.
- the mobile phone clone APP in the Wi-Fi master device can call the Wi-Fi Manager in the application framework layer, and the current operation mode is switched to the Wi-Fi slave device mode by the Wi-Fi Manager.
- the first terminal switches from the Wi-Fi master to the Wi-Fi slave.
- Wi-Fi can also call the Wi-Fi Manager in the application framework layer from the mobile phone clone APP in the device, and the current operation mode is switched to the Wi-Fi main device mode by the Wi-Fi Manager.
- the second terminal switches from the Wi-Fi slave device to the Wi-Fi master device.
- the power consumption can be correspondingly reduced, thereby reducing the probability that the one party is exhausted and the transmission is interrupted during the data transmission process.
- the first terminal is used as the Wi-Fi master device to switch to the Wi-Fi slave device.
- the second terminal can also be used as the Wi-Fi master device to switch.
- the embodiment of the present application does not impose any limitation on this.
- FIG. 13 is a schematic flowchart diagram of a data transmission method according to another embodiment of the present disclosure. As shown in FIG. 13, the data transmission method may include:
- S1001 The first terminal establishes a USB connection with the second terminal.
- step S1001 For a specific method for establishing a USB connection between the first terminal and the second terminal, refer to the related description of step S402 above, and details are not described herein again. It can be understood that, before S1001, the mobile phone clone APP of the first terminal can be opened, and the mobile phone clone APP of the second terminal is opened.
- the first terminal receives a first input that the user selects data to be transmitted in the first terminal.
- the first terminal may report the message that the USB connection has been established to the mobile phone clone APP running in the first terminal, and the mobile phone clone APP does not need to confirm the Wi-Fi connection.
- the mobile phone clone APP can be triggered to jump to the interface 701 shown in FIG. 7A or FIG. 7B.
- the first terminal may receive a first input that the user selects the data to be transmitted at the interface 701.
- the option of including the data copy 902 in the setting interface 901 of the first terminal may also be performed.
- the first terminal may display the contact as shown in (b) of FIG. 9 .
- At least one candidate data such as a short message, a photo, a call record, a music, and an application, is selected by the user, and the user selects the data to be transmitted that needs to be transmitted from the candidate data as the first input.
- the first terminal sends the data to be transmitted to the second terminal by using a USB connection in response to a second input performed by the user on the first terminal.
- step S1003 if it is detected that the user performs the second input of transmitting the data to be transmitted on the first terminal, for example, the user clicks the send button 702 in the interface 701, at this time, because the first terminal and the second terminal Currently, there is only a transmission channel connected through the USB. Therefore, the first terminal can send the data to be transmitted selected by the user to the second terminal through the USB connection. Due to the stability of the USB connection and the high data transmission speed, the speed and stability of transmitting the data to be transmitted to the second terminal through the USB connection is more than that of transmitting the data to be transmitted to the second terminal through the Wi-Fi connection. high.
- the first terminal establishes a wireless connection with the second terminal.
- the first terminal establishes a Wi-Fi connection with the second terminal.
- the first terminal sends the data to be transmitted to the second terminal by using a USB connection and a wireless connection.
- the first terminal may also detect whether to establish a Wi-Fi connection with the second terminal, or the second terminal may also detect whether it is the first The terminal establishes a Wi-Fi connection.
- the first terminal may send The terminal transmits a part of data to be transmitted (ie, the first data) to the second terminal through the established Wi-Fi connection.
- the first terminal can also transmit another part of the data to be transmitted (ie, the second data) to the second terminal through the established USB connection. In this way, the first terminal can simultaneously transmit data to the second terminal through the USB connection and the Wi-Fi connection, thereby greatly improving the data transmission speed between the terminals.
- the first terminal in the process of performing the step S1003, that is, in the process that the first terminal sends the data to be transmitted through the USB connection, it is detected that the first terminal establishes a wireless connection with the second terminal.
- the first terminal (or the second terminal) may prompt the user whether to enable Wi-Fi connection and USB connection transmission at the same time. Then, if it is detected that the user clicks the OK button 1101, the first terminal may divide the currently remaining data to be transmitted into two parts, one part continues to be sent to the second terminal through the USB connection, and the other part can pass the newly established Wi-Fi.
- the connection is sent to the second terminal to implement dynamic switching between the dual transmission channel and the single transmission channel during data transmission.
- the first terminal may also send the currently remaining data to be transmitted to the second terminal through a wireless connection, for example, through a Wi-Fi connection.
- the first terminal may transmit the data to be transmitted to the second terminal without using a USB connection.
- the first terminal may also adopt dual transmission by default if the user does not have the perception.
- the manner of the channel sends the untransmitted data to be transmitted to the second terminal, which is not limited in this embodiment.
- the USB data can switch the master-slave relationship of the current USB connection, thereby timely charging the lower power side to avoid the problem of transmission interruption caused by one party being too low, and improving the data transmission process. stability.
- the first terminal and the second terminal can also switch the master-slave relationship of the current Wi-Fi connection, thereby alleviating the problem that the Wi-Fi master consumes too much power and causes transmission interruption.
- the first threshold and the second threshold used when determining whether the power difference between the first terminal and the second terminal meets the master-slave relationship switching condition may be based on actual experience or actual application scenarios by those skilled in the art.
- the first terminal or the second terminal is dynamically adjusted in the data transmission process based on a certain algorithm, and the embodiment of the present application does not impose any limitation on this.
- the value of the value of the first threshold is set. Since the sum of the powers in the first terminal and the second terminal is constant, the first terminal (or the second terminal) is ensured to complete the data transmission.
- the estimated amount of power required to complete this data transmission can be estimated based on the amount of data to be transmitted and the transmission speed of the current USB connection and Wi-Fi connection. In this way, based on the estimated power, the first terminal (or the second terminal) can dynamically set the value of the first threshold to ensure that the power of the first terminal and the second terminal are not zero after the data transmission is completed.
- the new mobile phone can be powered as soon as possible to ensure that the power of the second terminal is greater than the power of the first terminal after the data transmission is completed.
- the above steps S1001-S1005 illustrate that the first terminal first establishes a wireless connection with the second terminal, and when the data is transmitted based on the wireless connection, if the first terminal establishes a USB connection with the second terminal, the first terminal passes The USB connection and the Wi-Fi connection transmit data simultaneously to the data transmission scenario of the second terminal.
- the first terminal may also establish a USB connection with the second terminal, and if the first terminal and the second terminal establish a wireless connection, while the data is transmitted based on the USB connection.
- the first terminal can still simultaneously transmit data to the second terminal through the USB connection and the Wi-Fi connection.
- the data transmission method may include:
- the first terminal establishes a wireless connection with the second terminal.
- the first terminal establishes a Wi-Fi connection with the second terminal.
- the mobile phone clone APP of the first terminal may be opened, and the mobile phone clone APP of the second terminal is opened.
- the first terminal receives a first input that the user selects data to be transmitted in the first terminal.
- the first terminal sends the data to be transmitted to the second terminal by using a wireless connection in response to the second input performed by the user on the first terminal.
- the first terminal which is the data transmitting end, can jump to the interface 701 of the mobile phone clone APP, and receive the first input of the data to be transmitted by the user at the interface 701. Further, if it is detected that the user clicks the send button 702 (ie, the second input) in the interface 701, since the first terminal and the second terminal currently only have a transmission channel connected through Wi-Fi, the first terminal can pass The Wi-Fi connection sends the data to be transmitted selected by the user to the second terminal.
- the send button 702 ie, the second input
- the first terminal establishes a USB connection with the second terminal.
- the first terminal sends the untransmitted data to be transmitted to the second terminal by using a USB connection and a wireless connection.
- the first step may be followed by step S404.
- the terminal as the transmitting end transmits a part of data to be transmitted (ie, the first data) to the second terminal through the Wi-Fi connection.
- the first terminal can also transmit another part of the data to be transmitted (ie, the second data) to the second terminal through the USB connection. In this way, the first terminal can simultaneously transmit data to the second terminal through the USB connection and the Wi-Fi connection, thereby greatly improving the data transmission speed between the terminals.
- the first terminal may prompt the user whether to enable the USB connection and the wireless connection for data transmission at the same time. Then, if it is detected that the user clicks the OK button 1301, the first terminal may divide the currently remaining data to be transmitted into two parts, one part continues to be sent to the second terminal through the USB connection, and the other part can pass the newly established Wi-Fi.
- the connection is sent to the second terminal to implement dynamic switching between the dual transmission channel and the single transmission channel during data transmission.
- a USB connection is established between the first terminal and the second terminal.
- the first terminal may send the current remaining data to be transmitted through the USB connection to the second terminal.
- the first terminal may transmit the data to be transmitted to the second terminal without using a Wi-Fi connection.
- the master-slave relationship of the current USB connection may be switched according to the related description of step S404, or the master-slave relationship of the current Wi-Fi connection may be switched.
- the embodiment does not impose any restrictions on this.
- a terminal which may include: a touch screen 1701, wherein the touch screen 1701 may include a touch-sensitive surface 1706 and a display screen 1707; one or more processors 1702
- the memory 1703 can store one or more computer programs 1704.
- the processor 1702 is connected to the touch screen 1701 and the memory 1703, for example, the processor 1702 is connected to the touch screen 1701 and the memory 1703 via a bus.
- the one or more processors 1702 can execute the computer program 1704 stored in the memory 1703, and can be used to execute the related method steps in FIG. 4, FIG. 13, or FIG. 15 to implement the data transmission method in the above embodiment.
- the embodiment of the present application further provides a computer storage medium, where the computer storage medium stores a computer program.
- the processor executes the computer program, the terminal performs the related method steps in FIG. 4, FIG. 13, or FIG.
- the data transmission method in the embodiment is not limited to FIG. 4, FIG. 13, or FIG.
- the embodiment of the present application further provides a computer program product, when the computer program product is run on a computer, causing the computer to execute the related method steps in FIG. 4, FIG. 13, or FIG. 15 to implement the data transmission method in the foregoing embodiment.
- the terminal, the computer storage medium or the computer program product provided by the embodiment of the present application are all used to perform the corresponding method provided above. Therefore, the beneficial effects that can be achieved can be referred to the corresponding method provided above. The beneficial effects will not be described here.
- An integrated unit can be stored in a computer readable storage medium if it is implemented as a software functional unit and sold or used as a standalone product. Based on such understanding, the technical solution of the embodiments of the present application may contribute to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage.
- the medium includes instructions for causing a computer device (which may be a personal computer, terminal, etc.) or processor to perform all or part of the steps of the methods described in various embodiments of the present application.
- the foregoing storage medium includes: a medium that can store program codes, such as a flash memory, a mobile hard disk, a read only memory, a magnetic disk, or an optical disk.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephone Function (AREA)
Abstract
本申请实施例公开了一种数据传输方法及终端,涉及终端领域,可提高终端之间的数据传输速度,保证数据传输时的稳定性。该方法包括:终端与另一终端建立无线连接;并且,终端还与该另一终端建立USB连接;进而,终端可显示第一界面,该第一界面包括至少一项候选数据;用户在第一界面中执行第一输入后,可从上述至少一项候选数据中选中待传输数据;进而,用户在第一界面执行第二输入后,终端可通过上述无线连接和USB连接向该另一终端发送上述待传输数据。
Description
本申请涉及终端领域,尤其涉及一种数据传输方法及终端。
随着通讯技术的飞速发展,手机等终端的存储容量也越来越大。那么,用户在更换手机等场景下需要拷贝和传输的数据量也随之增加。
目前,用户可以通过安装数据拷贝软件,例如,手机克隆APP(application),在两个手机之间通过无线局域网(wireless local area networks,WLAN)等方式传输数据。例如,用户如果希望将旧手机内的数据拷贝到新手机上,可以在旧手机和新手机中均安装手机克隆APP。当旧手机和新手机接入同一无线保真(wireless fidelity,Wi-Fi)网络时,用户可以通过手机克隆APP将旧手机设置为数据发送端,将新手机设置为数据接收端,进而使用该Wi-Fi网络将用户在旧手机中选中的数据发送至新手机。
但是,在上述数据传输过程中数据的传输速度依赖于接入的Wi-Fi网络的网速以及Wi-Fi网络的稳定情况。当Wi-Fi网络的质量不佳时,会影响终端之间的数据传输速度,甚至导致传输中断等问题。
发明内容
本申请技术方案提供一种数据传输方法及终端,可提高终端之间的数据传输速度,保证数据传输时的稳定性。
第一方面,本申请技术方案提供一种数据传输方法,包括:终端与另一终端建立无线连接;终端与该另一终端建立了通用串行总线(universal serial bus,USB)连接;终端可显示第一界面,该第一界面包括至少一项候选数据;用户在第一界面中执行第一输入后,可从上述至少一项候选数据中选中待传输数据;进而,用户在第一界面执行第二输入后,终端可通过上述无线连接和USB连接向该另一终端发送上述待传输数据。
也就是说,当用户需要在两个终端之间传输数据时,可在这两个终端之间建立USB连接和无线连接两种传输通道。其中,可以先建立无线连接,例如Wi-Fi连接,再建立USB连接;也可以先建立USB连接,再建立无线连接。这样,用户选中了待传输数据后,终端可通过USB连接和无线连接这两种传输通道同时向另一终端传输选中的待传输数据,从而大大提高终端之间的数据传输速度。
其中,无线连接可以为Wi-Fi连接,终端与另一终端可以通过如下方式建立Wi-Fi连接:
终端和另一终端可以安装手机克隆APP,响应于用户的触发,在终端上打开手机克隆APP,选择旧手机;响应于用户的触发,在另一终端上打开手机克隆APP,选择新手机,新手机上生成二维码,响应于用户的操作,终端扫描该二维码,与另一终端建立Wi-Fi连接。其中,二维码可以包括用于接入另一终端热点的信息,例如热点的名称和密码等。
其中,上述手机克隆APP为数据传输应用。此外,一键换机APP等也可以理解为是 数据传输应用。
在一种可能的技术方案中,上述待传输数据具体包括第一数据和第二数据,那么,在终端通过无线连接和USB连接向另一终端发送该待传输数据之前,还可以包括:终端根据自身与另一终端的电量确定上述第一数据的大小和第二数据的大小;或者;终端根据上述无线连接的网络质量确定上述第一数据的大小和第二数据的大小;或者;终端根据该USB连接的传输速度确定上述第一数据的大小和第二数据的大小。这样一来,终端可以动态的确定哪些数据通过USB连接传输以及哪些数据通过无线连接,可以使得终端的耗电量以及传输速度最优。
在一种可能的技术方案中,当上述无线连接断开时,终端还可以通过USB连接向另一终端发送未传输的数据。
在一种可能的技术方案中,当上述USB连接断开时,终端还可以通过无线连接向另一终端发送未传输的数据。
可以看出,由于两个终端之间具有USB连接和Wi-Fi连接这两种传输通道,因此,当任意一种传输通道中断时,发送端还可继续使用另一传输通道传输数据,从而保证了数据传输时的稳定性。
在一种可能的技术方案中,在上述终端与另一终端建立USB连接之后,还包括:终端通过该USB连接给该另一终端供电。
在一种可能的技术方案中,在终端通过USB连接给另一终端供电之后,还包括:获取终端的剩余电量和另一终端的剩余电量;根据终端的剩余电量和另一终端的剩余电量,切换该USB连接的主从关系。
示例性的,根据终端的剩余电量和该另一终端的剩余电量,切换该USB连接的主从关系,具体可以包括:当终端的剩余电量与另一终端的剩余电量之间的差值大于第一阈值(例如第一阈值为50%),且终端为剩余电量较低的一方时,切换该USB连接的主从关系。
这样一来,可将电量较低的USB主设备切换为接受供电的USB从设备,并将电量较高的USB从设备切换为供电的USB主设备,从而及时对电量较低的一方进行及时补电,避免因一方电量过低而导致传输中断的问题,提高数据传输过程的稳定性。
在一种可能的技术方案中,上述第一输入和第二输入可以为两个独立的手势;或者,上述第一输入和第二输入也可以为一个手势的两个阶段。
在一种可能的技术方案中,上述终端和另一终端均支持USB Type-C接口。其中,终端与另一终端建立了USB连接,可以通过C-to C(Type C to Type C)的直连数据线连接终端和另一终端。
在一种可能的技术方案中,上述候选数据具体可包括联系人、信息、照片、通话记录、音频、视频、文档或应用中的至少一项。
在一种可能的技术方案中,上述终端内安装有数据传输应用,上述第一界面为该数据传输应用中的界面。
在一种可能的技术方案中,在终端显示第一界面之前,还包括:响应于用户打开该数据传输应用的操作,终端显示该数据传输应用的第二界面,该第二界面用于提示用户将终端设置为数据发送端或数据接收端。
在一种可能的技术方案中,在终端显示第二界面之后,还包括:响应于用户将终端设 置为数据发送端或数据接收端的操作,终端显示提示信息,提示所述终端与所述另一终端建立连接。
在一种可能的技术方案中,上述无线连接可以为Wi-Fi连接。在终端与另一终端建立Wi-Fi连接之后,终端还可以根据自身的剩余电量和另一终端的剩余电量,切换当前Wi-Fi连接的主从关系。
示例性的,如果上述终端为Wi-Fi主设备,另一终端为Wi-Fi从设备,且Wi-Fi主设备的耗电量大于Wi-Fi从设备的耗电量时,如果检测到上述终端的剩余电量与另一终端的剩余电量之间的差值大于第二阈值(例如第二阈值为60%),且上述终端为剩余电量较低的一方时,则可切换Wi-Fi连接的主从关系。
这样一来,可将耗电量较高的Wi-Fi主设备切换为耗电量较低的Wi-Fi从设备,并将耗电量较低的Wi-Fi从设备切换为耗电量较高的Wi-Fi主设备,从而缓解Wi-Fi主设备耗电过快而导致传输中断的问题。
第二方面,本申请技术方案提供一种数据传输方法,应用于第一终端与第二终端传输数据的场景下,该第一终端与第二终端内均安装有数据传输应用。所述方法包括:响应于用户对第一终端的触发,第一终端打开其数据传输应用,并将自身作为旧手机;响应于用户对第二终端的触发,第二终端打开其数据传输应用,并将自身作为新手机;第一终端可与第二终端分别建立Wi-Fi连接和USB连接;第一终端显示上述数据传输应用的第一界面,该第一界面包括至少一项候选数据;响应于用户在第一界面中的第一输入,可从至少一项候选数据中选中待传输数据;响应于用户在第一界面中的第二输入,第一终端可通过上述Wi-Fi连接和USB连接向第二终端发送选中的待传输数据。从而提高用户使用数据传输应用更换手机时的数据传输速度。
在一种可能的技术方案中,第一终端打开其数据传输应用,并将自身作为旧手机,具体实现可以为:第一终端打开其数据传输应用,第一终端显示数据传输应用的第二界面,第二界面用于提示用户将第一终端设置为旧手机,响应于用户的触发,将第一终端设置为旧手机。类似的,在第二终端打开其数据传输应用之后,第二终端也可以显示数据传输应用的第二界面,第二界面用于提示用户将第二终端设置为新手机,响应于用户的触发,将第二终端设置为新手机。
在一种可能的技术方案中,在第一终端显示了数据传输应用的第二界面之后,如果接收到用户将第一终端设置为旧手机的操作,第一终端可以显示提示信息,用于提示第一终端与第二终端建立连接。
其中,提示信息可以包括第一提示和第二提示,第一提示用于提示第一终端与第二终端建立Wi-Fi连接,第二提示用于提示第一终端与第二终端建立USB连接。类似的,在第二终端显示了数据传输应用的第二界面之后,如果接收到用户将第二终端设置为新手机的操作,第二终端也可以显示提示信息,用于提示与第一终端建立连接。提示信息可以包括第一提示和第二提示,第一提示用于提示第二终端与第一终端建立Wi-Fi连接,第二提示用于提示第二终端与第一终端建立USB连接。
其中,第一终端与第二终端建立Wi-Fi连接,可以为:在第二终端(新手机)上生成二维码,响应于用户的操作,第一终端(旧手机)扫描该二维码,与新手机建立Wi-Fi连接。其中,二维码可以包括用于接入第二终端热点的信息,例如热点的名称和密码等。
在一种可能的技术方案中,第一终端和第二终端的应用程序框架层中均包括Wi-Fi管理器和USB管理器。当第一终端的Wi-Fi管理器检测到与第二终端建立Wi-Fi连接后,可向其数据传输应用上报Wi-Fi连接建立事件;当第一终端的USB管理器检测到与第二终端建立USB连接后,向其数据传输应用上报USB连接建立事件。类似的,当第二终端的Wi-Fi管理器检测到与第一终端建立Wi-Fi连接后,可向其数据传输应用上报Wi-Fi连接建立事件;当第二终端的USB管理器检测到与第一终端建立USB连接后,向其数据传输应用上报USB连接建立事件。这样,作为旧手机的第一终端内的数据传输应用在确认USB连接和Wi-Fi连接均建立后可显示上述第一界面;作为新手机的第二终端内的数据传输应用在确认USB连接和Wi-Fi连接均建立后可等待接收第一终端发送的待传输数据。
在一种可能的技术方案中,上述待传输数据包括第一数据和第二数据,其中,终端通过上述Wi-Fi连接和USB连接向第二终端发送待传输数据,具体包括:第一终端的数据传输应用通过调用Wi-Fi管理器,在Wi-Fi连接上向第二终端发送第一数据;第一终端的数据传输应用通过调用USB管理器,在USB连接上向第二终端发送第二数据。
在一种可能的技术方案中,在第一终端与第二终端建立USB连接后之后,第一终端可以作为USB主设备向第二终端供电。其中,第一终端(或第二终端)内的数据传输应用可调用电源管理器获取自身的剩余电量,并通过USB连接或Wi-Fi连接获取对端的剩余电量。
在一种可能的技术方案中,当第一终端的剩余电量与第二终端的剩余电量之间的差值大于第一阈值(例如第一阈值为50%),第一终端为剩余电量较低的一方时,第一终端内的数据传输应用可调用其USB管理器,将USB管理器从USB主设备工作模式切换为USB从设备工作模式。相应的,第二终端内的数据传输应用也可调用其USB管理器,将USB管理器从USB从设备工作模式切换为USB主设备工作模式。这样就可以完成USB连接两端设备的主从关系切换过程。
在一种可能的技术方案中,当第一终端的剩余电量与第二终端的剩余电量之间的差值大于第二阈值(例如第二阈值为60%),第一终端为Wi-Fi连接中耗电量较高的一方时,第一终端内的数据传输应用可调用其Wi-Fi管理器,将Wi-Fi管理器从Wi-Fi主设备工作模式切换为Wi-Fi从设备工作模式。相应的,第二终端内的数据传输应用也可调用其Wi-Fi管理器,将Wi-Fi管理器从Wi-Fi从设备工作模式切换为Wi-Fi主设备工作模式。这样就可以完成Wi-Fi连接两端设备的主从关系切换过程。
在一种可能的技术方案中,在第一终端与第二终端建立USB连接后之后,如果第一终端内的USB管理器检测到上述USB连接断开,则USB管理器可向其对应的数据传输应用上报USB连接断开事件;进而,数据传输应用可调用Wi-Fi管理器,在Wi-Fi连接上向第二终端发送未传输的数据。
类似的,在第一终端与第二终端建立Wi-Fi连接后之后,如果第一终端内的Wi-Fi管理器检测到上述Wi-Fi连接断开,则Wi-Fi管理器可向其对应的数据传输应用上报Wi-Fi连接断开事件;进而,数据传输应用可调用Wi-Fi管理器,在USB连接上向第二终端发送未传输的数据。
第三方面,本申请技术方案提供一种终端,包括:建立单元,用于与另一终端建立无线连接;与该另一终端建立USB连接;显示单元,用于显示第一界面,第一界面包括至少一项候选数据;确定单元,用于响应于用户在第一界面中的第一输入,从该至少一项候选 数据中选中待传输数据;传输单元,用于响应于用户在第一界面中的第二输入,通过该无线连接和USB连接向该另一终端发送该待传输数据。
在一种可能的技术方案中,该待传输数据包括第一数据和第二数据,上述确定单元,还用于:根据终端与该另一终端的电量确定第一数据的大小和第二数据的大小;或者;根据该无线连接的网络质量确定第一数据的大小和第二数据的大小;或者;根据该USB连接的传输速度确定第一数据的大小和第二数据的大小。
在一种可能的技术方案中,当该无线连接断开时,上述传输单元还用于通过该USB连接向该另一终端发送未传输的数据。
在一种可能的技术方案中,当该USB连接断开时,上述传输单元还用于通过该无线连接向该另一终端发送未传输的数据。
在一种可能的技术方案中,上述终端还包括供电单元,用于通过该USB连接给该另一终端供电。
在一种可能的技术方案中,上述终端还包括切换单元,用于获取终端的剩余电量和该另一终端的剩余电量;根据终端的剩余电量和该另一终端的剩余电量,切换该USB连接的主从关系。
在一种可能的技术方案中,上述切换单元,具体用于当终端的剩余电量与该另一终端的剩余电量之间的差值大于第一阈值,且终端为剩余电量较低的一方时,切换该USB连接的主从关系。
在一种可能的技术方案中,第一输入和第二输入为两个独立的手势;或者,第一输入和第二输入为一个手势的两个阶段。
在一种可能的技术方案中,终端和该另一终端均支持USB Type-C接口。
在一种可能的技术方案中,该候选数据包括联系人、信息、照片、通话记录、音频、视频、文档或应用中的至少一项。
在一种可能的技术方案中,终端安装有数据传输应用,第一界面为该数据传输应用的界面。
在一种可能的技术方案中,上述显示单元,还用于响应于用户打开该数据传输应用的操作,显示该数据传输应用的第二界面,第二界面用于提示用户将终端设置为数据发送端或数据接收端。
在一种可能的技术方案中,上述显示单元,还用于响应于用户将终端设置为数据发送端或数据接收端的操作,显示提示信息,用于提示终端与该另一终端建立连接。
第四方面,本申请技术方案提供一种终端,包括触摸屏和一个或多个处理器;该处理器用于:控制终端与另一终端建立无线连接;控制终端与该另一终端建立USB连接;控制该触摸屏显示第一界面,第一界面包括至少一项候选数据;响应于用户在第一界面中的第一输入,从该至少一项候选数据中选中待传输数据;响应于用户在第一界面中的第二输入,控制终端通过该无线连接和USB连接向该另一终端发送该待传输数据。
在一种可能的技术方案中,该待传输数据包括第一数据和第二数据,该处理器还用于:根据终端与该另一终端的电量确定第一数据的大小和第二数据的大小;或者;根据该无线连接的网络质量确定第一数据的大小和第二数据的大小;或者;根据该USB连接的传输速度确定第一数据的大小和第二数据的大小。
在一种可能的技术方案中,该处理器还用于:当该无线连接断开时,控制终端通过该USB连接向该另一终端发送未传输的数据。
在一种可能的技术方案中,该处理器还用于:当该USB连接断开时,控制终端通过该无线连接向该另一终端发送未传输的数据。
在一种可能的技术方案中,该处理器还用于:控制终端通过该USB连接给该另一终端供电。
在一种可能的技术方案中,该处理器还用于:获取终端的剩余电量和该另一终端的剩余电量;根据终端的剩余电量和该另一终端的剩余电量,切换该USB连接的主从关系。
在一种可能的技术方案中,该处理器具体用于:当终端的剩余电量与该另一终端的剩余电量之间的差值大于第一阈值,且终端为剩余电量较低的一方时,控制该终切换该USB连接的主从关系。
在一种可能的技术方案中,终端安装有数据传输应用,第一界面为该数据传输应用的界面;该处理器还用于:响应于用户打开该数据传输应用的操作,控制该触摸屏显示该数据传输应用的第二界面,第二界面用于提示用户将终端设置为数据发送端或数据接收端。
在一种可能的技术方案中,该处理器还用于:响应于用户将终端设置为数据发送端或数据接收端的操作,控制该触摸屏显示提示信息,用于提示终端与该另一终端建立连接。
第五方面,本申请技术方案提供一种计算机存储介质,包括计算机指令,当计算机指令在终端上运行时,使得终端执行如第一方面中任一项所述的数据传输方法。
第六方面,本申请技术方案提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面中任一项所述的数据传输方法。
可以理解地,上述提供的第三方面和第四方面所述的终端、第五方面所述的计算机存储介质,以及第六方面所述的计算机程序产品均可以用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
图1为本申请实施例提供的一种终端的结构示意图一;
图2为本申请实施例提供的一种数据传输方法的场景示意图一;
图3为本申请实施例提供的一种终端内操作系统的架构示意图;
图4为本申请实施例提供的一种数据传输方法的交互示意图一;
图5为本申请实施例提供的一种数据传输方法的场景示意图二;
图6为本申请实施例提供的一种数据传输方法的场景示意图三;
图7A为本申请实施例提供的一种数据传输方法的场景示意图四;
图7B为本申请实施例提供的一种数据传输方法的场景示意图五;
图8为本申请实施例提供的一种数据传输方法的场景示意图六;
图9为本申请实施例提供的一种数据传输方法的场景示意图七;
图10为本申请实施例提供的一种数据传输方法的场景示意图八;
图11为本申请实施例提供的一种数据传输方法的场景示意图九;
图12为本申请实施例提供的一种数据传输方法的场景示意图十;
图13为本申请实施例提供的一种数据传输方法的交互示意图二;
图14为本申请实施例提供的一种数据传输方法的场景示意图十一;
图15为本申请实施例提供的一种数据传输方法的交互示意图三;
图16为本申请实施例提供的一种数据传输方法的场景示意图十二;
图17为本申请实施例提供的一种终端的结构示意图二。
本申请实施例提供的数据传输方法可以应用于终端。示例性的,该终端可以为平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、个人数字助理(Personal Digital Assistant,PDA)、可穿戴电子设备、智能手表等设备,也可以是图1所示的手机100,本申请实施例中对终端的具体形式不做特殊限制。
如图1所示,本申请实施例中的终端可以为手机100。下面以手机100为例对实施例进行具体说明。应该理解的是,图示手机100仅是终端的一个范例,并且手机100可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
如图1所示,手机100可以包括:处理器101、射频(radio frequency,RF)电路102、存储器103、触摸屏104、蓝牙装置105、一个或多个传感器106、Wi-Fi 107、定位装置108、音频电路109、外设接口110、电源装置111以及指纹识别器112等部件。这些部件可通过一根或多根通信总线或信号线(图1中未示出)进行通信。本领域技术人员可以理解,图1中示出的硬件结构并不构成对手机100的限定,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对手机100的各个部件进行具体的介绍:
处理器101是手机100的控制中心,利用各种接口和线路连接手机100的各个部分,通过运行或执行存储在存储器103内的应用程序,以及调用存储在存储器103内的数据和指令,执行手机100的各种功能和处理数据。在一些实施例中,处理器101可包括一个或多个处理单元;处理器101还可以集成应用处理器和调制解调处理器;其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器101中。举例来说,处理器101可以是多核处理器。
射频电路102可用于在收发信息或通话过程中,无线信号的接收和发送。具体地,射频电路102可以将基站的下行数据接收后,给处理器101处理;另外,将涉及上行的数据发送给基站。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频电路102还可以通过无线通信和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短信服务等。
存储器103用于存储应用程序以及数据,处理器101通过运行存储在存储器103的应用程序以及数据,执行手机100的各种功能以及数据处理。存储器103可以包括存储程序区以及存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等);存储数据区可以存储根据使用手机100时所创建的 数据(比如音频数据、电话本等)。此外,存储器103可以包括高速随机存取存储器,还可以包括非易失存储器,例如磁盘存储器件、闪存器件或其他存储器件等。存储器103可以存储各种操作系统,例如苹果公司所开发的
操作系统,谷歌公司所开发的
操作系统等。
触摸屏104可以包括触敏表面104-1和显示器104-2。
其中,触敏表面104-1(例如触控面板)可采集手机100的用户在其上或附近的触摸事件(比如用户使用手指、触控笔等任何适合的物体在触敏表面104-1上或在触敏表面104-1附近的操作),并将采集到的触摸信息发送给其他器件例如处理器101。触敏表面104-1可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再发送给处理器101,触摸控制器还可以接收处理器101发送的指令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型来实现触敏表面104-1。
显示器(也称为显示屏)104-2可用于显示由用户输入的信息或提供给用户的信息以及手机100的各种菜单。可以采用液晶显示器、有机发光二极管等形式来配置显示器104-2。触敏表面104-1可以覆盖在显示器104-2之上,当触敏表面104-1检测到在其上或附近的触摸事件后,传送给处理器101以确定触摸事件的类型,随后处理器101可以根据触摸事件的类型在显示器104-2上提供相应的视觉输出。虽然在图1中,触敏表面104-1与显示屏104-2是作为两个独立的部件来实现手机100的输入和输出功能,但是在某些实施例中,可以将触敏表面104-1与显示屏104-2集成而实现手机100的输入和输出功能。可以理解的是,触摸屏104是由多层材料堆叠而成,本申请实施例中只展示出了触敏表面(层)和显示屏(层),其他层在本申请实施例中不予记载。另外,在本申请其他一些实施例中,触敏表面104-1可以覆盖在显示器104-2之上,并且触敏表面104-1的尺寸大于显示屏104-2的尺寸,使得显示屏104-2全部覆盖在触敏表面104-1下面,或者,上述触敏表面104-1可以以全面板的形式配置在手机100的正面,也即用户在手机100正面的触摸均能被手机感知,这样就可以实现手机正面的全触控体验。在其他一些实施例中,触敏表面104-1以全面板的形式配置在手机100的正面,显示屏104-2也可以以全面板的形式配置在手机100的正面,这样在手机的正面就能够实现无边框的结构。在本申请其他一些实施例中,触摸屏104还可以包括一组或多组传感器阵列,用于触摸屏104在感测用户在其上的触摸事件的同时也可以感测到用户在其上施加的压力等。
手机100还可以包括蓝牙装置105,用于实现手机100与其他短距离的终端(例如手机、智能手表等)之间的数据交换。本申请实施例中的蓝牙装置可以是集成电路或者蓝牙芯片等。
手机100还可以包括至少一种传感器106,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器。其中,环境光传感器可根据环境光线的明暗来调节触摸屏104的显示器的亮度,接近传感器可在手机100移动到耳边时,关闭显示器的电源。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击) 等;至于手机100还可配置的指纹识别器件、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不予赘述。
Wi-Fi 107,用于为手机100提供遵循Wi-Fi相关标准协议的网络接入,手机100可以通过Wi-Fi 107接入到Wi-Fi接入点,进而帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。在其他一些实施例中,该Wi-Fi 107也可以作为Wi-Fi无线接入点,可以为其他终端提供Wi-Fi网络接入。
定位装置108,用于为手机100提供地理位置。可以理解的是,该定位装置108具体可以是全球定位系统(global positioning system,GPS)、北斗卫星导航系统等定位系统的接收器。定位装置108在接收到上述定位系统发送的地理位置后,将该信息发送给处理器101进行处理,或者发送给存储器103进行保存。在另外的一些实施例中,该定位装置108可以是辅助全球卫星定位系统(assisted global positioning system,AGPS)的接收器,AGPS是一种在一定辅助配合下进行GPS定位的运行方式,它可以利用基站的信号,配合GPS卫星信号,可以让手机100定位的速度更快;在AGPS系统中,该定位装置108可通过与辅助定位服务器(例如手机定位服务器)的通信而获得定位辅助。AGPS系统通过作为辅助服务器来协助定位装置108完成测距和定位服务,在这种情况下,辅助定位服务器通过无线通信网络与终端例如手机100的定位装置108(即GPS接收器)通信而提供定位协助。
音频电路109、扬声器113、麦克风114可提供用户与手机100之间的音频接口。音频电路109可将接收到的音频数据转换后的电信号,传输到扬声器113,由扬声器113转换为声音信号输出;另一方面,麦克风114将收集的声音信号转换为电信号,由音频电路109接收后转换为音频数据,再将音频数据输出至RF电路102以发送给比如另一手机,或者将音频数据输出至存储器103以便进一步处理。
外设接口110,用于为外部的输入/输出设备(例如键盘、鼠标、外接显示器、外部存储器、用户识别模块卡等)提供各种接口。例如通过通用串行总线接口与鼠标连接,通过用户识别模块卡卡槽上的金属触点与电信运营商提供的用户识别模块(subscriber identity module,SIM)卡电连接。外设接口110可以被用来将上述外部的输入/输出外围设备耦接到处理器101和存储器103。
手机100还可以包括给各个部件供电的电源装置111(比如电池和电源管理芯片),电池可以通过电源管理芯片与处理器101逻辑相连,从而通过电源装置111实现管理充电、放电、以及功耗管理等功能。
尽管图1未示出,手机100还可以包括摄像头、闪光灯、微型投影装置、近场通信(near field communication,NFC)装置等,在此不予赘述。
在本申请实施例中,两个终端(例如手机A和手机B)之间可以基于有线连接进行数据传输,也可以基于无线连接进行数据传输,还可以同时基于有线连接和无线连接进行数据传输。
例如,手机A和手机B中均具有Wi-Fi功能。如图2所示,手机A可通过其Wi-Fi接入到某一Wi-Fi接入点,手机B也可通过其Wi-Fi接入到该Wi-Fi接入点,这样,手机A与手机B就可以进行数据传输。当然,手机A和手机B也可通过各自的Wi-Fi建立WLAN直连,此时在手机A与手机B之间传输数据时无需额外通过Wi-Fi接入点转发。又或者,手机A(或手机B)也可以作为Wi-Fi接入点与另一手机建立无线连接,从而使用该无线 连接实现数据传输。当然,手机A和手机B也可以通过蓝牙、NFC或4G网络、5G网络等方式建立无线连接,本申请实施例对此不做任何限制。
又例如,如果手机A和手机B中均具有USB接口(USB接口为外设接口的一种)。仍如图2所示,可使用与手机A和手机B的USB接口均适配的USB数据线201建立手机A和手机B之间的有线连接。
其中,上述USB接口的类型具体可以为USB Type A接口、USB Type B接口、Micro USB接口、Mini USB接口或者USB Type C接口等,本申请实施例对此不做任何限制。
其中,上述数据线201两端的接口需要分别与手机A和手机B的USB接口适配。例如,如果手机A和手机B的USB接口均为USB Type C接口,那么,可以使用Type C to Type C(C-to-C)的直连数据线连接手机A和手机B的USB接口。或者,当数据线201两端的接口不是USB Type C接口时,例如,USB数据线201的一端为USB Type C接口,而USB数据线201的另一端为USB Type A接口。此时,可以通过OTG(On The Go)连接器将USB数据线201的USB Type A接口转换为USB Type C接口,进而实现手机A和手机B之间的有线连接。
另外,手机A和手机B通过USB数据线201进行数据传输时可基于USB1.0、USB2.0、USB3.0或USB3.1等任意类型的USB规范,本申请实施例对此不做任何限制。
也就是说,在本申请实施例中,当用户需要在两个终端之间传输数据时,可在这两个终端之间建立有线连接和无线连接共两种传输通道。例如,用户希望将旧手机中的数据传输给新手机时,可使用相应接口的数据线连接旧手机和新手机以建立USB连接,并可通过Wi-Fi功能建立旧手机和新手机之间的Wi-Fi连接。这样,旧手机可通过USB连接和Wi-Fi连接这两种传输通道同时传输数据至新手机,从而大大提高终端之间的数据传输速度。
并且,由于旧手机和新手机之间具有USB连接和Wi-Fi连接这两种传输通道,因此,当任意一种传输通道中断(例如Wi-Fi连接断开)时,发送端还可继续使用另一传输通道(例如USB连接)传输数据,从而保证了数据传输时的稳定性。
示例性地,在手机100的存储器120中可以存储
操作系统,该操作系统是一个以Linux为基础的移动设备操作系统,并结合手机100中的上述硬件实现各种各样的功能。下面,将详细说明该存储的
操作系统的软件架构。需要说明的是,本申请实施例仅以
操作系统为示例来说明终端要实现本实施例的技术方案的所需的软件环境,本领域技术人员可以理解,本申请实施例也可以以其它操作系统来实现,例如ios操作系统。
1、应用程序(Applications)层
应用程序层是操作系统的最上一层,包括操作系统的原生应用程序,例如电子邮件客户端、短信、通话、日历、浏览器、联系人等。当然,对于开发者来说,开发者可以编写应用程序并安装到该层。
一般而言,应用程序可以使用Java语言开发,通过调用应用程序框架层所提供的应用程序编程接口(application programming interface,API)来完成。
2、应用程序框架(Application Framework)层
应用程序框架层主要是为开发者提供了可以访问应用程序所使用的各种API,开发者可以通过应用程序框架来与操作系统的底层(例如函数库、Linux内核等)进行交互,开发自己的应用程序。该应用程序框架主要是Android操作系统的一系列的服务和管理系统。应用程序框架主要包括如下基础服务:
活动管理器(Activity Manager):用来管理应用程序生命周期并提供常用的导航回退功能;
内容提供器(Content Providers):用来管理不同应用程序间的数据共享和访问;
通知管理器(Notification Manager):用于控制应用程序在状态栏、锁屏界面等显示提示信息(例如警告(Alerts)、通知(Notifications)等)给用户;
剪贴板管理器(Clipboard Manager):主要提供应用程序内部或者应用程序之间的复制或粘贴功能;
视图(View):具有丰富的、可扩展的视图集合,可用于构建一个应用程序。它具体包括列表(list)、网格(grid)、文本(text)、按钮(button),以及图片(image)等多种类型。
位置管理器(Location Manager):主要是让应用程序可以访问到终端所处的地理位置。
3、函数库(Libraries)层
函数库层是应用程序框架的支撑,是连接应用程序框架层与Linux内核层的重要纽带。函数库层包括一些由计算机程序C语言或C++语言编译的函数库,这些函数库能被操作系统中的不同的组件使用,它们通过应用程序框架层为开发者提供服务。具体地,函数库可以包括libc函数库,它是专门为基于embedded linux的设备定制的;函数库还可以包括多媒体库(Media Framework),该库支持多种编码格式的音频或视频的回放和录制,同时支持静态图像文件,以及常见的音频或视频编码格式。函数库还包括界面管理库(Surface Manager),主要负责管理针对显示系统的访问,具体用于在执行多个应用程序时候,负责管理显示与存取操作间的互动,另外也负责2D绘图与3D绘图进行显示合成。
函数库层中还可以包括其他的用于实现手机各个功能的函数库,例如:SGL(Scalable Graphics Library):基于XML(Extensible Markup Language)文件的2D图形图像处理引擎;SSL(Secure Sockets Layer):位于TVP/IP协议与各种应用层协议之间,为数据通讯提供支持;OpenGL/ES:3D效果的支持;SQLite:关系型数据库引擎;Webkit:Web浏览器引擎;FreeType:位图及矢量字体支持;等等。
Android Runtime是一种在
操作系统上的运行环境,是
操作系统所使用的一种新的虚拟机。在Android Runtime中,采用AOT(Ahead-Of-Time)技术,应用程序在第一次安装的时候,该应用程序的字节码就会被预先编译成机器码,让应用程序成为真正的本地应用,之后再次运行,就省去了编译这一步骤,启动和执行都会变得更加快速。
在本申请其它一些实施例中,Android Runtime也可以由核心函数库(Core Libraries)和Dalvik虚拟机(Dalvik Virtual Machine)代替。核心函数库提供了Java语言API中的大多数功能,主要通过Java原生界面(Java native interface,JNI)的方式向应用程序框架层提供调用底层程序库的接口。同时也包含了该操作系统的一些核心API,如android.os、 android.net、android.media等等。Dalvik虚拟机使用一种JIT(Just-in-Time)的运行时编译的机制,每次启动一个进程都需要虚拟机在后台重新编译字节码,会对启动速度有一定的影响。每一个应用程序都运行在是一个Dalvik虚拟机中的实例中,每一个Dalvik虚拟机实例都是一个独立的进程空间。Dalvik虚拟机设计成在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。需要提出的是Dalvik虚拟机依赖于Linux内核提供基本功能(线程、底层内存管理)。可以理解的是,Android Runtime、Dalvik属于不同类型的虚拟机,本领域技术人员可以在不同情况下选用不同形式的虚拟机。
4、Linux内核(Linux Kernel)层
该层提供操作系统的核心系统服务,如安全性、内存管理、进程管理、网络协议栈和驱动模型等都基于Linux内核。Linux内核同时也作为硬件和软件栈之间的抽象层。该层有许多与移动设备相关的驱动程序,主要的驱动有:显示驱动;基于Linux的帧缓冲驱动;作为输入设备的键盘驱动;基于内存技术设备的Flash驱动;照相机驱动;蓝牙驱动;Wi-Fi驱动;USB驱动等。
在本申请实施例中,仍如图3所示,应用程序层安装有一个或多个用于在终端之间传输数据的数据传输应用,例如,手机克隆APP、一键换机APP等。并且,应用程序框架层还包括Wi-Fi管理器(Wi-Fi Manager)和USB管理器(USB Manager)。以手机克隆APP为例,手机克隆APP可以通过调用相应的API与Wi-Fi Manager和USB Manager交互,这样在向用户提供数据传输服务时,可由手机克隆APP作为决策者的角色来控制Wi-Fi Manager和USB Manager,可以实现在Wi-Fi连接和USB连接上同时传输数据的双通道数据传输模式。
当应用程序层中的应用(例如手机克隆APP)需要使用Wi-Fi功能时,可通过Context.getSystemService(Context.WiFi_SERVICE)这一函数来调用应用程序框架层中的Wifi Manager,Wifi Manager又可以通过调用内核层中的Wifi驱动发现和管理其他使用Wi-Fi功能的设备,例如,打开或关闭Wi-Fi功能、扫描Wi-Fi网络,建立Wi-Fi连接等。
当应用程序层中的应用(例如手机克隆APP)需要使用USB功能时,可通过Context.getSystemService(Context.USB_SERVICE)这一函数来调用应用程序框架层中的USB Manager对象,USB Manager又可以通过调用内核层中的USB驱动发现和管理其他USB设备,例如,扫描USB设备、检测USB设备的插拔事件等。
其中,USB Manager在运行时可以有两种工作模式,一个是作为作为主设备时的USBHostManager模式,另一个是作为从设备时的USBDeviceManager模式。当终端(例如手机A)处于USBHostManager模式时,说明此时手机A的角色为USB主设备(host),手机A可向与其通过USB数据线相连的其他终端(例如手机B)供电,此时,手机B作为USB从设备(slave)运行USBDeviceManager模式。可以理解的是,USBDeviceManager模式和USBHostManager模式是一个相对的概念。以手机为例,当手机通过USB数据线与PC连接时,手机为USBDeviceManager模式,手机作为USB从设备,而当手机通过USB数据线与U盘连接时,手机为USBHostManager模式,手机作为USB主设备。
示例性的,USB Manager可以通过调用函数:public void setCurrentFunction(String function,boolean usbDataUnlocked)在USBDeviceManager模式与USBHostManager模式之间 切换。当切换为USBDeviceManager模式时,USB Manager可执行函数:public ParcelFileDescriptor openAccessory(UsbAccessory accessory)去连接从设备;当切换为USBHostManager模式时,USB Manager可执行函数:public UsbDeviceConnection openDevice(UsbDevice device)去连接并响应主设备发出的指令。
在USB OTG协议之前,USB数据线两端的主从关系一般是确定的,当某一终端与USB数据线上作为USB主设备的接口连接后,触发该终端的USB Manager切换为USBHostManager模式,由该终端扮演USB主设备的角色;当另一终端与USB数据线上作为USB从设备的接口连接后,触发该终端的USB Manager切换为USBDeviceManager模式,由该终端扮演USB从设备的角色。而USB OTG协议中引入了一种主机协商协议(Host Negotiation Protocol,简称HNP)的机制,基于这种机制,USB数据线两端设备在建立USB连接时可协商确定哪一方作为USB主设备,进而由USB主设备向另一方(即USB从设备)供电。因此,在使用支持HNP的USB数据线时均可通过上述协商机制确定USB数据线两端设备的主从关系。
需要说明的是,在USB Type-C规范中也沿用了上述主机协商协议的机制,基于USB Type-C规范确定的USB主设备也可以称为Source设备,即通过VBUS或者VCONN供电的设备,而基于USB Type-C规范确定的USB从设备也可以称为Sink设备,即通过VBUS或者VCONN接受供电的设备。为方便描述,后续实施例中均以USB主设备和USB从设备为例进行说明。
在本申请实施例中,当用户打开手机A中的手机克隆APP,用户打开手机B中的手机克隆APP,手机克隆APP可提示用户与另一传输端(例如手机B)建立Wi-Fi连接和USB连接。进而,手机克隆APP可调用应用程序框架层的Wi-Fi Manager检测并完成与手机B的Wi-Fi连接,手机克隆APP可调用应用程序框架层的USB Manager检测并完成与手机B的USB连接。
那么,以手机A向手机B发送数据为例,手机A可以将用户选中的一部分数据通过上述Wi-Fi连接发送给手机B,并将用户选中的另一部分数据通过上述USB连接发送给手机B。这样的双通道数据传输方法可以显著提高数据的传输速度,并且,当USB连接(或Wi-Fi连接)断开时,手机A还可以通过另一条通道向手机B发送数据,即在数据传输过程中可以实现单通道传输和双通道传输的动态切换,从而提高数据传输过程中的数据稳定性。
为了便于理解,以下结合附图对本申请实施例提供的数据传输方法进行具体介绍。
图4为本申请实施例提供的一种数据传输方法的流程示意图。如图4所示,该数据传输方法可以包括:
S401、第一终端与第二终端建立无线连接。
S402、第一终端与第二终端建立USB连接。
以第一终端为用户的旧手机,第二终端为用户的新手机为例,当用户希望将旧手机中的数据拷贝到新手机上时,用户可分别打开新手机和旧手机上安装的手机克隆APP。
如图5所示,手机克隆APP的首页上显示有设置为旧手机的按钮501以及设置为新手机的按钮502。如图5中的(a)所示,如果检测到用户点击按钮501,则说明此时用户操作的终端为旧手机(即第一终端),后续可将第一终端作为发送端向与其连接的接收端(即 第二终端)发送数据。如图5中的(b)所示,如果检测到用户点击按钮502,则说明此时用户操作的终端为新手机(即第二终端),后续可将第二终端作为接收端接收与其连接的发送端(即第一终端)发送的数据。
进一步地,第一终端检测到用户点击按钮501或第二终端检测到用户点击按钮502后,如图6所示,第一终端(或第二终端)可显示在新手机和旧手机之间建立无线连接(例如Wi-Fi连接)的提示601,以及在新手机和旧手机之间建立USB连接的提示602。其中,提示601和提示602还可以是二维码、动画、视频或语音等形式,本申请实施例对此不做任何限制。
那么,根据上述提示601,用户可以打开新手机和旧手机的Wi-Fi功能并接入同一Wi-Fi网络,从而建立新手机和旧手机之间的Wi-Fi连接。或者,用户也可以打开新手机和旧手机的WLAN直连功能,通过WLAN直连功能建立新手机和旧手机之间的Wi-Fi连接。又或者,用户也可以将新手机(或旧手机)设置为个人热点,进而操作另一终端接入该个人热点后建立新手机和旧手机之间的Wi-Fi连接。
示例性的,当第二终端检测到用户点击按钮502后,手机克隆APP可调用Wi-Fi Manager自动建立个人热点,并将该个人热点的名称和密码等信息以二维码等方式显示出来。那么,用户操作第一终端扫描该二维码后即可与第二终端建立Wi-Fi连接。在这种情况下,第一终端和第二终端可以不显示提示601。
又或者,当第一终端检测到用户点击按钮501,第二终端检测到用户点击按钮502后,如果某一终端(例如第一终端)已经开启Wi-Fi功能,并接入某一Wi-Fi网络,由于此时第一终端内的手机克隆APP无法确定当前Wi-Fi连接的另一端是否为准备接收数据的新手机(即第二终端),因此,手机克隆APP可指示第一终端向当前Wi-Fi连接的另一端发送身份确认消息,例如,询问当前Wi-Fi连接的另一端是否为准备接收数据的新手机。那么,如果第一终端接收到另一端的正确响应,则说明当前第一终端已经与第二终端建立的Wi-Fi连接,此时第一终端和第二终端可以不显示上述提示601。
相应的,根据上述提示602,用户可以使用与新手机和旧手机均适配的USB数据线连接新手机和旧手机,以建立第一终端与第二终端之间的USB连接。例如,新手机和旧手机的USB接口均为USB Type-C类型时,用户可以将C-to-C直连数据线两端的接口分别插入新手机和旧手机的USB接口内。新手机和旧手机检测到这一连接事件后,可基于上述主机协商协议(HNP)确定其中一方为USB主设备,另一方为USB从设备。例如,如果新手机首先检测到旧手机与其通过USB数据线进行连接,则新手机可通知旧手机:新手机为USB主设备,旧手机为USB从设备。当旧手机向新手机发送确认消息确认这一主从关系后,新手机可按照USB主设备模式运行,而旧手机可按照USB从设备模式运行。此时,可由USB主设备(例如新手机)通过USB数据线向USB从设备(例如旧手机)供电。
又或者,如果在第一终端检测到用户点击按钮501,第二终端检测到用户点击按钮502后,某一终端(例如第一终端)已经检测到与其他USB设备连接,由于此时第一终端内的手机克隆APP可能无法确定当前他USB连接的另一端是否为准备接收数据的新手机(即第二终端),因此,手机克隆APP可指示第一终端向当前他USB连接的另一端发送身份确认消息,例如,询问当前他USB连接的另一端是否为准备接收数据的新手机。那么,如果第一终端接收到另一端的正确响应,则说明当前第一终端已经与第二终端建立的他USB 连接,此时第一终端和第二终端无需显示上述提示602。
第一终端与第二终端建立USB连接之后,第一终端内应用程序框架层中的USBManager可向应用程序层中的手机克隆APP上报USB连接已建立这一事件。同样,第一终端与第二终端建立Wi-Fi连接之后,第一终端内应用程序框架层中的WiFiManager可向应用程序层中的手机克隆APP上报Wi-Fi连接已建立这一事件。那么,手机克隆APP确定当前已建立了两条传输通道后,便可执行下述步骤S402-S404使用这两条传输通道进行数据传输,提高手机克隆时的数据传输速度。
另外,由于第一终端与第二终端建立USB连接之后,作为USB主设备的终端向作为USB从设备的终端供电,因此USB连接两端设备的电量会发生变化。那么,第一终端可获取第二终端的电量情况以及自身的电量情况。或者,可由第二终端获取第一终端的电量情况以及自身的电量情况,本申请实施例对此不做任何限制。其中,第一终端或第二终端可通过已建立的USB连接获取对方的电量情况,也可通过已建立的Wi-Fi连接获取对方的电量情况。
以第一终端获取自身的电量情况举例,手机克隆APP可以预先在应用程序框架层的PowerManager(电源管理器)注册触发PowerManager上报电量的条件,例如,请求PowerManager周期性(例如每5分钟)的上报电量剩余量给手机克隆APP,或者,请求PowerManager在检测到电量每降低10%后向手机克隆APP上报当前的电量剩余量等。那么,PowerManager检测到终端的电量符合手机克隆APP预先注册的条件时,可将当前的电量剩余量上报给手机克隆APP。类似的,第二终端也可以按照上述方法获取自身的电量情况,进而将第二终端的电量情况通过已建立的Wi-Fi连接或USB连接发送给第一终端。
当然,PowerManager也可以向手机克隆APP开放电量查询的接口,手机克隆APP也可以通过调用该接口主动获取当前的电量情况,本申请实施例对此不做任何限制。
需要说明的是,本实施例中是以第一终端与第二终端建立了无线连接和USB连接之后进行数据传输为例说明的。可以理解的是,第一终端还可以在与第二终端建立了无线连接之后便开始进行数据传输,在数据传输的过程中可再建立第一终端与第二终端之间的USB连接。或者,第一终端还可以在与第二终端建立了USB连接之后便开始进行数据传输,在数据传输的过程中可再建立第一终端与第二终端之间的无线连接,后续实施例中将对此进行详细阐述,故此处不再赘述。
可以理解的是,上述S401和S402中,也可以先执行S402,后执行S401。本实施例中对S401和S402步骤的先后顺序不做限定。
S403、第一终端接收用户在第一终端中选中待传输数据的第一输入。
在步骤S403中,当第一终端作为旧手机(即发送端)检测到第一终端与第二终端之间的无线连接和USB连接已经建立后,如图7A所示,在第一终端内运行的手机克隆APP可跳转至界面701。用户可以在界面701中可选择需要向第二终端(即接收端)发送的待传输数据。例如,上述界面701中包括联系人、短信、照片、通话记录、音乐以及应用等候选数据。其中,某一应用作为候选数据时具体可以包括其应用程序本身,还可以包括用户在使用该应用过程中产生的记录数据和储存的文件,例如联系人头像、缓冲和下载好的图片等。那么,用户可以点击界面701中待传输的联系人、短信、照片、通话记录、音乐以及应用中的至少一项选中待传输数据,此时,用户在界面701中的选中候选数据可作为 上述第一输入。
当第一终端检测到用户在界面701中执行选中待传输数据的第一输入后,可进一步确定待传输数据的传输方式。例如,第一终端可将待传输数据中的一部分(例如第一数据)通过上述无线连接传输,将待传输数据中的另一部分(例如第二数据)通过上述USB连接传输。
示例性的,第一终端可基于第一终端与第二终端之间无线连接的网络质量确定上述第一数据的数据量。例如,当第一终端与第二终端之间的Wi-Fi网络速度小于阈值时,可将小部分数据确定为通过Wi-Fi连接的方式传输,将剩余的大部分数据确定为通过USB连接的方式传输,这样可以提高整个待传输数据的传输速度。
又或者,第一终端可基于第一终端和第二终端的电量确定上述第一数据的数据量。例如,当检测到USB数据线连接的某一终端的电量小于20%或者第一终端和第二终端之间的电量差大于60%时,由于终端使用Wi-Fi连接传输数据时的耗电量更大,因此,第一终端可将小部分数据确定为通过Wi-Fi连接的方式传输,将剩余的大部分数据确定为通过USB连接的方式传输,这样可以降低数据传输过程中某一终端的耗电量过大而导致终端关机,使得数据传输中断的几率。
当然,如果检测到第一终端和第二终端之间Wi-Fi连接的网络质量较好而USB连接的传输速度较慢,例如,第一终端和第二终端之间的USB连接是基于传输速度较慢的USB 1.1规范实现的,那么,第一终端可将大部分数据确定为通过Wi-Fi连接的方式传输,将剩余的小部分数据确定为通过USB连接的方式传输,从而提高待传输数据的传输速度。其中,USB 1.1中所支持的最低速度(Low Speed)为1.5Mbits/s,全速(Full Speed)为12Mbits/s,USB 2.0全速时的高速度(High Speed)可达到480Mbits/s,而最新的USB 3.0可支持5Gbits/s的超高速(Super Speed)传输。
在确定Wi-Fi连接和USB连接上传输的具体数据时,第一终端内的手机克隆APP可以将用户选中的待传输数据划分为多个数据块。例如,将1G的待传输数据按照1M的大小划分为1024个数据块,并按照划分时的顺序为每个数据块编号。这样,第一终端可以按照上述实施例中的方法确定通过Wi-Fi连接传输的数据块数目以及通过USB连接传输时的数据块数目。其中,通过Wi-Fi连接传输的数据块可以为第一数据,通过USB连接传输的数据块可以为第二数据。例如,在USB连接速度较快而Wi-Fi连接质量不好时,可通过USB连接传输800个数据块,同时通过Wi-Fi连接传输224个数据块。当然,手机克隆APP也可以基于电量情况、Wi-Fi网速以及USB的传输速度等因素在传输过程中动态的确定每一个数据块的传输方式。后续,第二终端接收到这两种发送方式发送的数据块后可以按照各个数据块的编号恢复上述1G的待传输数据。
另外,上述实施例中均以第一终端(例如第一终端内运行的手机克隆APP)自动确定待传输数据的传输方式为例说明的,在本申请的另一些实施例中,还可以由用户手动选择待传输数据的传输方式。
例如,如图7B中的(a)所示,用户在界面701中每选中一项待传输数据后均可弹出选择框703,使得用户可以在选择框703中选择该项待传输数据是通过Wi-Fi连接传输还是通过USB连接传输。又例如,如图7B中的(b)所示,界面701中包括与Wi-Fi连接对应的区域704以及与USB连接对应的区域705。那么,用户可以将需要传输的每一项待传 输数据拖入相应的区域中,以选择该项待传输数据的传输方式。例如,用户将联系人这一项待传输数据拖入区域704,即指示第一终端通过Wi-Fi连接传输该项待传输数据,此时,用户将联系人这一项待传输数据拖入区域704的操作可以作为上述第一输入。
S404、响应于用户在第一终端上执行的第二输入,第一终端通过上述无线连接和USB连接向第二终端发送上述待传输数据。
在步骤S404中,如果检测到用户在第一终端上执行发送上述待传输数据的第二输入,例如,用户点击上述界面701中的发送按钮702,此时,第一终端作为旧手机(即发送端)可通过已建立的无线连接(例如Wi-Fi连接)向第二终端传输一部分待传输数据(即第一数据)。同时,第一终端还可通过已建立的USB连接向第二终端传输另一部分待传输数据(即第二数据)。这样,第一终端可以通过USB连接和Wi-Fi连接这两种传输通道同时传输数据至新手机,从而大大提高终端之间的数据传输速度。
需要说明的是,发送上述待传输数据的第二输入与上述选中待输入数据的第一输入可以是用户执行的两个独立手势。例如,上述第一输入可以是用户点击界面701中的联系人等候选数据的单击手势,而第二输入是用户点击发送按钮702的单击手势。
或者,上述第二输入与第一输入也可以是用户执行的一个手势中的两个阶段。如图8中的(a)所示,如果检测到用户手指长按联系人801这项待传输数据(即第一输入),则第一终端可确认用户选中联系人801作为待传输数据,此时,如图8中的(b)所示,如果检测到用户手指没有离开触摸屏,而是继续将联系人801这项待传输数据拖入发送区域802后松开(即第二输入),则第一终端可确认用户希望发送联系人801这项待传输数据,并执行步骤S404。
可以理解的,续请参阅图8中的(b),如果检测到用户手指长按联系人801这项待传输数据,在用户手机没有离开触摸屏,而是继续将联系人801这项待传输数据拖入发送区域802(即,用户长按联系人并拖入发送区域未松开可以理解为第一输入),然后松开(可以理解为第二输入),则第一终端可确认用户希望发送联系人801这项待传输数据,执行步骤S404。
需要说明的是,上述实施例中均以第一终端和第二终端安装并运行手机克隆APP举例说明的,可以理解的是,第一终端和第二终端也可以将上述数据传输的功能集成在自身的设置功能内。以第一终端为例,如图9中的(a)所示,第一终端的设置界面901中包含数据拷贝902这一选项,当用户打开数据拷贝902这一选项后,如果检测到Wi-Fi连接和USB连接已经建立,则如图9中的(b)所示,第一终端可显示联系人、短信、照片、通话记录、音乐以及应用等至少一项候选数据供用户选择。当用户从这些候选数据中选中了需要传输的待传输数据后,可点击发送按钮903触发第一终端按照上述步骤S404将待传输数据通过Wi-Fi连接和USB连接发送给第二终端。
进一步地,如图10中的(a)所示,在第一终端与第二终端进行数据传输的过程中,如果检测到Wi-Fi连接断开,则第一终端内的Wi-FiManager可向手机克隆APP上报Wi-Fi连接断开这一事件。此时,手机克隆APP可以将上述第一数据的传输方式从通过Wi-Fi连接传输转换为通过USB连接传输。并且,第一终端或第二终端上均可向用户提示Wi-Fi连接已经断开,或者第一终端和第二终端中一个终端向用户提示Wi-Fi连接已经断开。相应的,如图10中的(b)所示,在第一终端与第二终端进行数据传输的过程中,如果检测 到USB连接断开,则第一终端内的USBManager可向手机克隆APP上报Wi-Fi连接断开这一事件。此时,手机克隆APP可以将上述第二数据的传输方式从通过USB连接传输转换为通过Wi-Fi连接传输。并且,第一终端或第二终端均可向用户提示USB连接已经断开,或者第一终端和第二终端中一个终端向用户提示USB连接已经断开。
当然,如果Wi-Fi连接断开后,第一终端与第二终端又重新建立了Wi-Fi连接,或者,USB连接断开后,第一终端与第二终端又重新建立了USB连接,则第一终端可以恢复使用USB连接和Wi-Fi连接这两种传输通道同时传输当前剩余的待传输数据至第二终端,从而实现双传输通道和单传输通道之间的动态切换。
需要说明的是,上述Wi-Fi连接断开或USB连接断开可以是用户手动操作第一终端(或第二终端)断开的。例如,用户关闭Wi-Fi功能或者用户拔掉第一终端与第二终端之间的USB数据线。或者,上述Wi-Fi连接断开或USB连接断开也可以是第一终端(或第二终端)自动断开的。例如,可以在第一终端或第二终端检测到Wi-Fi网络质量较差,或者某一终端的电量较低时自动断开已建立的Wi-Fi连接,本申请实施例对此不做任何限制。
另外,在第一终端与第二终端进行数据传输的过程中,如果第一终端与第二终端之间的电量差大于第一阈值,且电量较低一方为进行供电的USB主设备,则USB主设备如果继续向USB从设备供电的话很可能会耗尽USB主设备的电量并导致数据传输中断。
因此,在本申请提供的实施例中,当USB主设备与USB从设备(即第一终端与第二终端)之间的电量差大于第一阈值,且USB主设备为电量较低的一方时,USB数据线两端的第一终端和第二终端可自动切换当前USB连接的主从关系。即将电量较低的USB主设备切换为接受供电的USB从设备,并将电量较高的USB从设备切换为供电的USB主设备。从而及时对电量较低的一方进行及时补电,避免因一方电量过低而导致传输中断的问题,提高数据传输过程的稳定性。
其中,进行供电的USB主设备可以是第一终端,也可以是第二终端;相应的,当USB主设备是第一终端时,接受供电的USB从设备为第二终端,当USB主设备是第二终端时,接受供电的USB从设备为第一终端。
示例性的,在第一终端与第二终端建立USB连接(即步骤S402)时,第一终端与第二终端之间的主从关系已经确定。例如,第一终端为USB主设备,第二终端为USB从设备。那么,第一终端可以获取第二终端(即USB从设备)的电量情况以及自身的电量情况,例如,第一终端内运行的手机克隆APP可周期性的获取第二终端的电量情况以及自身的电量情况,并计算USB主设备与USB从设备之间的电量差。
如图11中的(a)所示,USB主设备的电量为25%,而USB从设备的电量为80%。此时,USB主设备与USB从设备之间的电量差大于第一阈值(例如50%)。那么,USB主设备内的手机克隆APP可与USB从设备内的手机克隆APP交互,以确认双方准备切换当前的主从关系切换。进而,USB主设备内的手机克隆APP可调用应用程序框架层中的USB Manager,将USB Manager从USBHostManager模式切换为USBDeviceManager模式,此时,如图11中的(b)所示,第一终端从USB主设备切换为USB从设备。另外,USB从设备内的手机克隆APP也可调用应用程序框架层中的USB Manager,将USB Manager从USBDeviceManager模式切换为USBHostManager模式,此时,如图11中的(b)所示,第二终端从USB从设备切换为USB主设备,切换为USB主设备的第二终端向切换为USB 从设备的第一终端供电。
需要说明的是,当第二终端切换为USB主设备,第一终端切换为USB从设备后,虽然USB数据线两端的主从关系进行了切换,但第一终端与第二终端之间的数据传输方向并没有改变,仍然是第一终端向第二终端发送待传输数据。这样在不干扰数据传输的同时,可以实现USB数据线两端设备的电量均衡,避免数据传输时一方电量过低导致的传输中断问题。
在本申请的一些实施例中,第一终端与第二终端之间的USB数据线可以为C-to-C的直连数据线。由于C-to-C的直连数据线支持上述主机协商协议(HNP)所规定的协商机制,因此,当USB主设备与USB从设备之间的电量差大于第一阈值,且USB主设备为电量较低的一方时,USB主设备与USB从设备可基于HNP进行协商,确定USB主设备与USB从设备的切换时机、切换后的角色等协商结果,进而按照该协商结果动态的切换自身的主从关系。
在本申请的另一些实施例中,第一终端与第二终端之间的USB数据线也可以为非C-to-C的直连数据线。例如,第一终端与第二终端之间的USB数据线可以是通过OTG连接器转接后的USB数据线。由于非C-to-C的直连数据线可能不支持上述主机协商协议的机制,因此,当USB主设备与USB从设备之间的电量差大于第一阈值,且USB主设备为电量较低的一方时,USB主设备可向USB从设备发送切换指示,并在接收到USB从设备的响应后自动将与其相连的USB数据线下电,进而将原本运行的USB主设备模式强制切换为USB从设备模式。而原本的USB从设备在接收到USB主设备发送的切换指示后,也可自动将与其相连的USB数据线下电,将原本运行的USB从设备模式强制切换为USB主设备模式。切换后的USB主设备和USB从设备重新对USB数据线上电后可恢复第一终端与第二终端之间的USB连接,实现USB数据线两端设备的主从关系切换。
另外,在USB主设备和USB从设备进行主从关系切换的过程中,可暂停使用USB连接进行数据传输,避免由于主从关系切换而导致数据传输出错的现象。
需要说明的是,上述实施例中均以USB主设备作为执行主体阐述获取USB主设备和USB从设备之间的电量差,并根据该电量差切换自身的主从关系,同时指示USB从设备进行主从关系切换等过程。可以理解的是,也可以由USB从设备作为执行主体获取USB主设备和USB从设备之间的电量差,并根据该电量差切换自身的主从关系,同时指示USB主设备进行主从关系切换,本申请实施例对此不做任何限制。
另外,当第一终端与第二终端建立无线连接(例如Wi-Fi连接)后,Wi-Fi连接的两端设备也可能具有主从关系。例如,如果第一终端打开了个人热点,第二终端可将第一终端作为一个Wi-Fi接入点接入第一终端的个人热点。此时,第一终端可作为Wi-Fi主设备,而第二终端可作为Wi-Fi从设备。又例如,如果第一终端与第二终端之间采用Wi-Fi直连的方式建立Wi-Fi连接,那么,在建立Wi-Fi连接时可基于Wi-Fi直连的相关协议规范,例如802.11z协议,将某一终端(例如第一终端)确定为group owner(即Wi-Fi主设备),那么,第二终端可作为group client(即Wi-Fi从设备)连接group owner,从而建立第一终端与第二终端之间的Wi-Fi连接。
一般而言,Wi-Fi主设备相比于Wi-Fi从设备在传输数据的过程中耗电量更多。因此,为了避免发生因Wi-Fi主设备在传输数据的过程耗电量过多而导致传输中断的问题,当 Wi-Fi主设备与Wi-Fi从设备之间的电量差大于第二阈值(第二阈值与上述第一阈值可以相同,也可以不同),且Wi-Fi主设备为电量较低的一方时,第一终端和第二终端可自动切换当前Wi-Fi连接的主从关系。即将当前电量较低的Wi-Fi主设备切换为耗电量较小的Wi-Fi从设备,并将电量较高的Wi-Fi从设备切换为耗电量较大Wi-Fi主设备,从而缓解Wi-Fi主设备耗电过快而导致传输中断的问题。
当然,如果Wi-Fi从设备在传输数据的过程中耗电量更多,则可以在Wi-Fi主设备与Wi-Fi从设备之间的电量差大于第二阈值(第二阈值与上述第一阈值相同或不同),且Wi-Fi从设备为电量较低的一方时,由第一终端和第二终端自动切换当前Wi-Fi连接的主从关系,从而缓解Wi-Fi从设备耗电过快而导致传输中断的问题。可以由第一终端执行Wi-Fi连接的主从关系切换,当然也可以由第二终端执行Wi-Fi连接的主从关系切换。
也就是说,在本申请实施例中可以基于第一终端与第二终端的电量情况,控制电量较多的一方承担传输过程中更加耗电的角色,从而降低数据传输过程中一方电量耗尽而导致传输中断的几率。
与上述实施例中切换USB连接的主从关系类似的,如图12中的(a)所示,Wi-Fi主设备的电量为32%,而Wi-Fi从设备的电量为80%。此时,Wi-Fi主设备与Wi-Fi从设备之间的电量差大于第二阈值(例如40%)。那么,Wi-Fi主设备内的手机克隆APP可与Wi-Fi从设备内的手机克隆APP交互,以确认双方切换当前Wi-Fi连接的主从关系切换。
进而,Wi-Fi主设备内的手机克隆APP可调用应用程序框架层中的Wi-Fi Manager,由Wi-Fi Manager将当前的运行模式切换为Wi-Fi从设备模式,此时,如图12中的(b)所示,第一终端从Wi-Fi主设备切换为Wi-Fi从设备。另外,Wi-Fi从设备内的手机克隆APP也可调用应用程序框架层中的Wi-Fi Manager,由Wi-Fi Manager将当前的运行模式切换为Wi-Fi主设备模式,此时,如图12中的(b)所示,第二终端从Wi-Fi从设备切换为Wi-Fi主设备。
这样,原本电量较低的Wi-Fi主设备切换为Wi-Fi从设备后,其耗电量可相应降低,进而可降低数据传输过程中一方电量耗尽而导致传输中断的几率。
需要说明的是,上述实施例中均是以第一终端作为Wi-Fi主设备切换为Wi-Fi从设备举例说明的,可以理解的是,也可以由第二终端作为Wi-Fi主设备切换为Wi-Fi从设备,本申请实施例对此不做任何限制。
图13为本申请另一些实施例提供的一种数据传输方法的流程示意图。如图13所示,该数据传输方法可以包括:
S1001、第一终端与第二终端建立USB连接。
其中,第一终端与第二终端建立USB连接的具体方法可参见上述步骤S402的相关描述,此处不再赘述。可以理解的,在S1001之前,可以打开第一终端的手机克隆APP,打开第二终端的手机克隆APP。
S1002、第一终端接收用户在第一终端中选中待传输数据的第一输入。
与上述步骤S403不同的是,第一终端可以在检测到USB连接已经建立后,可将USB连接已经建立的消息上报第一终端内运行的手机克隆APP,手机克隆APP无需在确认Wi-Fi连接已建立的情况下便可触发手机克隆APP跳转至图7A或图7B所示的界面701。进而,第一终端可接收用户在界面701选中待传输数据的第一输入。当然,也可以基于第 一终端的设置界面901中包含数据拷贝902这一选项,当用户打开数据拷贝902这一选项后,如图9中的(b)所示,第一终端可显示联系人、短信、照片、通话记录、音乐以及应用等至少一项候选数据供用户选择,用户从这些候选数据中选中需要传输的待传输数据可以为第一输入。
S1003、响应于用户在第一终端上执行的第二输入,第一终端通过USB连接向第二终端发送上述待传输数据。
在步骤S1003中,如果检测到用户在第一终端上执行发送上述待传输数据的第二输入,例如,用户点击上述界面701中的发送按钮702,此时,由于第一终端与第二终端之间目前只有通过USB连接的传输通道,因此,第一终端可通过该USB连接向第二终端发送用户选中的待传输数据。由于USB连接的稳定性以及数据传输速度较高,因此,相比于通过Wi-Fi连接向第二终端发送上述待传输数据,通过USB连接向第二终端发送待传输数据的速度和稳定性更高。
S1004(可选的)、第一终端与第二终端建立无线连接。例如,第一终端与第二终端建立Wi-Fi连接。
S1005(可选的)、第一终端通过USB连接和无线连接向第二终端发送待传输数据。
以Wi-Fi连接作为无线连接举例,在执行上述步骤S1001-S1003的过程中,第一终端也可以检测是否与第二终端建立Wi-Fi连接,或者,第二终端也可以检测是否与第一终端建立Wi-Fi连接。
那么,如果在执行步骤S1003之前,即在第一终端通过USB连接发送上述待传输数据之前,检测到第一终端与第二终端建立了无线连接,则按照上述步骤S404,可由第一终端作为发送端通过已建立的Wi-Fi连接向第二终端传输一部分待传输数据(即第一数据)。同时,第一终端还可通过已建立的USB连接向第二终端传输另一部分待传输数据(即第二数据)。这样,第一终端可以通过USB连接和Wi-Fi连接这两种传输通道同时传输数据至第二终端,从而大大提高终端之间的数据传输速度。
相应的,如果在执行步骤S1003的过程中,即在第一终端通过USB连接发送上述待传输数据的过程中,检测到第一终端与第二终端建立了无线连接。此时,如图14所示,第一终端(或第二终端)可提示用户是否同时启用Wi-Fi连接和USB连接传输。那么,如果检测到用户点击确定按钮1101,则第一终端可以将当前剩余的待传输数据划分为两部分,一部分继续通过上述USB连接发送给第二终端,另一部分可通过新建立的Wi-Fi连接发送给第二终端,实现数据传输过程中双传输通道和单传输通道之间的动态切换。
可选的,在检测到用户点击确定按钮1101,第一终端也可以将当前剩余的待传输数据通过无线连接,例如通过Wi-Fi连接,发送给第二终端。第一终端可以不通过USB连接传输待传输的数据给第二终端。
当然,如果在第一终端通过USB连接发送上述待传输数据的过程中,检测到第一终端与第二终端建立了无线连接,第一终端也可在用户无感知的情况下,默认采用双传输通道的方式向第二终端发送未发送的上述待传输数据,本申请实施例对此不做任何限制。
另外,在第一终端向第二终端发送待传输数据的过程中,当USB主设备与USB从设备之间的电量差大于第一阈值,且USB主设备为电量较低的一方时,USB数据线两端的第一终端和第二终端可切换当前USB连接的主从关系,从而及时对电量较低的一方进行补 电,避免因一方电量过低而导致传输中断的问题,提高数据传输过程的稳定性。
类似的,在第一终端向第二终端发送待传输数据的过程中,当Wi-Fi主设备与Wi-Fi从设备之间的电量差大于第二阈值,且Wi-Fi主设备为电量较低的一方时,第一终端和第二终端也可切换当前Wi-Fi连接的主从关系,从而缓解Wi-Fi主设备耗电过快而导致传输中断的问题。
其中,切换当前USB连接的主从关系,以及切换当前Wi-Fi连接的主从关系的具体方法可参见上述步骤S404中的相关描述,此处不再赘述。
需要说明的是,上述实施例中判断第一终端和第二终端的电量差是否满足主从关系切换条件时使用的第一阈值和第二阈值可以是本领域技术人员根据实际经验或实际应用场景设置的,也可以是第一终端或第二终端基于一定算法在数据传输过程中动态调整的,本申请实施例对此不做任何限制。
示例性的,以设置第一阈值的取值为例,由于第一终端和第二终端内的电量总和是一定的,那么,为了保证能够完成本次数据传输,第一终端(或第二终端)可以根据待传输数据的数据量以及当前USB连接和Wi-Fi连接的传输速度预估完成本次数据传输所需的预估电量。这样,基于该预估电量,第一终端(或第二终端)可动态设置第一阈值的取值,以保证完成本次数据传输后第一终端和第二终端的电量均不为零。
另外,由于用户使用手机克隆APP拷贝数据的目的是为了尽快使用新手机,且一般新手机的电量较低,因此,还可以适当减小第一阈值的取值,使得作为旧手机的第一终端可以尽快向新手机(第二终端)供电,保证完成本次数据传输后第二终端的电量大于第一终端的电量。
至此,上述步骤S1001-S1005阐述了第一终端先与第二终端建立无线连接,在基于该无线连接传输数据的同时,如果第一终端与第二终端又建立了USB连接,则第一终端通过USB连接和Wi-Fi连接这两种传输通道同时传输数据至第二终端的数据传输场景。
相应的,在本申请的另一些实施例中,第一终端也可先与第二终端建立USB连接,在基于该USB连接传输数据的同时,如果第一终端与第二终端又建立了无线连接,则第一终端仍然可以通过USB连接和Wi-Fi连接这两种传输通道同时传输数据至第二终端。此时,如图15所示,该数据传输方法可以包括:
S1201、第一终端与第二终端建立无线连接。例如,第一终端与第二终端建立Wi-Fi连接。
可以理解的,在第一终端与第二终端建立无线连接之前,可以打开第一终端的手机克隆APP,打开第二终端的手机克隆APP。
S1202、第一终端接收用户在第一终端中选中待传输数据的第一输入。
S1203、响应于用户在第一终端上执行的第二输入,第一终端通过无线连接向第二终端发送上述待传输数据。
与上述步骤S1001-S1003对应的,在步骤S1201-S1203中,如果用户打开了第一终端和第二终端的Wi-Fi功能并操作这两个终端建立了第一终端与第二终端之间的无线连接,则作为数据发送端的第一终端可以跳转至手机克隆APP的界面701,接收用户在界面701选中待传输数据的第一输入。进而,如果检测到用户点击上述界面701中的发送按钮702(即第二输入),由于第一终端与第二终端之间目前只有通过Wi-Fi连接的传输通道,因此, 第一终端可通过该Wi-Fi连接向第二终端发送用户选中的待传输数据。
S1204(可选的)、第一终端与第二终端建立USB连接。
S1205(可选的)、第一终端通过USB连接和无线连接向第二终端发送未发送的上述待传输数据。
与上述步骤S1004-S1005对应的,如果在第一终端通过Wi-Fi连接发送上述待传输数据之前,检测到第一终端与第二终端建立了USB连接,则可按照上述步骤S404,由第一终端作为发送端通过Wi-Fi连接向第二终端传输一部分待传输数据(即第一数据)。同时,第一终端还可通过USB连接向第二终端传输另一部分待传输数据(即第二数据)。这样,第一终端可以通过USB连接和Wi-Fi连接这两种传输通道同时传输数据至第二终端,从而大大提高终端之间的数据传输速度。
相应的,如果在第一终端通过Wi-Fi连接发送上述待传输数据的过程中,检测到第一终端与第二终端建立了USB连接。此时,如图16所示,第一终端(或第二终端)可提示用户是否同时启用USB连接和无线连接进行数据传输。那么,如果检测到用户点击确定按钮1301,则第一终端可以将当前剩余的待传输数据划分为两部分,一部分继续通过上述USB连接发送给第二终端,另一部分可通过新建立的Wi-Fi连接发送给第二终端,实现数据传输过程中双传输通道和单传输通道之间的动态切换。
可选的,在第一终端与第二终端建立了USB连接,在检测到用户点击确定按钮1301,第一终端可以将当前剩余的待传输数据通过USB连接,发送给第二终端。第一终端可以不通过Wi-Fi连接传输待传输的数据给第二终端。
当然,在第一终端向第二终端发送待传输数据的过程中,也可以按照上述步骤S404的相关描述切换当前USB连接的主从关系,或者切换当前Wi-Fi连接的主从关系,本申请实施例对此不做任何限制。
如图17所示,本申请另外一些实施例公开了一种终端,该终端可以包括:触摸屏1701,其中,所述触摸屏1701可以包括触敏表面1706和显示屏1707;一个或多个处理器1702;存储器1703,可以存储一个或多个计算机程序1704。处理器1702与触摸屏1701和存储器1703连接,例如处理器1702与触摸屏1701和存储器1703通过总线连接。其中,该一个或多个处理器1702可以运行存储器1703存储的计算机程序1704,可以用于执行如图4、图13或图15中的相关方法步骤实现上述实施例中的数据传输方法。
本申请实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机程序,当上述处理器执行该计算机程序时,该终端执行图4、图13或图15中的相关方法步骤实现上述实施例中的数据传输方法。
本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行图4、图13或图15中的相关方法步骤实现上述实施例中的数据传输方法。
其中,本申请实施例提供的终端、计算机存储介质或者计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
可以理解的,基于说明书附图对本发明实施例做了说明。说明书中附图中的每一幅附图都可以理解是一个实施例。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存 储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。
Claims (24)
- 一种数据传输方法,应用于终端,其特征在于,所述方法包括:所述终端与另一终端建立无线连接;所述终端与所述另一终端建立通用串行总线USB连接;所述终端显示第一界面,所述第一界面包括至少一项候选数据;响应于用户在所述第一界面中的第一输入,从所述至少一项候选数据中选中待传输数据;响应于用户在所述第一界面中的第二输入,所述终端通过所述无线连接和所述USB连接向所述另一终端发送所述待传输数据。
- 根据权利要求1所述的方法,其特征在于,所述待传输数据包括第一数据和第二数据,其中,在所述终端通过所述无线连接和所述USB连接向所述另一终端发送所述待传输数据之前,还包括:所述终端根据所述终端与所述另一终端的电量确定所述第一数据的大小和所述第二数据的大小;或者;所述终端根据所述无线连接的网络质量确定所述第一数据的大小和所述第二数据的大小;或者;所述终端根据所述USB连接的传输速度确定所述第一数据的大小和所述第二数据的大小。
- 根据权利要求1或2所述的方法,其特征在于,当所述无线连接断开时,所述方法还包括:所述终端通过所述USB连接向所述另一终端发送未传输的数据。
- 根据权利要求1或2所述的方法,其特征在于,当所述USB连接断开时,所述方法还包括:所述终端通过所述无线连接向所述另一终端发送未传输的数据。
- 根据权利要求1-4任一所述的方法,其特征在于,在所述终端与所述另一终端建立USB连接之后,还包括:所述终端通过所述USB连接给所述另一终端供电。
- 根据权利要求5所述的方法,其特征在于,在所述终端通过所述USB连接给所述另一终端供电之后,还包括:获取所述终端的剩余电量和所述另一终端的剩余电量;根据所述终端的剩余电量和所述另一终端的剩余电量,切换所述USB连接的主从关系。
- 根据权利要求6所述的方法,其特征在于,根据所述终端的剩余电量和所述另一终端的剩余电量,切换所述USB连接的主从关系,包括:当所述终端的剩余电量与所述另一终端的剩余电量之间的差值大于第一阈值,且所述终端为剩余电量较低的一方时,切换所述USB连接的主从关系。
- 根据权利要求1-7中任一项所述的方法,其特征在于,所述第一输入和所述第二输入为两个独立的手势;或者,所述第一输入和所述第二输入为一个手势的两个阶段。
- 根据权利要求1-8中任一项所述的方法,其特征在于,所述终端和所述另一终端均 支持USB Type-C接口。
- 根据权利要求1-9任一所述的方法,其特征在于,所述候选数据包括联系人、信息、照片、通话记录、音频、视频、文档或应用中的至少一项。
- 根据权利要求1-10中任一项所述的方法,其特征在于,所述终端安装有数据传输应用,所述第一界面为所述数据传输应用的界面。
- 根据权利要求11所述的方法,其特征在于,在所述终端显示第一界面之前,还包括:响应于用户打开所述数据传输应用的操作,所述终端显示所述数据传输应用的第二界面,所述第二界面用于提示用户将所述终端设置为数据发送端或数据接收端。
- 根据权利要求12所述的方法,其特征在于,在所述终端显示第二界面之后,还包括:响应于用户将所述终端设置为数据发送端或数据接收端的操作,所述终端显示提示信息,用于提示所述终端与所述另一终端建立连接。
- 一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在终端上运行时,使得所述终端执行如权利要求1-13中任一项所述的数据传输方法。
- 一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在终端上运行时,使得所述终端执行如权利要求1-13中任一项所述的数据传输方法。
- 一种终端,其特征在于,包括触摸屏和一个或多个处理器;所述处理器用于:控制所述终端与另一终端建立无线连接;控制所述终端与所述另一终端建立通用串行总线USB连接;控制所述触摸屏显示第一界面,所述第一界面包括至少一项候选数据;响应于用户在所述第一界面中的第一输入,从所述至少一项候选数据中选中待传输数据;响应于用户在所述第一界面中的第二输入,控制所述终端通过所述无线连接和所述USB连接向所述另一终端发送所述待传输数据。
- 根据权利要求16所述的终端,其特征在于,所述待传输数据包括第一数据和第二数据,所述处理器还用于:根据所述终端与所述另一终端的电量确定所述第一数据的大小和所述第二数据的大小;或者;根据所述无线连接的网络质量确定所述第一数据的大小和所述第二数据的大小;或者;根据所述USB连接的传输速度确定所述第一数据的大小和所述第二数据的大小。
- 根据权利要求16或17所述的终端,其特征在于,所述处理器还用于:当所述无线连接断开时,控制所述终端通过所述USB连接向所述另一终端发送未传输的数据。
- 根据权利要求16或17所述的终端,其特征在于,所述处理器还用于:当所述USB连接断开时,控制所述终端通过所述无线连接向所述另一终端发送未传输的数据。
- 根据权利要求16-19中任一项所述的终端,其特征在于,所述处理器还用于:控制所述终端通过所述USB连接给所述另一终端供电。
- 根据权利要求20所述的终端,其特征在于,所述处理器还用于:获取所述终端的剩余电量和所述另一终端的剩余电量;根据所述终端的剩余电量和所述另一终端的剩余电量,控制所述终端切换所述USB连接的主从关系。
- 根据权利要求20所述的终端,其特征在于,所述处理器具体用于:当所述终端的剩余电量与所述另一终端的剩余电量之间的差值大于第一阈值,且所述终端为剩余电量较低的一方时,切换所述USB连接的主从关系。
- 根据权利要求16-22中任一项所述的终端,其特征在于,所述终端安装有数据传输应用,所述第一界面为所述数据传输应用的界面;所述处理器还用于:响应于用户打开所述数据传输应用的操作,控制所述触摸屏显示所述数据传输应用的第二界面,所述第二界面用于提示用户将所述终端设置为数据发送端或数据接收端。
- 根据权利要求23所述的终端,其特征在于,所述处理器还用于:响应于用户将所述终端设置为数据发送端或数据接收端的操作,控制所述触摸屏显示提示信息,用于提示所述终端与所述另一终端建立连接。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/055,382 US11979941B2 (en) | 2018-05-16 | 2018-05-16 | Data transmission method and terminal |
PCT/CN2018/087153 WO2019218282A1 (zh) | 2018-05-16 | 2018-05-16 | 一种数据传输方法及终端 |
EP18918685.1A EP3780896B1 (en) | 2018-05-16 | 2018-05-16 | Data transmission method and terminal |
CN201880089250.3A CN111713176B (zh) | 2018-05-16 | 2018-05-16 | 一种数据传输方法及终端 |
EP22201000.1A EP4195870B1 (en) | 2018-05-16 | 2018-05-16 | Data transmission method and terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/087153 WO2019218282A1 (zh) | 2018-05-16 | 2018-05-16 | 一种数据传输方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019218282A1 true WO2019218282A1 (zh) | 2019-11-21 |
Family
ID=68539365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/087153 WO2019218282A1 (zh) | 2018-05-16 | 2018-05-16 | 一种数据传输方法及终端 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11979941B2 (zh) |
EP (2) | EP4195870B1 (zh) |
CN (1) | CN111713176B (zh) |
WO (1) | WO2019218282A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021179970A1 (zh) * | 2020-03-12 | 2021-09-16 | 华为技术有限公司 | 数据传输方法和装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112511335B (zh) * | 2020-11-02 | 2022-03-25 | 珠海格力电器股份有限公司 | It设备的控制方法、装置和一种数据中心管理系统 |
CN114640706B (zh) * | 2020-11-30 | 2023-09-12 | 华为技术有限公司 | 数据传输方法、电子设备及计算机可读存储介质 |
CN113515347B (zh) * | 2021-06-30 | 2024-03-29 | 惠州华阳通用电子有限公司 | 一种基于虚拟机的双系统数据传输方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090070675A1 (en) * | 2007-07-27 | 2009-03-12 | Lagavulin Limited | Apparatuses, Methods, and Systems for a Portable, Image-Processing Transmitter |
CN101388689A (zh) * | 2008-10-28 | 2009-03-18 | 深圳华为通信技术有限公司 | 一种数据多承载并行传输方法及装置 |
CN101854202A (zh) * | 2010-05-07 | 2010-10-06 | 华为技术有限公司 | 数据传输方法、设备及系统 |
CN203102470U (zh) * | 2013-03-22 | 2013-07-31 | 成都狼嗅科技有限公司 | 智能联网报警系统 |
CN103580966A (zh) * | 2013-11-04 | 2014-02-12 | 惠州Tcl移动通信有限公司 | 一种无线链路和有线链路并行传输数据的方法及系统 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050000780A (ko) * | 2003-06-24 | 2005-01-06 | 주식회사 팬택앤큐리텔 | 휴대용 단말기의 유에스비 호스트/슬레이브 설정 장치 |
KR20060059031A (ko) * | 2004-11-26 | 2006-06-01 | 엘지전자 주식회사 | 공기 조화기의 상태를 모니터링하는 장치 |
CN101072397A (zh) * | 2006-06-23 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 一种手机及手机处理p2p流媒体的方法 |
JP4809724B2 (ja) * | 2006-07-12 | 2011-11-09 | 株式会社リコー | 通信装置、情報処理装置、通信方法、通信プログラム、及び、情報記憶媒体 |
US7627294B2 (en) * | 2007-02-27 | 2009-12-01 | Broadcom Corporation | Radio transmitter front-end with amplitude and phase correction and methods for use therewith |
CN101827174B (zh) * | 2010-02-03 | 2012-07-25 | 哈尔滨工业大学 | 具有多种数据交换方式及充电功能的手机数据备份器 |
CN102447273A (zh) * | 2010-09-30 | 2012-05-09 | 联想(北京)有限公司 | 一种终端的供电方法及终端 |
US9253803B2 (en) * | 2010-11-24 | 2016-02-02 | Blackberry Limited | Managing short range wireless data transmissions |
TW201243604A (en) * | 2012-07-11 | 2012-11-01 | Cal Comp Electronics & Comm Co | Data transfer method |
KR102239572B1 (ko) * | 2015-01-27 | 2021-04-13 | 삼성전자주식회사 | 전자 장치들 간 양방향 데이터 통신 방법 및 장치 |
CN105098273B (zh) * | 2015-07-20 | 2018-11-02 | 小米科技有限责任公司 | 充电方法及装置 |
CN106445856B (zh) | 2015-08-07 | 2019-05-14 | 小米科技有限责任公司 | 接口电路、状态切换方法及装置 |
CN105224494A (zh) | 2015-10-28 | 2016-01-06 | 小米科技有限责任公司 | 切换控制方法及装置 |
CN205384633U (zh) | 2016-01-21 | 2016-07-13 | 深圳市智凌无线科技有限公司 | 一种具有wifi数据通信功能的移动存储器 |
CN105680510A (zh) | 2016-01-29 | 2016-06-15 | 宇龙计算机通信科技(深圳)有限公司 | 用于电子设备的充电控制方法及充电控制装置 |
CN106299515B (zh) * | 2016-09-14 | 2019-04-16 | 北京小米移动软件有限公司 | 充电方法及装置 |
CN106655358B (zh) | 2016-11-29 | 2019-08-30 | 努比亚技术有限公司 | 一种移动终端间充电控制装置及方法 |
-
2018
- 2018-05-16 WO PCT/CN2018/087153 patent/WO2019218282A1/zh unknown
- 2018-05-16 EP EP22201000.1A patent/EP4195870B1/en active Active
- 2018-05-16 EP EP18918685.1A patent/EP3780896B1/en active Active
- 2018-05-16 US US17/055,382 patent/US11979941B2/en active Active
- 2018-05-16 CN CN201880089250.3A patent/CN111713176B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090070675A1 (en) * | 2007-07-27 | 2009-03-12 | Lagavulin Limited | Apparatuses, Methods, and Systems for a Portable, Image-Processing Transmitter |
CN101388689A (zh) * | 2008-10-28 | 2009-03-18 | 深圳华为通信技术有限公司 | 一种数据多承载并行传输方法及装置 |
CN101854202A (zh) * | 2010-05-07 | 2010-10-06 | 华为技术有限公司 | 数据传输方法、设备及系统 |
CN203102470U (zh) * | 2013-03-22 | 2013-07-31 | 成都狼嗅科技有限公司 | 智能联网报警系统 |
CN103580966A (zh) * | 2013-11-04 | 2014-02-12 | 惠州Tcl移动通信有限公司 | 一种无线链路和有线链路并行传输数据的方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021179970A1 (zh) * | 2020-03-12 | 2021-09-16 | 华为技术有限公司 | 数据传输方法和装置 |
CN113473645A (zh) * | 2020-03-12 | 2021-10-01 | 华为技术有限公司 | 数据传输方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3780896A1 (en) | 2021-02-17 |
CN111713176A (zh) | 2020-09-25 |
CN111713176B (zh) | 2023-01-13 |
US20210219127A1 (en) | 2021-07-15 |
EP3780896A4 (en) | 2021-04-14 |
EP4195870B1 (en) | 2024-04-24 |
EP4195870A1 (en) | 2023-06-14 |
US11979941B2 (en) | 2024-05-07 |
EP3780896B1 (en) | 2022-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11681432B2 (en) | Method and terminal for displaying input method virtual keyboard | |
KR102481065B1 (ko) | 애플리케이션 기능 구현 방법 및 전자 디바이스 | |
KR102064952B1 (ko) | 수신 데이터를 이용하여 어플리케이션을 운영하는 전자 장치 | |
WO2019178869A1 (zh) | 一种eSIM卡的开户方法及终端 | |
US20220075518A1 (en) | Fast Data Copying Method and Electronic Device | |
WO2019218282A1 (zh) | 一种数据传输方法及终端 | |
KR102394296B1 (ko) | 다수의 디바이스 상에 컴퓨팅 환경의 제시 | |
EP2696603A2 (en) | Apparatus and method for communicating data in mobile device having near field communication module | |
WO2020000276A1 (zh) | 一种快捷按键的控制方法及终端 | |
CN108780400B (zh) | 数据处理方法及电子设备 | |
CN111557097A (zh) | 一种虚拟遥控器中电源键的控制方法及终端 | |
JP7319431B2 (ja) | アプリケーション機能の実施方法及び電子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18918685 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2018918685 Country of ref document: EP Effective date: 20201027 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |