CN117676480A - Data sharing method, system and related device - Google Patents

Data sharing method, system and related device Download PDF

Info

Publication number
CN117676480A
CN117676480A CN202211067060.6A CN202211067060A CN117676480A CN 117676480 A CN117676480 A CN 117676480A CN 202211067060 A CN202211067060 A CN 202211067060A CN 117676480 A CN117676480 A CN 117676480A
Authority
CN
China
Prior art keywords
electronic device
contact
sharing
data
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211067060.6A
Other languages
Chinese (zh)
Inventor
贾银元
王志峰
许浩维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202211067060.6A priority Critical patent/CN117676480A/en
Priority to PCT/CN2023/115722 priority patent/WO2024046347A1/en
Publication of CN117676480A publication Critical patent/CN117676480A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/725Cordless telephones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

The application provides a data sharing method, a data sharing system and a related device. The electronic device displays options for the currently interacted contact (e.g., current conversation contact) and/or options for the recently interacted contact (e.g., recent conversation contact, recent private letter contact, etc.) in a system sharing interface of data or in an in-application sharing interface during or after interaction with the contact, and so forth. After the electronic device receives the user input of the options of the currently interacted contact and/or the options of the recently interacted contact, the electronic device shares the designated data selected by the sharing user to the designated contact selected by the user. Therefore, the user can conveniently and quickly share the data to the contact person who is interacting or has interacted recently, and the data sharing experience is improved.

Description

Data sharing method, system and related device
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a data sharing method, system, and related devices.
Background
With the development of wireless communication technology, terminals such as smart phones and tablet computers start to support users to share data such as pictures and documents with other devices, so that the office efficiency and office experience of the users are improved. For example, the user can share the data such as pictures and files on the terminal such as the smart phone to other devices without using a data line. Currently, when a user wants to share data on a portable terminal device such as a smart phone to other devices, an operation process is complicated.
Disclosure of Invention
The data sharing method, system and related device provided by the application realize that the options of the currently interacted contact (for example, the current call contact) and/or the options of the recently interacted contact (for example, the recently call contact, the recently privately-trusted contact and the like) are displayed in the data sharing interface of the electronic device in the interaction process or after the electronic device and the contacts, so that the user can conveniently and quickly share the data to the currently interacted or recently interacted contact, and the experience of the user for sharing the data is improved.
In a first aspect, the present application provides a data sharing method, including: the method comprises the steps that a first electronic device displays a call interface, wherein the call interface comprises contact information of a second electronic device, and the call interface is used for indicating that the first electronic device and the second electronic device are in communication with an operator; the first electronic equipment receives a first input for sharing first designated data in the process of communicating with the second electronic equipment by the operator; responding to the first input, displaying a first sharing interface by the first electronic equipment, and displaying a first option corresponding to the second electronic equipment in the first sharing interface; the first electronic device receiving a second input of the first option; in response to the second input, the first electronic device transmits the first specified data to the second electronic device.
By the data sharing method, the option of the second electronic device can be displayed in the sharing interface of the appointed data in the process that the first electronic device and the second electronic device conduct operator communication. After the first electronic device receives the user's input of the option of the second electronic device, the first electronic device may share the specified data to the second electronic device. Therefore, the user can conveniently and quickly share the data to the communicating contact person, and the experience of the user for sharing the data is improved.
In one possible implementation, a call marker is displayed around the first option, where the call marker is used to indicate that the first option is an option corresponding to a second electronic device that is communicating with the first electronic device.
Therefore, the user can conveniently and quickly find the option of the second electronic equipment on the sharing interface.
In a possible implementation manner, contact information corresponding to the second electronic device is also displayed around the first option, where the contact information corresponding to the second electronic device includes one or more of the following: the telephone number of the second electronic device, the name of the contact person of the telephone number of the first electronic device remarked on the second electronic device, the head portrait of the contact person of the telephone number of the first electronic device remarked on the second electronic device, and the call application mark; the call application mark is used for indicating the call application to which the call interface belongs.
Therefore, the user can conveniently find the option of the second electronic equipment on the sharing interface.
In one possible implementation manner, the first electronic device sends the first specified data to the second electronic device in response to the second input, specifically including: responsive to the second input, the first electronic device sending a data transfer request to the second electronic device, the data transfer request requesting transfer of the first specified data to the second electronic device; the first electronic equipment receives confirmation information sent by the second electronic equipment, wherein the confirmation information is used for indicating that the second electronic equipment allows the first electronic equipment to send the first specified data to the second electronic equipment; in response to the confirmation information, the first electronic device transmits the first specified data to the second electronic device.
Therefore, the data transmission request can be sent to the second electronic equipment before the data is shared to the second electronic equipment, and the data is shared to the second electronic equipment after the confirmation of the second electronic equipment is obtained, so that the second electronic equipment is prevented from receiving the forced received data.
In one possible implementation, the method further includes: in response to the second input, the first electronic device displays a first prompt prompting a user that the first electronic device is requesting to send the first specified data to the second electronic device.
Thus, the user can feel the sharing process of the data.
In one possible implementation, the method further includes: the first electronic device displays a second prompt and a sending progress bar in the process of sending the first appointed data to the second electronic device, wherein the second prompt is used for prompting a user that the first electronic device is sending the first appointed data to the second electronic device, and the sending progress bar is used for prompting the user that the first electronic device sends the first appointed data to the second electronic device.
Thus, the user can feel the sharing process of the data.
In one possible implementation, the method further includes: and the first electronic device displays a transmission cancellation control in the process of transmitting the first appointed data to the second electronic device, wherein the cancellation control is used for triggering the first electronic device to pause transmitting the first appointed data to the second electronic device.
Thus, the user can stop sharing the data to the second electronic device halfway.
In one possible implementation, the method further includes: after the first electronic device sends the first specified data to the second electronic device, a third prompt for prompting the user that the first electronic device has sent the first specified data to the second electronic device and a revocation control for triggering the first electronic device to send a revocation indication to the second electronic device, the revocation indication being used for requesting the second electronic device to delete the first specified data that has been received from the first electronic device are displayed.
Therefore, after the user shares the data with the second electronic equipment, the user can actively withdraw the data shared with the second electronic equipment from the second electronic equipment, and privacy leakage caused by the fact that the user mistakenly sends the data to the second electronic equipment can be prevented.
In one possible implementation manner, the first sharing interface is a system sharing interface, and the first sharing interface further includes one or more options of a nearby device discovered by the first electronic device through a near field communication technology, and one or more service options, where the options of the nearby device are used to trigger the first electronic device to share the first specified data to the nearby device, and the service options are used to trigger the first electronic device to share the first specified data through an application program or a protocol corresponding to the service options.
Therefore, the option of the current call contact (namely, the second electronic device) can be displayed in the sharing interface of the operating system of the first electronic device, and the user can conveniently realize data sharing with the current call contact when the sharing function of the operating system is called up.
In one possible implementation, the first sharing interface is an intra-application sharing interface of a first application, and the first sharing interface further includes one or more function options in the first application;
The first electronic device receives a first input of sharing first designated data in the process of communicating with the second electronic device by the operator, and specifically includes: the first electronic device displays a first interface of a first application in the process of communicating with the second electronic device, wherein the first interface comprises the first appointed data and a first control, and the first control is used for sharing the first appointed data, and the sharing of the first appointed data comprises sharing of an acquisition link of the first appointed data; the first electronic device receives the first input to the first control.
Therefore, the option of the current call contact (namely, the second electronic device) can be displayed in the sharing interface in the application of the first electronic device, and the user can conveniently realize data sharing with the current call contact when the sharing function of the application is called up.
In one possible implementation, the first specified data includes one or more of: pictures, audio, video, document files, location information, links, contact information, calendars, application packages, memos.
In one possible implementation, the method further includes: after the first electronic device sends the first specified data to the second electronic device, the first electronic device and the second electronic device end the operator call; the first electronic device receives a third input for sharing the second designated data; responsive to the third input, the first electronic device displays a second sharing interface including one or more options of the most recently interacted with contact; wherein the most recently interacted contact is a contact interacted with the first electronic device within a most recent period of time when the first electronic device receives the third input, and the one or more recently interacted contact options include a second option corresponding to the third electronic device; the first electronic device receiving a second input of the second option; in response to the second input, the first electronic device sends the second specified data to the third electronic device.
Therefore, the option of the latest interactive contact interacted with the second electronic device in the short time can be displayed in the data sharing interface, and after the first electronic device receives the user input of the option of the latest interactive contact, the first electronic device can share the appointed data to the latest interactive contact. Therefore, the user can conveniently and quickly share the data to the recently interacted contact, and the experience of the user for sharing the data is improved.
In one possible implementation, the contact information of the most recently interacted contact is displayed around the option of the most recently interacted contact, and the contact information of the most recently interacted contact includes one or more of the following: the contact information for the most recently interacted contact includes one or more of: the phone number of the most recently interacted contact, the contact name of the most recently interacted contact, the contact head portrait of the most recently interacted contact, and a contact application mark; the contact application mark is used for representing an application used when the first electronic device interacts with the latest interaction contact.
Therefore, the user can conveniently and quickly find the option of the latest interactive contact on the sharing interface.
In one possible implementation, the interaction includes any of the following: operator calls, receives short messages, sends short messages, over-the-top OTT calls, receives or sends private messages within social applications.
In one possible implementation, before the first electronic device sends the first specified data to the second electronic device, the method further includes: the first electronic equipment and the second electronic equipment establish a first data transmission link; the responding to the second input, the first electronic device sends the first appointed data to the second electronic device, specifically comprising: in response to the second input, the first electronic device transmits the first specified data to the second electronic device over the first data transmission link.
In one possible implementation, the method further includes: the first electronic equipment establishes a first data transmission link with the second electronic equipment in the process of communicating with the second electronic equipment by the operator and before receiving the first input; the responding to the first input, the first electronic device displays a first sharing interface, and displays a first option corresponding to the second electronic device in the first sharing interface, which specifically includes: in response to the first input, the first electronic device displays the first sharing interface, where the first sharing interface includes the first option corresponding to the second electronic device.
Therefore, the establishment of the data transmission link between the first electronic device and the second electronic device can be completed before the sharing interface is displayed, and a user can conveniently and rapidly share data to the second electronic device on the first electronic device.
In one possible implementation manner, the responding to the first input, the first electronic device displays a first sharing interface, and displays a first option corresponding to the second electronic device in the first sharing interface, which specifically includes: responsive to the first input, the first electronic device displays the first sharing interface; after the first electronic device and the second electronic device establish the first data transmission link, the first electronic device displays a first option corresponding to the second electronic device in the first sharing interface.
In one possible implementation, the transmitting, by the first electronic device, the first specified data to the second electronic device over the first data transmission link in response to the second input, specifically includes: responsive to the second input, the first electronic device establishes the first data transmission link with the second electronic device; after the first data transmission link is established, the first electronic device sends the first specified data to the second electronic device on the first data transmission link.
In this way, the data transmission link can be established with the second electronic device until the user determines that the data is to be shared with the second electronic device, so that the power consumption for the first electronic device to maintain the data transmission link is saved.
In one possible implementation, the first data transmission link includes one or more of the following: the first electronic device and the second electronic device are in communication with a main link of an operator, and one or more auxiliary links between the first electronic device and the second electronic device.
Therefore, the first electronic device can share the data to the second electronic device in a combination mode of multiple transmission links, and the data sharing speed is improved.
In one possible implementation, the one or more auxiliary links include one or more of: internet protocol IP direct links, point-to-point P2P links, server relay links.
In one possible implementation, when the first data transmission link includes the one or more auxiliary links, the first electronic device establishes a first data transmission link with the second electronic device, specifically including: the first electronic equipment acquires a first communication identifier distributed by a cloud server for the first electronic equipment; the first electronic equipment sends the telephone number of the first electronic equipment and the first communication identifier to the cloud server for binding and storing; the first electronic device sends a first query request to the cloud server, wherein the first query request comprises the telephone number of the second electronic device, and the first query request is used for querying a second communication identifier of the second electronic device; the first electronic equipment receives the second communication identifier sent by the cloud server; the first electronic device establishes the auxiliary link with the electronic device based on the first communication identification and the second communication identification.
In this way, the cloud server can complete establishment of an auxiliary link between the first electronic device and the second electronic device, and far-field communication between the first electronic device and the second electronic device is achieved.
In one possible implementation, the auxiliary link comprises a P2P link; the first communication identifier is a first session identifier used when the first electronic device performs session communication with the cloud server, and the second communication identifier is a second session identifier used when the second electronic device performs session communication with the cloud server; the first electronic device establishes the auxiliary link with the electronic device based on the first communication identifier and the second communication identifier, and specifically includes: the first electronic equipment sends a first acquisition request to the cloud server, wherein the first acquisition request is used for requesting to acquire first NAT public network information of the first electronic equipment; the first electronic equipment receives the first NAT public network information sent by the cloud server, wherein the first NAT public network information comprises a public network IP address of the first electronic equipment and a port number of a public network-to-intranet network of the first electronic equipment; the first electronic equipment sends a first message to the cloud server, wherein the first message carries the second session identifier and the first NAT public network information, and the first message is used for the first electronic equipment to exchange NAT public network information with the second electronic equipment; the first electronic device receives second NAT public network information of the second electronic device, which is sent by the cloud server, wherein the second NAT public network information comprises a public network IP address of the second electronic device and a port number of a public network-to-internal network of the second electronic device; the first electronic device establishes a P2P link with the second electronic device based on the first NAT public network information and the second NAT public network information.
In this way, the establishment of the P2P link between the first electronic device and the second electronic device can be completed through the cloud server, and far-field communication between the first electronic device and the second electronic device is achieved.
In one possible implementation, the auxiliary link comprises a server relay link; the first communication identifier is a first session identifier used when the first electronic device performs session communication with the cloud server, and the second communication identifier is a second session identifier used when the second electronic device performs session communication with the cloud server; the first electronic device establishes the auxiliary link with the electronic device based on the first communication identifier and the second communication identifier, and specifically includes: the first electronic equipment sends a second acquisition request, wherein the second acquisition request is used for acquiring a first relay address of the first electronic equipment; the first electronic equipment receives a first relay address sent by the cloud server; the first electronic equipment sends a first message to the cloud server, wherein the first message carries the second session identifier and the first relay address, and the first message is used for exchanging the relay address between the first electronic equipment and the second electronic equipment; the first electronic device receives a second relay address of the second electronic device, which is sent by the cloud server; after the first electronic device and the second electronic device exchange the relay address, the first electronic device and the second electronic device establish a server relay link.
In this way, the establishment of the server relay link between the first electronic device and the second electronic device can be completed through the cloud server, and far-field communication between the first electronic device and the second electronic device is achieved.
In a second aspect, the present application provides an electronic device, which is a first electronic device, comprising a display screen, one or more processors, and one or more memories. The display screen, one or more memories, and one or more processors are coupled, the one or more memories for storing computer program code, the computer program code comprising computer instructions that, when executed by the one or more processors, cause the electronic device to perform the data sharing method in any of the possible implementations of the above.
In a third aspect, the present application provides an electronic device, which is a first electronic device, and includes one or more functional modules, where the one or more functional modules are configured to perform a data sharing method in any one of the foregoing possible implementation manners.
In a fourth aspect, embodiments of the present application provide a computer storage medium including computer instructions that, when executed on a processor, implement a data sharing method in any one of the possible implementations of the foregoing aspect.
In a fifth aspect, embodiments of the present application provide a computer program product, which when run on a computer implements the data sharing method in any one of the possible implementation manners of the foregoing aspect.
The advantages of the second aspect to the fifth aspect may refer to any one of the possible implementation manners of the first aspect and the first aspect, which is not described herein.
Drawings
Fig. 1 is a schematic architecture diagram of a communication system according to an embodiment of the present application;
fig. 2A is a schematic hardware structure of an electronic device according to an embodiment of the present application;
fig. 2B is a schematic software structure of an electronic device according to an embodiment of the present application;
fig. 2C is a schematic software structure of another electronic device according to an embodiment of the present application;
fig. 3A-3Y are schematic interface diagrams of a set of data sharing scenarios provided in an embodiment of the present application;
FIGS. 4A-4O are schematic diagrams illustrating interfaces for a set of shared data according to embodiments of the present application;
FIGS. 5A-5Y are schematic diagrams illustrating interfaces for sharing data with another group according to embodiments of the present application;
FIGS. 6A-6G are schematic diagrams illustrating interfaces for sharing data with another group according to embodiments of the present application;
FIGS. 7A-7I are schematic diagrams illustrating interfaces for sharing data with another group according to embodiments of the present application;
FIGS. 8A-8D are schematic diagrams illustrating interfaces for sharing data with another group according to embodiments of the present application;
fig. 9 is a schematic architecture diagram of another communication system according to an embodiment of the present application;
fig. 10 is a flow chart of a data sharing method according to an embodiment of the present application;
FIG. 11 is a flowchart illustrating a data sharing method according to another embodiment of the present disclosure;
fig. 12A-12C are schematic diagrams illustrating a process for obtaining information of a recently interacted contact according to an embodiment of the application;
fig. 13A is a schematic architecture diagram of another communication system according to an embodiment of the present application;
fig. 13B is a schematic architecture diagram of another communication system according to an embodiment of the present application;
fig. 13C is a schematic architecture diagram of another communication system according to an embodiment of the present application;
fig. 14A is a schematic structural diagram of a data packet according to an embodiment of the present application;
fig. 14B is a schematic structural diagram of a field in a data packet according to an embodiment of the present application;
fig. 15 is a schematic diagram of an auxiliary link establishment procedure according to an embodiment of the present application;
fig. 16 is a schematic diagram of an acquisition principle of a communication identifier according to an embodiment of the present application;
Fig. 17 is a schematic diagram of an addressing flow in an auxiliary link according to an embodiment of the present application;
fig. 18 is a functional module interaction flow chart of an electronic device according to an embodiment of the present application;
fig. 19 is a schematic diagram of a P2P direct link establishment procedure according to an embodiment of the present application;
fig. 20 is a schematic diagram of a relay link establishment procedure provided in an embodiment of the present application;
fig. 21 is a schematic diagram of a device wake-up procedure provided in an embodiment of the present application;
fig. 22 is a schematic diagram of a data structure of a data packet according to an embodiment of the present application;
FIG. 23 is a flowchart of a file revocation mechanism according to an embodiment of the present application;
fig. 24 is a schematic architecture diagram of an interactive voice response call system according to an embodiment of the present application;
fig. 25 is a schematic diagram of an establishment flow of an auxiliary link in an interactive voice response call system according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and thoroughly described below with reference to the accompanying drawings. Wherein, in the description of the embodiments of the present application, "/" means or is meant unless otherwise indicated, for example, a/B may represent a or B; the text "and/or" is merely an association relation describing the associated object, and indicates that three relations may exist, for example, a and/or B may indicate: the three cases where a exists alone, a and B exist together, and B exists alone, and in addition, in the description of the embodiments of the present application, "plural" means two or more than two.
The terms "first," "second," and the like, are used below for descriptive purposes only and are not to be construed as implying or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more such feature, and in the description of embodiments of the present application, unless otherwise indicated, the meaning of "a plurality" is two or more.
A communication system 10 provided in an embodiment of the present application is described below.
Fig. 1 illustrates a schematic architecture of a communication system 10 provided in an embodiment of the present application.
As shown in fig. 1, the communication system 10 may include an electronic device 100 and one or more electronic devices 200.
Wherein the electronic device 100 may communicate with one or more electronic devices 200 via different communication means.
In some embodiments, the electronic device 100 may communicate with one or more electronic devices 200 over a cellular network. The cellular network may include, but is not limited to, a global system for mobile communications (global system for mobile communications, GSM), code division multiple access (code division multiple access, CDMA), wideband code division multiple access (wideband code division multiple access, WCDMA), time division synchronous code division multiple access (time division synchronous code division multiple ac, TD-SCDMA), long term evolution (long term evolution, LTE), new radio access (NR), or other future network systems.
In some embodiments, electronic device 100 may communicate with one or more electronic devices 200 via short-range communication techniques. Among them, near field communication includes, but is not limited to, bluetooth, wireless Local Area Network (WLAN), near Field Communication (NFC), ultra Wideband (UWB), infrared, and the like.
In some embodiments, electronic device 100 may communicate with one or more electronic devices 200 over a satellite communications network. For example, the satellite communication network may be a Beidou communication network, a space communication network, a star link communication network, and the like.
In some embodiments, the electronic device 100 may implement an over-the-top (OTT) call with one or more electronic devices 200 over the internet, which may be a business that develops data services such as various videos over the open internet across an operator in some examples. For example, OTT calls may be implemented over a WLAN, and for example, OTT calls may be implemented based on cellular data traffic of the carrier.
In this embodiment, the device type of the electronic device 100 may be any one of a mobile phone, a tablet computer, a handheld computer, a desktop computer, a laptop computer, a super mobile personal computer (ultra-mobile personal computer, UMPC), a netbook, a cellular phone, a personal digital assistant (personal digital assistant, PDA), and an intelligent home device such as an intelligent large screen, an intelligent sound box, a wearable device such as an intelligent bracelet, an intelligent watch, an intelligent glasses, an augmented reality (augmented reality, AR), a Virtual Reality (VR), an extended reality (XR) device such as a Mixed Reality (MR), a vehicle-mounted device, or a smart city device.
The device type of the electronic device 200 may be any one of a mobile phone, a tablet computer, a handheld computer, a desktop computer, a laptop computer, a super mobile personal computer, a netbook, a cellular phone, a personal digital assistant, and intelligent home devices such as an intelligent large screen, an intelligent sound box, wearable devices such as an intelligent bracelet, an intelligent watch, and intelligent glasses, augmented reality devices such as augmented reality, virtual reality, mixed reality, vehicle-mounted devices or smart city devices, and the like.
In the embodiment of the present application, specific types of the electronic apparatus 100 and the electronic apparatus 200 are not particularly limited.
The following describes a hardware structure of the electronic device 100 provided in the embodiment of the present application.
Fig. 2A shows a schematic structural diagram of the electronic device 100.
The embodiment will be specifically described below taking the electronic device 100 as an example. It should be understood that the electronic device 100 shown in fig. 2A is only one example, and that the electronic device 100 may have more or fewer components than shown in fig. 2A, may combine two or more components, or may have a different configuration of components. The various components shown in fig. 2A may be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and/or application specific integrated circuits.
The electronic device 100 may include: processor 110, external memory interface 120, internal memory 121, universal serial bus (universal serial bus, USB) interface 130, charge management module 140, power management module 141, battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headset interface 170D, sensor module 180, keys 190, motor 191, indicator 192, camera 193, display 194, and subscriber identity module (subscriber identification module, SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyro sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
It should be understood that the illustrated structure of the embodiment of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, electronic device 100 may include more or fewer components than shown, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The processor 110 may include one or more processing units, such as: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a memory, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and/or a neural network processor (neural-network processing unit, NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
The controller may be a neural hub and a command center of the electronic device 100, among others. The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution.
A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby improving the efficiency of the system.
In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous receiver transmitter (universal asynchronous receiver/transmitter, UART) interface, a mobile industry processor interface (mobile industry processor interface, MIPI), a general-purpose input/output (GPIO) interface, a subscriber identity module (subscriber identity module, SIM) interface, and/or a universal serial bus (universal serial bus, USB) interface, among others.
The I2C interface is a bi-directional synchronous serial bus comprising a serial data line (SDA) and a serial clock line (serial clock line, SCL). In some embodiments, the processor 110 may contain multiple sets of I2C buses. The processor 110 may be coupled to the touch sensor 180K, charger, flash, camera 193, etc., respectively, through different I2C bus interfaces. For example: the processor 110 may be coupled to the touch sensor 180K through an I2C interface, such that the processor 110 communicates with the touch sensor 180K through an I2C bus interface to implement a touch function of the electronic device 100.
The I2S interface may be used for audio communication. In some embodiments, the processor 110 may contain multiple sets of I2S buses. The processor 110 may be coupled to the audio module 170 via an I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 may transmit an audio signal to the wireless communication module 160 through the I2S interface, to implement a function of answering a call through the bluetooth headset.
PCM interfaces may also be used for audio communication to sample, quantize and encode analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 may be coupled through a PCM bus interface. In some embodiments, the audio module 170 may also transmit audio signals to the wireless communication module 160 through the PCM interface to implement a function of answering a call through the bluetooth headset. Both the I2S interface and the PCM interface may be used for audio communication.
The UART interface is a universal serial data bus for asynchronous communications. The bus may be a bi-directional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, a UART interface is typically used to connect the processor 110 with the wireless communication module 160. For example: the processor 110 communicates with a bluetooth module in the wireless communication module 160 through a UART interface to implement a bluetooth function. In some embodiments, the audio module 170 may transmit an audio signal to the wireless communication module 160 through a UART interface, to implement a function of playing music through a bluetooth headset.
The MIPI interface may be used to connect the processor 110 to peripheral devices such as a display 194, a camera 193, and the like. The MIPI interfaces include camera serial interfaces (camera serial interface, CSI), display serial interfaces (display serial interface, DSI), and the like. In some embodiments, processor 110 and camera 193 communicate through a CSI interface to implement the photographing functions of electronic device 100. The processor 110 and the display 194 communicate via a DSI interface to implement the display functionality of the electronic device 100.
The GPIO interface may be configured by software. The GPIO interface may be configured as a control signal or as a data signal. In some embodiments, a GPIO interface may be used to connect the processor 110 with the camera 193, the display 194, the wireless communication module 160, the audio module 170, the sensor module 180, and the like. The GPIO interface may also be configured as an I2C interface, an I2S interface, a UART interface, an MIPI interface, etc.
The USB interface 130 is an interface conforming to the USB standard specification, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, or the like. The USB interface 130 may be used to connect a charger to charge the electronic device 100, and may also be used to transfer data between the electronic device 100 and a peripheral device. And can also be used for connecting with a headset, and playing audio through the headset. The interface may also be used to connect other electronic devices, such as AR devices, etc.
It should be understood that the interfacing relationship between the modules illustrated in the embodiments of the present invention is only illustrative, and is not meant to limit the structure of the electronic device 100. In other embodiments of the present application, the electronic device 100 may also use different interfacing manners, or a combination of multiple interfacing manners in the foregoing embodiments.
The charge management module 140 is configured to receive a charge input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charge management module 140 may receive a charging input of a wired charger through the USB interface 130. In some wireless charging embodiments, the charge management module 140 may receive wireless charging input through a wireless charging coil of the electronic device 100. The charging management module 140 may also supply power to the electronic device through the power management module 141 while charging the battery 142.
The power management module 141 is used for connecting the battery 142, and the charge management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140 and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 may also be configured to monitor battery capacity, battery cycle number, battery health (leakage, impedance) and other parameters. In other embodiments, the power management module 141 may also be provided in the processor 110. In other embodiments, the power management module 141 and the charge management module 140 may be disposed in the same device.
The wireless communication function of the electronic device 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device 100 may be used to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution for wireless communication including 2G/3G/4G/5G, etc., applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA), etc. The mobile communication module 150 may receive electromagnetic waves from the antenna 1, perform processes such as filtering, amplifying, and the like on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can amplify the signal modulated by the modem processor, and convert the signal into electromagnetic waves through the antenna 1 to radiate. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be disposed in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be provided in the same device as at least some of the modules of the processor 110.
The modem processor may include a modulator and a demodulator. The modulator is used for modulating the low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used for demodulating the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low frequency baseband signal to the baseband processor for processing. The low frequency baseband signal is processed by the baseband processor and then transferred to the application processor. The application processor outputs sound signals through an audio device (not limited to the speaker 170A, the receiver 170B, etc.), or displays images or video through the display screen 194. In some embodiments, the modem processor may be a stand-alone device. In other embodiments, the modem processor may be provided in the same device as the mobile communication module 150 or other functional module, independent of the processor 110.
The wireless communication module 160 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (wireless fidelity, wi-Fi) network), bluetooth (BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field wireless communication technology (near field communication, NFC), infrared technology (IR), etc., as applied to the electronic device 100. The wireless communication module 160 may be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the electromagnetic wave signals, filters the electromagnetic wave signals, and transmits the processed signals to the processor 110. The wireless communication module 160 may also receive a signal to be transmitted from the processor 110, frequency modulate it, amplify it, and convert it to electromagnetic waves for radiation via the antenna 2.
In some embodiments, antenna 1 and mobile communication module 150 of electronic device 100 are coupled, and antenna 2 and wireless communication module 160 are coupled, such that electronic device 100 may communicate with a network and other devices through wireless communication techniques. The wireless communication techniques may include the Global System for Mobile communications (global system for mobile communications, GSM), general packet radio service (general packet radio service, GPRS), code division multiple access (code division multiple access, CDMA), wideband code division multiple access (wideband code division multiple access, WCDMA), time division code division multiple access (time-division code division multiple access, TD-SCDMA), long term evolution (long term evolution, LTE), BT, GNSS, WLAN, NFC, FM, and/or IR techniques, among others. The GNSS may include a global satellite positioning system (global positioning system, GPS), a global navigation satellite system (global navigation satellite system, GLONASS), a beidou satellite navigation system (beidou navigation satellite system, BDS), a quasi zenith satellite system (quasi-zenith satellite system, QZSS) and/or a satellite based augmentation system (satellite based augmentation systems, SBAS).
The electronic device 100 implements display functions through a GPU, a display screen 194, an application processor, and the like. The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
The display screen 194 is used to display images, videos, and the like. The display 194 includes a display panel. The display panel may employ a liquid crystal display (liquid crystal display, LCD). The display panel may also be manufactured using organic light-emitting diode (OLED), active-matrix organic light-emitting diode (AMOLED) or active-matrix organic light-emitting diode (active-matrix organic light emitting diode), flexible light-emitting diode (flex-emitting diode), mini, micro-OLED, quantum dot light-emitting diode (quantum dot light emitting diodes, QLED), or the like. In some embodiments, the electronic device 100 may include 1 or N display screens 194, N being a positive integer greater than 1.
The electronic device 100 may implement photographing functions through an ISP, a camera 193, a video codec, a GPU, a display screen 194, an application processor, and the like.
The ISP is used to process data fed back by the camera 193. For example, when photographing, the shutter is opened, light is transmitted to the camera photosensitive element through the lens, the optical signal is converted into an electric signal, and the camera photosensitive element transmits the electric signal to the ISP for processing and is converted into an image visible to naked eyes. ISP can also optimize the noise, brightness and skin color of the image. The ISP can also optimize parameters such as exposure, color temperature and the like of a shooting scene. In some embodiments, the ISP may be provided in the camera 193.
The camera 193 is used to capture still images or video. The object generates an optical image through the lens and projects the optical image onto the photosensitive element. The photosensitive element may be a charge coupled device (charge coupled device, CCD) or a Complementary Metal Oxide Semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, which is then transferred to the ISP to be converted into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, electronic device 100 may include 1 or N cameras 193, N being a positive integer greater than 1.
The digital signal processor is used for processing digital signals, and can process other digital signals besides digital image signals. For example, when the electronic device 100 selects a frequency bin, the digital signal processor is used to fourier transform the frequency bin energy, or the like.
Video codecs are used to compress or decompress digital video. The electronic device 100 may support one or more video codecs. In this way, the electronic device 100 may play or record video in a variety of encoding formats, such as: dynamic picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
The NPU is a neural-network (NN) computing processor, and can rapidly process input information by referencing a biological neural network structure, for example, referencing a transmission mode between human brain neurons, and can also continuously perform self-learning. Applications such as intelligent awareness of the electronic device 100 may be implemented through the NPU, for example: image recognition, face recognition, speech recognition, text understanding, etc.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to enable expansion of the memory capabilities of the electronic device 100. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card.
The internal memory 121 may be used to store computer executable program code including instructions. The processor 110 executes various functional applications of the electronic device 100 and data processing by executing instructions stored in the internal memory 121. The internal memory 121 may include a storage program area and a storage data area. The storage program area may store an application program (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system, etc. The storage data area may store data created during use of the electronic device 100 (e.g., audio data, phonebook, etc.), and so on. In addition, the internal memory 121 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like.
The electronic device 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playing, recording, etc.
The audio module 170 is used to convert digital audio information into an analog audio signal output and also to convert an analog audio input into a digital audio signal. The audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be disposed in the processor 110, or a portion of the functional modules of the audio module 170 may be disposed in the processor 110.
The speaker 170A, also referred to as a "horn," is used to convert audio electrical signals into sound signals. The electronic device 100 may listen to music, or to hands-free conversations, through the speaker 170A.
A receiver 170B, also referred to as a "earpiece", is used to convert the audio electrical signal into a sound signal. When electronic device 100 is answering a telephone call or voice message, voice may be received by placing receiver 170B in close proximity to the human ear.
Microphone 170C, also referred to as a "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or transmitting voice information, the user can sound near the microphone 170C through the mouth, inputting a sound signal to the microphone 170C. The electronic device 100 may be provided with at least one microphone 170C. In other embodiments, the electronic device 100 may be provided with two microphones 170C, and may implement a noise reduction function in addition to collecting sound signals. In other embodiments, the electronic device 100 may also be provided with three, four, or more microphones 170C to enable collection of sound signals, noise reduction, identification of sound sources, directional recording functions, etc.
The earphone interface 170D is used to connect a wired earphone. The headset interface 170D may be a USB interface 130 or a 3.5mm open mobile electronic device platform (open mobile terminal platform, OMTP) standard interface, a american cellular telecommunications industry association (cellular telecommunications industry association of the USA, CTIA) standard interface.
The pressure sensor 180A is used to sense a pressure signal, and may convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A may be disposed on the display screen 194. The pressure sensor 180A is of various types, such as a resistive pressure sensor, an inductive pressure sensor, a capacitive pressure sensor, and the like. The capacitive pressure sensor may be a capacitive pressure sensor comprising at least two parallel plates with conductive material. The capacitance between the electrodes changes when a force is applied to the pressure sensor 180A. The electronic device 100 determines the strength of the pressure from the change in capacitance. When a touch operation is applied to the display screen 194, the electronic apparatus 100 detects the touch operation intensity according to the pressure sensor 180A. The electronic device 100 may also calculate the location of the touch based on the detection signal of the pressure sensor 180A. In some embodiments, touch operations that act on the same touch location, but at different touch operation strengths, may correspond to different operation instructions. For example: and executing an instruction for checking the short message when the touch operation with the touch operation intensity smaller than the first pressure threshold acts on the short message application icon. And executing an instruction for newly creating the short message when the touch operation with the touch operation intensity being greater than or equal to the first pressure threshold acts on the short message application icon.
The gyro sensor 180B may be used to determine a motion gesture of the electronic device 100. In some embodiments, the angular velocity of electronic device 100 about three axes (i.e., x, y, and z axes) may be determined by gyro sensor 180B. The gyro sensor 180B may be used for photographing anti-shake. For example, when the shutter is pressed, the gyro sensor 180B detects the shake angle of the electronic device 100, calculates the distance to be compensated by the lens module according to the angle, and makes the lens counteract the shake of the electronic device 100 through the reverse motion, so as to realize anti-shake. The gyro sensor 180B may also be used for navigating, somatosensory game scenes.
The air pressure sensor 180C is used to measure air pressure. In some embodiments, electronic device 100 calculates altitude from barometric pressure values measured by barometric pressure sensor 180C, aiding in positioning and navigation.
The magnetic sensor 180D includes a hall sensor. The electronic device 100 may detect the opening and closing of the flip cover using the magnetic sensor 180D. In some embodiments, when the electronic device 100 is a flip machine, the electronic device 100 may detect the opening and closing of the flip according to the magnetic sensor 180D. And then according to the detected opening and closing state of the leather sheath or the opening and closing state of the flip, the characteristics of automatic unlocking of the flip and the like are set.
The acceleration sensor 180E may detect the magnitude of acceleration of the electronic device 100 in various directions (typically three axes). The magnitude and direction of gravity may be detected when the electronic device 100 is stationary. The electronic equipment gesture recognition method can also be used for recognizing the gesture of the electronic equipment, and is applied to horizontal and vertical screen switching, pedometers and other applications.
A distance sensor 180F for measuring a distance. The electronic device 100 may measure the distance by infrared or laser. In some embodiments, the electronic device 100 may range using the distance sensor 180F to achieve quick focus.
The proximity light sensor 180G may include, for example, a Light Emitting Diode (LED) and a light detector, such as a photodiode. The light emitting diode may be an infrared light emitting diode. The electronic device 100 emits infrared light outward through the light emitting diode. The electronic device 100 detects infrared reflected light from nearby objects using a photodiode. When sufficient reflected light is detected, it may be determined that there is an object in the vicinity of the electronic device 100. When insufficient reflected light is detected, the electronic device 100 may determine that there is no object in the vicinity of the electronic device 100. The electronic device 100 can detect that the user holds the electronic device 100 close to the ear by using the proximity light sensor 180G, so as to automatically extinguish the screen for the purpose of saving power. The proximity light sensor 180G may also be used in holster mode, pocket mode to automatically unlock and lock the screen.
The ambient light sensor 180L is used to sense ambient light level. The electronic device 100 may adaptively adjust the brightness of the display 194 based on the perceived ambient light level. The ambient light sensor 180L may also be used to automatically adjust white balance when taking a photograph. Ambient light sensor 180L may also cooperate with proximity light sensor 180G to detect whether electronic device 100 is in a pocket to prevent false touches.
The fingerprint sensor 180H is used to collect a fingerprint. The electronic device 100 may utilize the collected fingerprint feature to unlock the fingerprint, access the application lock, photograph the fingerprint, answer the incoming call, etc.
The temperature sensor 180J is for detecting temperature. In some embodiments, the electronic device 100 performs a temperature processing strategy using the temperature detected by the temperature sensor 180J. For example, when the temperature reported by temperature sensor 180J exceeds a threshold, electronic device 100 performs a reduction in the performance of a processor located in the vicinity of temperature sensor 180J in order to reduce power consumption to implement thermal protection. In other embodiments, when the temperature is below another threshold, the electronic device 100 heats the battery 142 to avoid the low temperature causing the electronic device 100 to be abnormally shut down. In other embodiments, when the temperature is below a further threshold, the electronic device 100 performs boosting of the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperatures.
The touch sensor 180K, also referred to as a "touch panel". The touch sensor 180K may be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, which is also called a "touch screen". The touch sensor 180K is for detecting a touch operation acting thereon or thereabout. The touch sensor may communicate the detected touch operation to the application processor to determine the touch event type. Visual output related to touch operations may be provided through the display 194. In other embodiments, the touch sensor 180K may also be disposed on the surface of the electronic device 100 at a different location than the display 194.
The bone conduction sensor 180M may acquire a vibration signal. In some embodiments, bone conduction sensor 180M may acquire a vibration signal of a human vocal tract vibrating bone pieces. The bone conduction sensor 180M may also contact the pulse of the human body to receive the blood pressure pulsation signal. In some embodiments, bone conduction sensor 180M may also be provided in a headset, in combination with an osteoinductive headset. The audio module 170 may analyze the voice signal based on the vibration signal of the sound portion vibration bone block obtained by the bone conduction sensor 180M, so as to implement a voice function. The application processor may analyze the heart rate information based on the blood pressure beat signal acquired by the bone conduction sensor 180M, so as to implement a heart rate detection function.
The keys 190 include a power-on key, a volume key, etc. The keys 190 may be mechanical keys. Or may be a touch key. The electronic device 100 may receive key inputs, generating key signal inputs related to user settings and function controls of the electronic device 100.
The motor 191 may generate a vibration cue. The motor 191 may be used for incoming call vibration alerting as well as for touch vibration feedback. For example, touch operations acting on different applications (e.g., photographing, audio playing, etc.) may correspond to different vibration feedback effects. The motor 191 may also correspond to different vibration feedback effects by touching different areas of the display screen 194. Different application scenarios (such as time reminding, receiving information, alarm clock, game, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect may also support customization.
The indicator 192 may be an indicator light, may be used to indicate a state of charge, a change in charge, a message indicating a missed call, a notification, etc.
The SIM card interface 195 is used to connect a SIM card. The SIM card may be inserted into the SIM card interface 195, or removed from the SIM card interface 195 to enable contact and separation with the electronic device 100. The electronic device 100 may support 1 or N SIM card interfaces, N being a positive integer greater than 1. The SIM card interface 195 may support Nano SIM cards, micro SIM cards, and the like. The same SIM card interface 195 may be used to insert multiple cards simultaneously. The types of the plurality of cards may be the same or different. The SIM card interface 195 may also be compatible with different types of SIM cards. The SIM card interface 195 may also be compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to realize functions such as communication and data communication. In some embodiments, the electronic device 100 employs esims, i.e.: an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.
The software system of the electronic device 100 may employ a layered architecture, an event driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. For example, the software system of the layered architecture may be an Android (Android) system, an Operating System (OS), or other software systems.
Fig. 2B is a software architecture block diagram of the electronic device 100 according to an embodiment of the present invention. Fig. 2B illustrates a software architecture of the electronic device 100, taking an Android system with a layered architecture as an example.
The layered architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into four layers, from top to bottom, an application layer, an application framework layer, an Zhuoyun row (Android run) and system libraries, and a kernel layer, respectively.
The application layer may include a series of application packages.
As shown in fig. 2B, the application package may include applications for cameras, gallery, calendar, talk, map, navigation, WLAN, bluetooth, music, video, short message, etc.
The application framework layer provides an application programming interface (application programming interface, API) and programming framework for application programs of the application layer. The application framework layer includes a number of predefined functions.
As shown in FIG. 2B, the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.
The window manager is used for managing window programs. The window manager can acquire the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen and the like.
The content provider is used to store and retrieve data and make such data accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebooks, etc.
The view system includes visual controls, such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, a display interface including a text message notification icon may include a view displaying text and a view displaying a picture.
The telephony manager is used to provide the communication functions of the electronic device 100. Such as the management of call status (including on, hung-up, etc.).
The resource manager provides various resources for the application program, such as localization strings, icons, pictures, layout files, video files, and the like.
The notification manager allows the application to display notification information in a status bar, can be used to communicate notification type messages, can automatically disappear after a short dwell, and does not require user interaction. Such as notification manager is used to inform that the download is complete, message alerts, etc. The notification manager may also be a notification in the form of a chart or scroll bar text that appears on the system top status bar, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in a status bar, a prompt tone is emitted, the electronic device vibrates, and an indicator light blinks, etc.
Android run time includes a core library and virtual machines. Android run time is responsible for scheduling and management of the Android system.
The core library consists of two parts: one part is a function which needs to be called by java language, and the other part is a core library of android.
The application layer and the application framework layer run in a virtual machine. The virtual machine executes java files of the application program layer and the application program framework layer as binary files. The virtual machine is used for executing the functions of object life cycle management, stack management, thread management, security and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: surface manager (surface manager), media Libraries (Media Libraries), three-dimensional graphics processing Libraries (e.g., openGL ES), 2D graphics engines (e.g., SGL), etc.
The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
Media libraries support a variety of commonly used audio, video format playback and recording, still image files, and the like. The media library may support a variety of audio and video encoding formats, such as MPEG4, h.264, MP3, AAC, AMR, JPG, PNG, etc.
The three-dimensional graphic processing library is used for realizing three-dimensional graphic drawing, image rendering, synthesis, layer processing and the like.
The 2D graphics engine is a drawing engine for 2D drawing.
The kernel layer is a layer between hardware and software. The inner core layer at least comprises a display driver, a camera driver, an audio driver and a sensor driver.
The workflow of the electronic device 100 software and hardware is illustrated below in connection with capturing a photo scene.
When touch sensor 180K receives a touch operation, a corresponding hardware interrupt is issued to the kernel layer. The kernel layer processes the touch operation into the original input event (including information such as touch coordinates, time stamp of touch operation, etc.). The original input event is stored at the kernel layer. The application framework layer acquires an original input event from the kernel layer, and identifies a control corresponding to the input event. Taking the touch operation as a touch click operation, taking a control corresponding to the click operation as an example of a control of a camera application icon, the camera application calls an interface of an application framework layer, starts the camera application, further starts a camera driver by calling a kernel layer, and captures a still image or video by the camera 193.
The software system of the electronic device 100 provided in the embodiment of the present application is described below.
Fig. 2C schematically illustrates a software system architecture diagram of the electronic device 100 provided in an embodiment of the present application.
As shown in fig. 2C, the software systems of the electronic device 100 may include an application processor (application processor) system and a wireless communication system. Wherein:
the wireless communication system may include, but is not limited to, at least one of the following: cellular communication systems (e.g., 2G/3G/4G/5G/6G, etc.), satellite systems (e.g., beidou, tiantong, star Link, etc.), wi-Fi, BT, NFC, UWB, etc. In one embodiment, the wireless communication system may include a CoProcessor (CP) and/or digital signal processor (digital signal processor, DSP), wherein the CP may add a CoProcessor or multimedia accelerator to the baseband chip in the terminal, the CP may include digital components necessary for communication with the network, and the CP may include a processor based on a reduced instruction set computer (reduced instruction set computer, RISC) microprocessor (advanced RISC machines, ARM) and a DSP. The CP may have an operating system and may communicate through a High Speed (HS) serial connection with an application processor running an operating system such as Android, IOS, windows. The CP may implement processing logic for VR, AR, image processing, high fidelity (high fi), high Data Rate (HDR), sensor management, and the like. The CP may also be, but is not limited to, a cellular modem (cellular processor, CP).
The application processor system is used for realizing rendering and presentation of a user interface, input and response of user operation, business functions, playing of multimedia data such as audio/video and the like and control logic.
The application processor system may include a sharing module, a discovery module, a Wi-Fi function module, a BT function module, a UWB function module, a Satellite (Satellite) function module, a Wi-Fi link module, a BT link module, a UWB link module, a Satellite link module. Wherein:
a fusion call (fusion call) module may be understood as a core function module that shares data. The roles of the converged call module may include, but are not limited to, the following functions: 1. is responsible for invoking the network address service module to manage the auxiliary link (e.g., the establishment and release of the auxiliary link). 2. Is responsible for reading shared content data (e.g., file data, location information, open links, calendars, application installation packages, etc.). 3. Takes charge of distributing packets, transmitting, unpacking, etc. of sharing content data. 4. Is responsible for sharing the writing and storage of content data. 5. Responsible for related user experience (UX) interface displays, including, for example, but not limited to: the system shares the interface (including the options of the contact being interacted with or the options of the contact being interacted with recently), the options of the contact being interacted with or the options of the contact being interacted with recently in the application sharing interface/window, the sending window, the receiving window, the prompt information, the buttons/controls, and the like.
The discovery module is used for discovering Nearby devices through Wi-Fi, BT, D2D, and other near field communication technologies, and the discovery module is called, for example, a search. The device may be discovered by a far-field communication technology such as a cellular communication technology, a satellite, or Wi-Fi, but the communication technology of the discovery device is not limited in this application.
The network address service module may be responsible for managing the secondary links (e.g., establishment and release of secondary links).
The Wi-Fi function module is used for realizing Wi-Fi communication with other devices based on a Wi-Fi communication protocol.
The BT function module is configured to enable communication with other devices based on BT or Bluetooth Low Energy (BLE).
The UWB function module is used for sharing data based on UWB communication technology.
The satellite function module is used for sharing data based on satellite communication.
The Wi-Fi link module is used to manage Wi-Fi links, such as, but not limited to, links including establishment, release, transmission of data, and the like.
The BT link module is configured to manage links of the BT such as, but not limited to, establishment, release, transmission of data, etc., including links.
UWB link modules are used to manage UWB links such as, but not limited to, including establishment of links, release, transmission of data, and the like.
The satellite link module is used to manage links of the communication satellite, such as, but not limited to, including establishment, release of links, transmission of data, and the like.
The wireless communication system of the electronic device 100 includes a cellular communication module, a Wi-Fi communication module, a BT communication module, and a satellite communication module, wherein:
the cellular communication module (modem) includes an internet (internet protocol, IP) multimedia system (IP multimedia subsystem, IMS) communication module, a circuit switched (circuited switched, CS) communication module, and a 3G/4G/5G/6G broadcast module, where the IMS communication module may implement IMS protocol-based calls such as, but not limited to, LTE voice call (VoLTE), LTE video call (video over LTE, video), NR voice call (NR, voNR), NR video call (video over NR, video NR), wi-Fi voice call (voice over Wi-Fi, voWiFi), wi-Fi video call (video over Wi-Fi, viWiFi), evolved packet system Fallback (evolved packet system-Fallback, EPS-Fallback), and the like. The CS communication module may provide CS Fallback functionality.
The 3G/4G/5G/6G broadcast module may be used to listen to the 3G/4G/5G/6G broadcast channel. The electronic device 100 may be within a coverage area of at least one base station, any one of the at least one base station may transmit broadcast data (e.g., multimedia data such as audio/video streams) to the electronic device (including the electronic device 100) in the coverage area through a broadcast channel, any one of the base stations may maintain at least one frequency channel, and broadcast data corresponding to different frequency channels may be different. In some examples, a user may select a channel corresponding to received broadcast data through the electronic device 100. In some examples, the electronic device 100 may receive broadcast data sent by the base station through a 3G/4G/5G/6G broadcast module, and the 3G/4G/5G/6G broadcast module may report to a system layer for processing through a cellular communication network card (not shown) of a kernel layer. In some examples, the electronic device 100 may play the received broadcast data through a system application (e.g., a conversation) or a third party application (e.g., a chat application, a conference application), and the electronic device 100 may share the played content to other devices. In other examples, the electronic device 100 may not play the received broadcast data, but share the received broadcast data directly to other devices, or share the processed broadcast data to other devices.
The Wi-Fi communication module may include hardware modules for WiFi communication, such as firmware and chips.
The BT communication module may include hardware modules of BT communication, such as firmware and chips.
The satellite communication module may include hardware modules of satellite communication, such as firmware and chips.
In this embodiment, the hardware structure of the electronic device 200 may refer to the hardware structure of the electronic device 100 in fig. 2A, and the software framework of the electronic device 2000 may refer to the software framework of the electronic device 100 shown in fig. 2B or fig. 2C. Electronic device 200 may include more, fewer, or the same hardware structures as electronic device 100, and electronic device 200 may include more, fewer, or the same software modules as electronic device 100, as not limited in this disclosure.
The following is a description of some data sharing scenarios provided in embodiments of the present application.
Fig. 3A-3Y schematically illustrate some data sharing scenarios provided in embodiments of the present application.
In one data sharing scenario, the electronic device 100 may share locally stored files such as pictures or videos to other devices.
For example, as shown in fig. 3A, the electronic device 100 may display a picture presentation interface 3010. The picture display interface 3010 includes a picture 3011 and a menu 3012. The menu 3012 may include a share button 3013, a collection button 3014, an edit button 3015, a delete button 3016, and a more button 3017. The picture 3011 may have a title, e.g., "landscape". Wherein the share button 3013 may be used to trigger the opening of the system share interface. A collection button 3014 may be used to trigger collection of the picture 3011 to a picture collection folder. Edit button 3015 may be used to trigger edit functions on picture 3011, such as rotate, crop, add filters, blurring, etc. A delete button 3016 may be used to trigger the deletion of the picture 3011. More buttons 3017 may be used to trigger the turning on of more picture-related functions.
The electronic device 100 may receive user input (e.g., a single click) of the share button 3013, in response to which the electronic device 100 may display a system share interface 3020 as shown in fig. 3B.
As shown in fig. 3B, the system sharing interface 3020 includes a region 3021, a region 3022, and a region 3023. The region 3021 may be used to display one or more pictures or videos in a gallery of the electronic device 100, which may include user-selected pictures or videos therein. Wherein the selected picture may have a marker displayed thereon, the marker being used to indicate that its corresponding picture is selected (i.e., the picture has been selected by the user). The picture or video frame displayed in this area 3021 may be a thumbnail. The artwork corresponding to the picture or video frame displayed in region 3021 may be stored on electronic device 100. The area 3022 may be used to display options for nearby devices found by the electronic device 100 (e.g., an "Alee cell phone" option, a "HUAWEI P50 Pro" option). The electronic device 100 may display a search prompt in the area 3022 when searching for nearby devices (e.g., a text prompt such as "bluetooth, WLAN" is required to be turned on by the counterpart when a nearby device is being found). Icons of one or more service options (e.g., chat application icon, welink application icon, open application icon, boring application icon, mail application icon, browser application icon, information application icon, WLAN direct icon, etc.) may be displayed in area 3023. The application or protocol to which the service option corresponds may support sharing the user-selected picture to the contact or server. The user can share data through the application program or the protocol corresponding to the service option. For example sharing the selected picture to one or more contacts in the chat application, further for example sharing the selected picture to a dynamic publishing platform (i.e., server) of the chat application, and so on.
The electronic device 100 may receive input (e.g., a single click) of a user's option for "Alee's cell phone," in response to which the electronic device 100 may send the user-selected picture or video to a nearby device corresponding to the option for "Alee's cell phone.
In another data sharing scenario, the electronic device 100 may share play links of a specified video in a video application to other devices. Wherein the specified video includes, but is not limited to, short video (e.g., video less than a specified play duration, etc.), long video (e.g., movie plays exceeding the specified play duration, etc.), live video, etc.
For example, as shown in fig. 3C, the electronic device 100 may display a video application interface 3030. The video application interface 3030 may include a video play screen 3031 including a short video or a live video, an account icon 3032, a praise icon 3033, a comment icon 3034, a collection icon 3035, and a share icon 3036, a video distribution (e.g., "sea vacation"), a video publisher name (e.g., "user 1"), and so on. The account icon 3032 may display an avatar of the posting account of the short video or the live video, the praise icon 3033 may be used to mark that the short video or the live video is liked by the user, and the comment icon 3034 may be used to trigger the electronic device 100 to display comment information of the short video or the live video. The favorites icon 3035 can be used to trigger the electronic device 100 to save a play link of the short or live video to a favorites associated with a logged-in account on a video application. The share icon 3036 may be used to trigger the electronic device 100 to share a play link of the short video or live video.
The electronic device 100 may receive user input (e.g., a single click) of the share icon 3036, in response to which the electronic device 100 may display a menu window 3040 as shown in fig. 3D.
As shown in fig. 3D, the menu window 3040 includes one or more options for sharing services. For example, the options of the sharing service may include sharing options (e.g., forwarding options, private letter options) within the video application and/or sharing options of other applications (e.g., friend circle options, chat application options, weilink application options, etc.). The forwarding option may be used to forward the short video or live video to a buddy circle of a logged-in account on the video application. The private letter option may be used for the electronic device 100 to forward the short video or live video to contacts on the video application associated with the logged-in account. The buddy circle option may be used to trigger the electronic device 100 to forward the play link of the short video or live video to the buddy circle of the logged-in account in the chat application. The chat application option may be used to trigger the electronic device 100 to forward the play link of the short video or live video to the contacts in the chat application. The welling application option may be used to trigger the electronic device 100 to forward the play link of the short video or live video to contacts in the welling application. Other functional controls (e.g., report controls, collection controls, save controls, link copy controls, etc.) may also be included in the menu window 3040.
The electronic device 100 may switch options for displaying more sharing services on the menu window 3040 in response to user input (e.g., a sliding input) on the menu window 3040.
As shown in fig. 3E, the electronic device 100 can display more controls 3041 in the menu window 3040. The electronic device 100 may receive user input (e.g., a single click) on the further control 3041, in response to which the electronic device 100 may display a system sharing window 3050 as shown in fig. 3F.
As shown in fig. 3F, the system sharing window 3050 may include the play link option 3051, the area 3052, and the area 3053 of the short video or the live video. The play link option 3051 may have displayed thereon descriptive information about the short video or live video (e.g., "i just see this in the short video, get around: [ sea vacation"). The area 3052 may be used to display nearby device options found by the electronic device 100, as well as one or more user options (e.g., an "Alee's cell phone" option, a "HUAWEI P50 Pro" option). The user option corresponds to a nearby device found by the electronic device 100. The electronic device 100 may display a search prompt in the area 3052 when searching for a nearby device (e.g., "a nearby device is being found, a counterpart needs to turn on a text prompt such as bluetooth or WLAN"). Icons of one or more service options (e.g., chat application icon, welink application icon, open application icon, boring application icon, mail application icon, browser application icon, information application icon, WLAN direct icon, etc.) may be displayed in area 3053. The application or protocol to which the service option corresponds may support sharing a play link of a short video or live video selected by the user to the contact or server. The user can share data through the application program or the protocol corresponding to the service option. For example sharing the play links of the selected short or live video to one or more contacts of the chat application, and for example sharing the play links of the selected short or live video to a dynamic publishing platform (i.e., server) of the chat application, etc.
The electronic device 100 may receive user input (e.g., a single click) for the user option (e.g., an option of "Alee's cell phone"), and in response to the input, the electronic device 100 may send the play link and description information of the short video or the live video selected by the user to a nearby device corresponding to the user option (e.g., an option of "Alee's cell phone").
In another data sharing scenario, the electronic device 100 may share open links to web articles specified in the information class application to other devices. Wherein the specified web articles include, but are not limited to, news, blogs, and the like.
For example, as shown in fig. 3G, the electronic device 100 may display a news application interface 3060. The news application interface 3060 may include the title of the news article (e.g., "golf will see Alee for gold"), the content of the news article (e.g., "yesterday, golf will see Alee for gold on golf tournament, with the total score of four rounds 267 bars), the name of the publisher of the news article (e.g.," news bulletin "), and the avatar, more controls 3061.
The electronic device 100 may receive user input (e.g., a single click) of the further control 3061, in response to which the electronic device 100 may display the sharing menu 3070 as shown in fig. 3H.
As shown in fig. 3H, one or more options for sharing services may be included in the sharing menu 3070. For example, the one or more sharing service options may include a sharing option (e.g., private letter option and forwarding option, etc.) within the news application and/or a sharing option of other applications (e.g., buddy circle option, chat application option, welink application option, etc.), and a system sharing option 3071. The forwarding option may be used to forward the open link of the news article to a buddy circle of a logged-in account on the video application. The private letter option may be used for the electronic device 100 to issue an open link for the news article to contacts associated with a logged-in account on the video application. The buddy circle option may be used to trigger the electronic device 100 to forward the open link for the news article to the buddy circle of the logged-in account in the chat application. The chat application option may be used to trigger the electronic device 100 to forward the open link for the news article to the contact in the chat application. The welling application option may be used to trigger the electronic device 100 to forward the open link for the news article to a contact in the welling application. Other functionality controls (e.g., favorites controls, linked copy controls, etc.) may also be included in the sharing menu 3070.
The electronic device 100 may be responsive to a user input (e.g., a single click) of the system sharing option 3071 in the sharing menu 3070, in response to which the electronic device 100 may display the system sharing window 3080 as shown in fig. 3I.
As shown in fig. 3I, the system sharing window 3080 may include the open link option 3081, the area 3082, and the area 3083 of the news article described above. The open link option 3081 may have displayed thereon descriptive information about the news article (e.g., "news information APP: [ golf will Alee first show gold capture"). This area 3082 may be used to display options for nearby devices found by the electronic device 100 (e.g., an "Alee cell phone" option, a "HUAWEI P50Pro" option). The electronic device 100 may display a search prompt in the area 3082 when searching for nearby devices (e.g., "nearby devices are being found, the counterpart needs to turn on a text prompt such as bluetooth, WLAN). Icons of one or more service options (e.g., chat application icon, welink application icon, open application icon, boring application icon, mail application icon, browser application icon, information application icon, WLAN direct icon, etc.) may be displayed in area 3083. An application or protocol corresponding to the service option may support an open connection to a contact or server that shares the news article selected by the user. The user can share data through the application program or the protocol corresponding to the service option. For example, sharing the open links of the selected news articles to one or more contacts of the chat application, and for example, sharing the open links of the selected news articles to a dynamic publishing platform (i.e., server) of the chat application, etc.
The electronic device 100 may receive input (e.g., a single click) of a user's option for "Alee's cell phone," in response to which the electronic device 100 may send an open link of a news article being browsed by the user to a nearby device corresponding to the option of "Alee's cell phone.
In another data sharing scenario, the electronic device 100 may share location information of a specified location to other devices in a map-like application. The specified location may be an address selected by the user on a map, or a location where the electronic device 100 is currently located.
For example, the electronic device 100 may share the user-selected sight location to other devices in a map-like application. As shown in fig. 3J, the electronic device 100 may display a map application interface 3090. The map application interface 3090 includes an address search input box 3091, a search control 3092, a map 3093, a sign 3094 of the location of the scenic spot, and a location sign 3095 of the location of the electronic device 100 in the map 3093. Wherein the address search input box 3091 is operable to receive a user entered address name. The search control 3092 may be used to trigger the electronic device 100 to display user-entered location information corresponding to the address name.
The electronic device 100 may receive a selection operation (e.g., a single click) for the marker 3094 for the sight location, and in response to the input, the electronic device 100 may display an address details window 3096 as shown in fig. 3K.
As shown in fig. 3K, the address details window 3096 may include location information 3097 (e.g., "guangdong-shenzhen-south mountain area-west lake 4065" etc.), route controls, sharing controls 3098, collection controls, peripheral controls, etc. corresponding to the scenic spot location. The route control may be used to trigger the electronic device 100 to display route information from the location of the electronic device 100 to the location of the attraction. The sharing control 3098 can be used to trigger the electronic device 100 to share the sight location to other devices or contacts. The collection control may be used to trigger the electronic device 100 to collect the location information of the sight spot location into a favorites, so that the user can quickly find the location information of the sight spot location when opening the map application next time.
The electronic device 100 may receive user input (e.g., a single click) on the sharing control 3098, in response to which the electronic device 100 may display a menu window 3100 as shown in fig. 3L.
As shown in fig. 3L, the menu window 3100 may include one or more options to share services. For example, the one or more sharing service options may include a sharing option (e.g., private letter option) within the map application and/or a sharing option of other applications (e.g., friend circle option, chat application option, web application option, etc.), and more sharing option 3101, etc. The private letter option may be used for the electronic device 100 to forward location information for the sight location to contacts associated with logged-in accounts on the map application. The buddy circle option may be used to trigger the electronic device 100 to forward location information for the sight location to the buddy circle of the logged-in account in the chat application. The chat application option may be used to trigger the electronic device 100 to forward location information for the sight location to contacts in the chat application. The welling application option may be used to trigger the electronic device 100 to forward location information for the sight location to contacts in the welling application. The more sharing option 3101 may be used to trigger the electronic device 100 to invoke a system sharing function on the electronic device 100 and display a system sharing window. Other functionality controls (e.g., picture generation controls, etc.) may also be included in the sharing menu 3070 that may be used to trigger the electronic device 100 to generate a picture from the map portion currently displayed by the electronic device 100.
The electronic device 100 may receive and respond to user input (e.g., a single click) at the more sharing option 3101, in response to which the electronic device 100 may display a system sharing window 3110 as shown in fig. 3M.
As shown in fig. 3M, the system sharing window 3110 may include the location information option 3111, the area 3112, and the area 3113 for the sight location. The location information option 3111 may have location information of the scenic spot location displayed thereon (for example, "herein, …" by west lake road 4065 in south mountain area of Shenzhen city). This area 3082 may be used to display nearby device options found by the electronic device 100 (e.g., an "Alee cell phone" option, a "HUAWEI P50 Pro" option). The user option corresponds to a nearby device found by the electronic device 100. The electronic device 100 may display a search prompt in the area 3082 when searching for nearby devices (e.g., "nearby devices are being found, the counterpart needs to turn on a text prompt such as bluetooth, WLAN). Icons of one or more service options (e.g., chat application icon, welink application icon, open application icon, boring application icon, mail application icon, browser application icon, information application icon, WLAN direct icon, etc.) may be displayed in area 3083. The application or protocol corresponding to the service option may support sharing of user-selected location information to the contact or server. The user can share data through the application program or the protocol corresponding to the service option. Such as sharing the selected location information to one or more contacts of the chat application, and such as sharing the selected location information to a dynamic publishing platform (i.e., server) of the chat application, etc.
The electronic device 100 may receive an input (e.g., a single click) of an option of "Alee's cell phone", and in response to the input, the electronic device 100 may send the location information of the sight location to a nearby device corresponding to the option of "Alee's cell phone".
Also exemplary, the electronic device 100 shares the location information of the current location of the electronic device 100 to other devices. As shown in fig. 3N, the electronic device 100 may display a map application interface 3090. For the text description of the map application interface 3090, reference may be made to the text description portion of the embodiment shown in fig. 3J, which is not repeated herein.
The electronic device 100 may receive a user selection operation (e.g., a single click) of the location marker 3095 in the map application interface 3090, and in response to the input, the electronic device 100 may display an address details window 3120 as shown in fig. 3O.
As shown in fig. 3O, the address details window 3120 may include location information for where the electronic device 100 is currently located (e.g., "in a wild zoo southeast gate parking lot in shenzhen city"), a share control 3121, a punch card control, and the like. The sharing control 3121 may be used to trigger the electronic device 100 to share location information of the current location of the electronic device 100 to other devices or contacts.
The electronic device 100 can receive user input (e.g., a single click) of the sharing control 3121, in response to which the electronic device 100 can display a menu window 3130 as shown in fig. 3P.
As shown in fig. 3P, the menu window 3130 may include one or more options for sharing services. For example, the one or more sharing service options may include a sharing option (e.g., private letter option) within the map application and/or a sharing option of other applications (e.g., friend circle option, chat application option, web application option, etc.), and more sharing options 3131, etc. The text description of the menu window 3130 may refer to the text description of the menu window 3100 in the embodiment shown in fig. 3L, which is not repeated herein.
The electronic device 100 may receive and respond to user input (e.g., a single click) at the more sharing option 3131, in response to which the electronic device 100 may display a system sharing window 3140 as shown in fig. 3Q.
As shown in fig. 3Q, the system sharing window 3140 may include a location information option 3141, an area 3142, and an area 3143 of the location where the electronic device 100 is currently located. The location information option 3141 may have displayed thereon location information of the current location of the electronic device 100 (e.g., "i am in the wild zoo southeast gate parking lot … in Shenzhen city") and/or an open link of the location. The text description of the region 3142 may refer to the text description of the region 3112 in the embodiment shown in fig. 3M, and the text description of the region 3143 may refer to the text description of the region 3113 in the embodiment shown in fig. 3M, which is not repeated herein.
The electronic device 100 may receive input (e.g., a single click) from a user for an option of "Alee's cell phone" in the area 3142, and in response to the input, the electronic device 100 may send location information of the current location of the electronic device 100 to a nearby device corresponding to the option of "Alee's cell phone".
In another data sharing scenario, the electronic device 100 may share an installation package or download link of an application installed on the electronic device 100 to other devices.
For example, as shown in fig. 3R, the electronic device 100 may display a desktop 3150. A page in which application icons are placed is displayed in the desktop 3150, the page including a plurality of application icons (e.g., weather application icons, stock application icons, calculator application icons, setup application icons, mail application icons, music application icons, video application icons, browser application icons, map application icons 3151, gallery application icons, memo application icons, voice assistant application icons, etc.). Optionally, a status bar is displayed in a partial area above the desktop 3150, and the status bar may include: one or more signal strength indicators of a mobile communication signal (also may be referred to as a cellular signal), a battery status indicator, a time indicator, and so forth. A page indicator is also displayed below the plurality of application icons to indicate the total number of pages on the desktop 3150 and the positional relationship of the currently displayed page to other pages. For example, desktop 3150 may include three pages, and the white point in the page indicator may indicate that the currently displayed page is the rightmost one of the three pages. Further optionally, a plurality of tray icons (e.g., dialing application icon, information application icon, contact application icon, camera application icon) are located below the page indicator, the tray icons remaining displayed upon page switching.
The electronic device 100 may receive an input (e.g., a long press) for the map application icon 3151, in response to which the electronic device 100 may display a shortcut menu 3152 as shown in fig. 3S.
As shown in fig. 3S, the shortcut menu 3152 may include a share control 3153 and an unload control 3154. The sharing control 3153 may be used to trigger the electronic device 100 to invoke a system sharing function and display a system sharing window to share the map application to other devices or contacts. The unload control 3154 may be used to trigger the electronic device 100 to unload the map application.
The electronic device 100 can receive user input (e.g., a single click) of the sharing control 3153, in response to which the electronic device 100 can display a system sharing window 3160 as shown in fig. 3T.
As shown in fig. 3T, the system sharing window 3160 may include a map application option 3161, an area 3162, and an area 3163. The map application option 3161 may have displayed thereon a name of the map application (e.g., "map"), a data size (e.g., "40.82 MB"), and a file type (e.g., "base. Apk"), among others. The text description of the region 3162 may refer to the text description of the region 3112 in the embodiment shown in fig. 3M, and the text description of the region 3163 may refer to the text description of the region 3113 in the embodiment shown in fig. 3M, which is not repeated herein.
The electronic device 100 may receive user input for the option of "Alee's cell phone" in the area 3162, and in response to the input, the electronic device 100 may send the installation package of the map application or the download link of the map application to a nearby device corresponding to the option of "Alee's cell phone".
In another data sharing scenario, the electronic device 100 may share contact information on the electronic device 100 to other devices.
For example, as shown in fig. 3U, the electronic device 100 may display a contact application interface 3170. Included in the contact application interface 3170 are one or more contact options (e.g., an "Alice" option 3174, an "Anna" option, a "Bob" option, a "Britney" option, etc.).
The electronic device 100 may receive user input (e.g., a single click) of the "Alice" option 3174, in response to which the electronic device 100 may display a contact information interface 3180 as shown in fig. 3V.
As shown in fig. 3V, the contact information interface 3180 may include a name, an avatar, a phone number (e.g., "186 XXXXXXXX"), a voice call control 3181, a video call control 3182, a text message control 3183, a collection control 3184, an edit control 3185, a more options control 3186, and so on for the contact "Alice". The voice call control 3181 may be used to trigger the electronic device 100 to place a voice call to the electronic device of the contact "Alice". The video call control 3182 may be used to trigger the electronic device 100 to dial a video call to the electronic device of the contact "Alice". The sms control 3183 can be used to trigger the electronic device 100 to send a sms to the electronic device of the contact "Alice". The favorites control 3184 can be used to trigger the electronic device 100 to collect contact information for the contact "Alice" into favorites. The edit control 3185 can be used to trigger the electronic device 100 to modify contact information for the contact "Alice". The more options control 3186 may be used to trigger the electronic device 100 to display more contact functionality.
The electronic device 100 can receive user input (e.g., a single click) of the further options control 3186, in response to which the electronic device 100 can display a menu window 3187 as shown in fig. 3W.
As shown in fig. 3W, the menu window 3187 may include a share contact option 3188, a join blacklist option, a create shortcut option, a delete contact option, and so forth. The share contact option 3188 may be used to trigger the electronic device 100 to invoke a system sharing function and display a system sharing window to share contact information for contact "Alice" to other contacts or other devices. The blacklist entry option may be used to trigger the electronic device 100 to place the contact "Alice" in a blacklist to prohibit the incoming voice call or video call of the contact "Alice" and the sending of a sms. The create shortcut option may be used to trigger the electronic device 100 to create a shortcut for the contact information interface 3180, and place the shortcut on a desktop, so that the user may quickly open the contact interface 3180 directly from the desktop through the shortcut. The delete contact option may be used to trigger the electronic device 100 to delete contact information for the contact "Alice".
The electronic device 100 receives user input (e.g., a single click) of the sharing contact option 3188, in response to which the electronic device 100 may display a menu window 3190 as described in fig. 3X.
As shown in fig. 3X, the menu window 3190 may include one or more sharing options and cancel controls 3194. The one or more sharing options include two-dimensional code option 3191, vCard option 3192, text option 3193, and so on. The two-dimensional code option 3191 may be used to trigger the electronic device 100 to share the contact information of the contact "Alice" to other contacts or other devices in the form of a two-dimensional code. The vCard option 3192 may be used to trigger the electronic device 100 to share contact information for the contact "Alice" in vCard to other contacts or other devices. The texting option 3193 may be used to trigger the electronic device 100 to textually share contact information for contact "Alice" to other contacts or other devices. The cancel control 3194 is used to close the menu window 3190.
The electronic device 100 may receive user input (e.g., a single click) of the two-dimensional code option 3191, in response to which the electronic device 100 may display a system sharing window 3200 as shown in fig. 3Y.
As shown in fig. 3Y, the system sharing window 3200 may include a contact information option 3201, an area 3202, and an area 3203. The contact information option 3201 may display a two-dimensional code or a thumbnail of the two-dimensional code generated based on the contact information of the contact "Alice", and a data size (e.g., 21.79 KB), a name (e.g., "contact address of Alice. Jpg"), and so on of the two-dimensional code. The text description of the region 3202 may refer to the text description of the region 3112 in the embodiment shown in fig. 3M, and the text description of the region 3203 may refer to the text description of the region 3113 in the embodiment shown in fig. 3M, which is not repeated herein.
The electronic device 100 may receive an input (e.g., a single click) of an option of "Alee's cell phone" in the area 3202 by the user, and in response to the input, the electronic device 100 may send a two-dimensional code generated based on contact information of the contact "Alice" to a nearby device corresponding to the option of "Alee's cell phone".
As can be seen from the above data sharing scenario, when the electronic device 100 invokes the system sharing function to share data, it is only possible to share nearby devices that are not near the electronic device 100 or devices that are not searched by the electronic device 100 through bluetooth or WiFi, where the electronic device 100 cannot share data. If the electronic device 100 is to share data with the devices near the electronic device 100 or the devices that the electronic device 100 cannot search for through bluetooth or WiFi, the electronic device 100 and the devices need to download the same designated application, and the registered accounts of the designated application on the electronic device 100 and the registered accounts of the designated application on the devices must have an association relationship, that is, the two accounts are in a friend relationship with each other. Thus, the sharing operation is complicated.
The data sharing method provided in the embodiments of the present application may enable the electronic device 100 to add an option of a currently interacted contact (e.g., a currently talking contact) and/or an option of a recently interacted contact (e.g., a recently talking contact, a recently privately trusted contact, etc.) in a system sharing interface (or window) of data (e.g., a picture, a video, a document file, location information, a link, a contact, a calendar, an application package, etc.) or in an in-application sharing interface (or window), and so on during or after the interaction with the contact. After the electronic device 100 receives the user input of the options of the currently interacted contact and/or the options of the recently interacted contact, the electronic device 100 shares the designated data selected by the user to the electronic device 200 corresponding to the designated contact. In this way, the electronic device 100 can share data to devices not nearby the electronic device 100, and also can share the content of some strange devices, so that the sharing scene is enlarged, and the sharing experience of the user is improved.
In an embodiment of the present application, the interaction between the electronic device 100 and the electronic device 200 may include: operator calls, receives/sends text messages, interactions within social applications, etc. The interaction in the social application may include OTT call, receiving/sending private message, praying/praying, commenting/commenting, focusing/focusing, collecting/collecting live broadcast of the counterpart, friend circle, and the like. The social applications include, but are not limited to, instant messaging applications, live video applications, music playing applications, and the like, which have multi-user social properties.
The following describes a data sharing method provided in the embodiments of the present application in combination with an application scenario.
In some application scenarios, electronic device 100 may receive and trigger sharing of specified data (e.g., pictures, videos, document files, location information, links, contacts, calendars, application packages, memos, etc. data) during a call (voice call or video call, etc.) with other devices (e.g., electronic device 200), in response to user input. The electronic device 100 may display a system sharing window or a system sharing interface of the specified data, where the system sharing window or the system sharing interface of the specified data includes a sharing object option (for example, a sharing object option corresponding to the electronic device 200) corresponding to a device currently communicating with the electronic device 100. The electronic device 100 may receive and respond to user input of the sharing object's option by transmitting the specified data to the talking device over the transmission link between the electronic device 100 and the talking device. In this way, the user can share the data content to be shared by the user to the opposite party in time in the process of using the electronic device 100 to communicate with the opposite party, so that the experience of sharing the data by the user is improved.
Fig. 4A-4I are schematic interface diagrams illustrating sharing of data such as pictures by the electronic device 100 to the electronic device 200 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
For example, as shown in fig. 4A, the electronic device 100 may make a voice call with the electronic device 200, and display a call interface 4010. Included on the conversation interface 4010 may be a telephone number 4013 (e.g., "186 XXXXXXXX"), a conversation duration 4014 (e.g., "00:15"), and one or more conversation functionality controls, among others, of the electronic device 200. The one or more call functionality controls include, but are not limited to, a record control, a wait control, an add call control, a video call control, a mute control, a contact control, a dial control, a hang-up control, a play-out control, and the like. The recording control may be used to trigger the electronic device 100 to record a call between the electronic device 100 and the electronic device 200. The standby control may be used to trigger the electronic device 100 to suspend a call with the electronic device 200. The add call control may be used to trigger electronic device 100 to newly add a call to another device. The video call control may be used to trigger the electronic device 100 to switch the voice call with the electronic device 200 to a video call, where during the video call, the electronic device 100 may display a video call interface, where the video call interface may include a picture captured by a camera of the electronic device 200, and optionally, the video call interface may also include a picture captured by a camera of the electronic device 100. The mute control may be used to trigger the electronic device 100 to stop sending voice data to the electronic device 200.
Optionally, a status bar 4011 is displayed in an upper portion of the conversation interface 4010, and the status bar 4011 may include one or more status indicators including one or more signal strength indicators of mobile communication signals (also referred to as cellular signals), wi-Fi signal indicators, battery status indicators, time indicators, and so forth.
Optionally, if the contact name corresponding to the phone number of the electronic device 200 is stored in the electronic device 100, the call interface 4010 may further include a contact name 4012 (e.g., "Alice") corresponding to the phone number of the electronic device 200. If the electronic device 100 further stores a contact header corresponding to the phone number of the electronic device 200, the call interface 4010 may further include a contact header corresponding to the phone number of the electronic device 200 (e.g., "Alice").
The electronic device 100 may receive input from the user exiting the telephony interface 4010 (e.g., sliding upward from the bottom edge of the display screen), in response to which the electronic device 100 may display a desktop 4020 as shown in fig. 4B.
As shown in fig. 4B, a page with application icons is displayed in the desktop 4020, and includes a plurality of application icons (e.g., weather application icon, stock application icon, calculator application icon, setup application icon, mail application icon, music application icon, video application icon, browser application icon, map application icon 4022, gallery application icon 4023, memo application icon 4024, voice assistant application icon, etc.). The page indicators are also displayed below the application icons to indicate the total number of pages on the desktop 4020 and the positional relationship between the currently displayed pages and other pages. For example, desktop 4020 may include three pages, with the white point in the page indicator indicating that the currently displayed page is the rightmost one of the three pages. Further optionally, there are multiple tray icons (e.g., dialing application icon, information application icon, contact application icon 4025, camera application icon) below the page indicator, which remain displayed when the page is switched. Optionally, the status bar 4011 is displayed in a partial area above the desktop 4020.
Since the electronic device 100 and the electronic device 200 are talking and the electronic device 100 exits the talking interface 4010. The electronic device 100 may display a talk icon 4021 on the status bar 4011. The call icon 4021 may display a call time (e.g., "00:18"), and optionally, the call icon 4021 may also display a phone number of the electronic device 200 (e.g., "186 xxxxx") and/or a contact name (e.g., "Alice") corresponding to the phone number of the electronic device 200. The talk icon 4021 may be used to trigger the electronic device 100 to display the talk interface 4010 described above. Alternatively, the status bar 4011 may remain displayed in the top region of the touch screen when the display interface on the touch screen is switched. The call icon 4021 may be still displayed in the status bar 4011 when the interface displayed on the touch screen is switched but the interface displayed on the touch screen is not the call interface 4010.
In some examples, the call icon 4021 may not be displayed in the status bar 4011, may be displayed in any position on the touch screen in the form of a hover ball, and the user may drag the call icon 4021 to adjust the display position of the call icon 4021 on the touch screen.
The electronic device 100 may receive user input (e.g., a single click) of the gallery application icon 4023, in response to which the electronic device 100 may display a gallery application interface 4030 as shown in fig. 4C.
As shown in FIG. 4C, the gallery application interface 4030 may include one or more album options (e.g., all photo albums 4031, video albums, camera albums, screen shot catalog albums, chat application albums, free-running application albums, etc.). Wherein, the name of the album and the number of photos and/or videos in the album are arranged below each album option. For example, 2160 photos are included in all photo albums 4031, and 6 videos are included in video albums. The gallery application interface 4030 also includes a newly built album control. The newly built album control may be used to trigger the creation of a new album in gallery application interface 4030.
The electronic device 100 may receive an operation (e.g., a click) by the user on the all photo albums 4031, in response to which the electronic device 100 may display the album interface 4040 as shown in fig. 4D.
As shown in fig. 4D, the title of the album interface 4040 may be "all photos". Included in the album interface 4040 are thumbnails of one or more pictures (e.g., thumbnail 4041).
The electronic device 100 may receive an input (e.g., a click) from a user on the thumbnail 4041, in response to which the electronic device 100 may display a picture presentation interface 4050 as shown in fig. 4E.
As shown in fig. 4E, the title of the picture presentation interface 4050 may be "landscape". The picture display interface 4050 displays a picture 4051 and a menu 4052. The menu 4052 includes a share button 4053, a collect button, an edit button, a delete button, and a more button. The share button 4053 may be used to trigger the electronic device 100 to invoke a system share function, opening a system share interface. The collection button may be used to trigger collection of the picture 4051 to a picture collection folder. The edit button can be used to trigger edit functions such as rotation, cropping, adding filters, blurring, etc. of the picture. A delete button may be used to trigger the deletion of the picture 4051. More buttons may be used to trigger the turning on of more functions associated with the picture 4051.
The electronic device 100 may receive user input (e.g., a single click) of the share button 4053, in response to which the electronic device 100 may display a system share interface 4060 as shown in fig. 4F.
As shown in fig. 4F, the system sharing interface 4060 may include a region 4061, a region 4062, and a region 4064. Wherein:
The region 4061 may be used to display one or more pictures or videos in a gallery, which may include user-selected pictures or videos therein. Wherein the selected picture may have a marker displayed thereon, the marker being used to indicate that its corresponding picture is selected (i.e., the picture has been selected by the user). The picture or video frame displayed in this region 4061 may be a thumbnail. The artwork corresponding to the picture or video frame displayed in region 4061 may be stored on electronic device 100. This region 4062 may be used to display device options 4063 of the electronic device 200 that is talking to the electronic device 100. Optionally, a contact header corresponding to the phone number of the electronic device 200 may be displayed on the device option 4063, a contact name (e.g., "Alice") corresponding to the phone number of the electronic device 200 may be displayed around the device option 4063, and a prompt 4065 (e.g., a text prompt "in a call", etc.) may also be displayed around the device option 4063, where the prompt 4065 is used to prompt the device option 4063 to be a device option corresponding to the electronic device 200 that is in a call with the electronic device 100. The area 4062 may also display nearby device options found by the electronic device 100, e.g., the electronic device 100 may display device options of nearby devices in the area 4062 after searching for nearby devices (e.g., the "Alee cell phone" option, the "HUAWEI P50" option). The area 4064 displays one or more service options (e.g., mail icon, browser icon, information icon, WLAN direct icon, etc.). The text description of the region 4064 may refer to the text description of the region 3023 in the embodiment shown in fig. 3B, which is not repeated herein.
In one example, the electronic device 100 may be engaged in a conversation with multiple contacts at the same time, and the electronic device 100 may display options for the multiple contacts with which the electronic device 100 is engaged in a system sharing interface as described above.
Alternatively, the electronic device 100 may be in operator communication with multiple contacts. For example, the electronic device 100 may conduct a voice conference call or a video conference call with multiple contacts simultaneously over an operator network.
For another example, electronic device 100 may receive an incoming call from contact B through the carrier network while engaged in a carrier call with contact a through the carrier network. The electronic device 100 may reserve (hold) a carrier call with contact a and conduct a carrier call with contact B over the carrier network. At this point, the electronic device 100 may determine that the contacts with which the electronic device 100 is communicating include contact a and contact B.
Alternatively, the electronic device 100 may make OTT calls with multiple contacts. For example, the electronic device 100 may conduct a voice conference call or a video conference call with multiple contacts in the OTT application through the OTT application.
For another example, the electronic device 100 may first make an OTT call with the contact a in the OTT application, and the electronic device 100 may reserve (hold) the OTT call with the contact a and make an OTT call with the contact B through the OTT application. At this point, the electronic device 100 may determine that the contacts with which the electronic device 100 is talking include contact a and contact B in the OTT application.
Alternatively, the electronic device 100 may conduct carrier calls and OTT calls with multiple contacts. For example, when the electronic device 100 may make an operator call with the contact a through the operator network, an incoming call of the contact B in the OTT application is received. The electronic device 100 may reserve an operator call with contact a and make an OTT call with contact B in the OTT application through the OTT application. At this time, the electronic device 100 may determine that the contact with which the electronic device 100 is talking includes a contact a for reserving a carrier talking and a contact B for conducting an OTT talking through the OTT application.
For another example, when the electronic device 100 may make an OTT call with the contact B through the OTT application, an incoming call of the contact a is received through the carrier network. The electronic device 100 may reserve an OTT call with contact B and conduct an operator call with contact a over an operator network. At this time, the electronic device 100 may determine that the contact with which the electronic device 100 is talking includes a contact a with which an operator talks through the operator network and a contact B with which an OTT talks is reserved.
The electronic device 100 may receive user input (e.g., a single click) of the device option 4063, in response to which the electronic device 100 may send a data transfer request to the electronic device 200 and display a send window 4070 as shown in fig. 4G.
As shown in fig. 4G, the send window 4070 may include a file name of the picture 4051, a thumbnail 4071 of the picture 4051, a send prompt 4072, and a cancel control 4073. Wherein the send prompt 4072 may be used to prompt the user that the electronic device 100 is currently requesting to send a picture to the electronic device 200 that is talking to the electronic device 100. The type of the transmission prompt 4072 may be any one or more of a text prompt (e.g., "request 1 picture (2.4 MB) to Alice is being transmitted, wait for the other party to confirm reception"), a picture prompt, and a video prompt. The cancel control 4073 may be used to trigger the electronic device 100 to cancel sending a picture to the electronic device 200.
As shown in fig. 4H, after the electronic device 100 receives the acknowledgement information transmitted by the electronic device 200, the electronic device 100 may display a transmission window 4080. The confirmation information is used to confirm the picture sent by the receiving electronic device 100. The transmission window 4080 may include a thumbnail 4081 of the picture 4051 and a transmission hint 4082. Optionally, a transmission progress bar 4083 and a cancel control 4084 may also be included in the transmission window 4080. Wherein the send prompt 4082 may be used to prompt the user that the electronic device 100 is currently sending a picture to the electronic device 200 that is talking to the electronic device 100. The type of the transmission prompt 4082 may be any one or more of a text prompt (e.g., "1 picture (2.4 MB) is being transmitted to Alice"), a picture prompt, a moving picture prompt, and a video prompt. The transmission progress bar 4083 may be used to indicate the progress of the electronic device 100 transmitting the picture 4051 to the electronic device 200. The cancel control 4084 may be used to trigger the electronic device 100 to stop sending the picture 4051 to the electronic device 200.
Alternatively, when the electronic device 100 is transmitting the designation data such as a picture to the electronic device 200, the electronic device 100 may receive an input (e.g., a click) of the cancel control 4084 described above by the user, and in response to the input, the electronic device 100 may stop transmitting the designation data to the electronic device 200 and transmit a cancel command to the electronic device 200. The electronic device 200, upon receiving the cancel command, may delete the part of the content that has been received in the specified data.
In one example, the electronic device 100 may send the picture 4051 directly to the electronic device 200 without the electronic device 200 returning confirmation information after receiving the user input (e.g., a click) on the device option 4063.
Alternatively, as shown in fig. 4I, the electronic device 100 may display the transmission window 4090 after transmitting the above-described picture 4051 to the electronic device 200. The send window 4090 may include a file name of the picture 4051, a thumbnail 4091 of the picture 4051, a sent prompt 4092, and a withdraw control 4093. The sent prompt 4092 may be used to indicate that the electronic device 100 has currently sent the picture 4051 to the electronic device 200. The revocation control 4093 is operable to receive and, in response to user input, trigger the electronic device 100 to send a revocation indication to the electronic device 200. After receiving the withdrawal instruction, the electronic apparatus 200 may delete the picture 4051 that has been received and transmitted by the electronic apparatus 100.
In one example, the contact information (including phone numbers, names, and avatars, etc.) of the electronic device 200 described above may be stored on the electronic device 100 in advance by the user.
In one example, the contact information (including phone number, name, avatar, etc.) of the electronic device 200 may be sent by the electronic device 200 to the electronic device 100.
In one example, the contact information (including phone number, name, and avatar, etc.) of the electronic device 200 may be issued to the electronic device 100 by an intermediary device such as a carrier network device or a server.
In one example, if the electronic device 100 does not obtain the contact name corresponding to the phone number of the electronic device 200, the identifier of the recipient prompted in the sending prompt 4072 shown in fig. 4G, the sending prompt 4082 shown in fig. 4H, and the sent prompt 4092 shown in fig. 4I may be the phone number of the electronic device 200.
In one example, if the electronic device 100 obtains a contact name (e.g., "Alice") corresponding to the phone number of the electronic device 200, the recipient identification of the prompt in the sending prompt 4072 shown in fig. 4G, the sending prompt 4082 shown in fig. 4H, and the sent prompt 4092 shown in fig. 4I may be the contact name (e.g., "Alice") of the electronic device 200 and/or the phone number (e.g., "186 XXXXXXXX") of the electronic device 200.
Fig. 4J-4N are schematic interface diagrams illustrating the electronic device 200 receiving data such as pictures shared by the electronic device 100 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
Illustratively, as shown in fig. 4J, the electronic device 200 is talking to the electronic device 100 and a talking interface 4100 is displayed. The conversation interface 4100 can include, among other things, a telephone number 4102 (e.g., "132 XXXXXXXX"), a conversation duration 4103 (e.g., "00:22"), and one or more conversation functionality controls for the electronic device 100. The one or more call functionality controls include, but are not limited to, a record control, a wait control, an add call control, a video call control, a mute control, a contact control, a dial control, a hang-up control, a play-out control, and the like. The recording control may be used to trigger the electronic device 200 to record a call between the electronic device 200 and the electronic device 100. The standby control may be used to trigger the electronic device 200 to suspend a call with the electronic device 100. The add call control may be used to trigger the electronic device 200 to newly add a call to another device. The video call control may be used to trigger the electronic device 200 to switch the voice call with the electronic device 100 to a video call, where during the video call, the electronic device 200 may display a video call interface, where the video call interface may include a picture captured by a camera of the electronic device 100, and optionally, the video call interface may also include a picture captured by a camera of the electronic device 200. The mute control may be used to trigger the electronic device 200 to stop sending voice data to the electronic device 100.
Optionally, if the electronic device 200 stores a contact name corresponding to the phone number of the electronic device 100, the call interface 4100 may further include a contact name 4101 (e.g., "Daniel") corresponding to the phone number of the electronic device 100. If the electronic device 200 further stores a contact header corresponding to the phone number of the electronic device 100, the call interface 4100 may further include a contact header corresponding to the phone number of the electronic device 100 (for example, "Daniel").
As shown in fig. 4K, after the electronic apparatus 200 receives the data transmission request sent by the electronic apparatus 100, a receiving window 4110 may be displayed. The data transmission request may include information about data to be shared by the electronic device 100 to the electronic device 200 (e.g., including a thumbnail of a picture file and/or a data size and/or name, etc.). The receive window 4110 may include a thumbnail 4111 of a picture that the electronic device 100 wants to share with the electronic device 200, a receive prompt 4112, a reject control 4113, and a receive control 4114. The receiving prompt 4112 may be used to prompt the user electronic device 100 to request to share a picture with the electronic device 200. The type of prompt for receiving the prompt 4112 may be any one or more of a text prompt (e.g., "Daniel wants to share 1 picture (2.4 MB) to you, is it received. The rejection control 4113 may be used to trigger the electronic device 200 to send rejection information to the electronic device 100, which may be used to instruct the electronic device 100 to cancel sharing of pictures with the electronic device 200. The receive control 4114 may be used to trigger the electronic device 200 to send confirmation information to the electronic device 100, which is used to instruct the electronic device 100 to confirm sending the picture to the electronic device 200.
The electronic device 200 may receive user input (e.g., a single click) on the receive control 4114, in response to which the electronic device 200 may send confirmation information to the electronic device 100 and, after sending the confirmation information, receive a picture sent by the electronic device 100.
As shown in fig. 4L, in a process in which the electronic apparatus 200 receives a picture transmitted by the electronic apparatus 100, the electronic apparatus 200 may display a receiving window 4120. The receiving window 4120 may include a thumbnail 4121 and a receiving prompt 4122 of a picture that the electronic device 100 is sharing to the electronic device 200. Optionally, a receiving progress bar 4123 and a cancel control 4124 may be further included in the receiving window 4120. Wherein the receiving prompt 4122 may be used to prompt the user that the electronic device 200 is currently receiving a picture sent by the electronic device 100. The type of the receiving prompt 4122 may be any one or more of a text prompt (for example, "1 picture (2.4 MB) being shared by Daniel for you is being received)"), a picture prompt, a moving picture prompt, and a video prompt. The reception progress bar 4123 may be used to indicate the progress of the electronic device 200 in receiving the picture transmitted by the electronic device 100. The cancel control 4124 may be used to trigger the electronic device 200 to stop receiving pictures sent by the electronic device 200.
As shown in fig. 4M, after the electronic device 200 receives the picture transmitted by the electronic device 100, the electronic device 200 may display a receiving window 4130. The receiving window 4130 may include a thumbnail 4131 of a picture that the electronic device 100 has shared to the electronic device 200, a receiving prompt 4132, an open control 4133, and a store control 4134. The receiving prompt 4132 may be used to prompt the user that the electronic device 200 has received the picture sent by the electronic device 100. The type of the receiving prompt 4132 may be any one or more of a text prompt (e.g., "1 picture sent to you by Daniel has been received"), a picture prompt, a moving picture prompt, and a video prompt. The open control 4133 may be used to trigger the electronic device 200 to display a presentation interface that includes pictures that have been sent by the electronic device 100. The storage control 4134 may be used to trigger the electronic device 200 to save pictures that have been sent by the electronic device 100 to a designated storage path local to the electronic device 200.
The electronic device 200 can receive user input (e.g., a single click) of the storage control 4134, in response to which the electronic device 200 can display a storage interface 4140 as shown in fig. 4N.
As shown in fig. 4N, the storage interface 4140 may include one or more storage path options, a return to previous page control 4141, and so forth. Wherein, because the electronic device 100 shares pictures with the electronic device 200, the one or more storage path options may include one or more album options (e.g., an "all photos album" option 4142, a "camera album" option, a "screen capture catalog album" option, a "chat application album" option, a "free link application album" option, an "other album" option, etc.). Optionally, a new control 4143 may be further included in the storage interface 4140, where the new control 4143 may be used to trigger the electronic device 200 to add a new album option in the storage interface 4140.
The electronic device 200 may receive user input (e.g., a single click) of the "all photos albums" option 4142, in response to which the electronic device 200 may store the pictures that the electronic device 100 shared to the electronic device 200 under the storage paths corresponding to all photos albums. After the electronic device 200 stores the pictures shared by the electronic device 100 to the electronic device 200 under the storage paths corresponding to all photo albums, when the electronic device 200 opens the album interfaces of all photo albums in the gallery application, the album interfaces of all photo albums may include thumbnails of the pictures shared by the electronic device 100 to the electronic device 200.
In one example, if the electronic device 200 does not obtain the contact name corresponding to the phone number of the electronic device 100, the sender identifier indicated in the receiving indication 4112 shown in fig. 4K, the receiving indication 4122 shown in fig. 4L, and the receiving indication 4132 shown in fig. 4M may be the phone number of the electronic device 100.
In one example, if the electronic device 200 stores a contact name (e.g., "Daniel") corresponding to the phone number of the electronic device 100, the sender identifier of the prompt in the receiving prompt 4112 shown in fig. 4K, the receiving prompt 4122 shown in fig. 4L, and the receiving prompt 4132 shown in fig. 4M may be the contact name (e.g., "Daniel") of the electronic device 100 and/or the phone number (e.g., "132 XXXXXXXX") of the electronic device 100.
In an example, as shown in fig. 4O, if the electronic device 100 is talking with the electronic device 200, but the electronic device 100 does not obtain the name of the contact corresponding to the phone number of the electronic device 200, when the system sharing interface 4060 is displayed on the electronic device 100, the phone number (for example, 186 XXXXXXXX) of the electronic device 200 may be directly displayed around the device option 4063 in the system sharing interface 4060.
In one example, as shown in fig. 4O, if the electronic device 100 is talking with the electronic device 200 and the electronic device 100 obtains a contact name corresponding to the phone number of the electronic device 200, when the system sharing interface 4060 is displayed on the electronic device 100, the phone number (for example, "186 xxxxxxxxxxx") and/or the contact name (for example, "Alice") of the electronic device 200 may be displayed around the device option 4063 in the system sharing interface 4060.
The electronic device 100 not obtaining the contact name corresponding to the phone number of the electronic device 200 includes: the electronic device 100 does not obtain the contact name corresponding to the phone number of the electronic device 200 from the electronic device 100 locally and/or from the electronic device 200 and/or from the carrier network device and/or from the server.
Optionally, the system sharing interface 4060 may also display a talk flag 4066 in the vicinity of the device option 4063 (e.g., in the upper left corner of the device option 4063), which talk flag 4066 may be used to prompt the device option 4063 to be a device option corresponding to the electronic device 200 that the electronic device 100 is talking.
In this embodiment, the electronic device 100 is not limited to sharing picture data with the electronic device 200 during the call between the electronic device 100 and the electronic device 200, but may also share other types of data, such as audio, video, documents (e.g., document files in word, excel, PPT, PDF, etc.), article links, video playing links, web page open connections, application installation packages or application download links, contact information, location information, text, memo, etc. When the types of data shared by the electronic device 100 are different, the electronic device 200 may receive and respond to the input of the user after receiving the data, and perform an operation corresponding to the type of data.
Fig. 5A to 5E are schematic interface diagrams illustrating data such as an application shared by the electronic device 100 to the electronic device 100 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
Illustratively, as shown in FIG. 5A, the electronic device 100 is talking to the electronic device 200 and the desktop 4020 is displayed. The text description of the desktop 4020 may refer to the text description in the embodiment shown in fig. 4B, which is not repeated here.
The electronic device 100 may receive user input (e.g., a single click) of the map application icon 4022 in the desktop 4020, in response to which the electronic device 100 may display the shortcut menu 5010 shown in fig. 5B.
As shown in fig. 5B, a share control 5011 and an unload control 5012 may be included in the shortcut menu 5010. The sharing control 5011 can be used to trigger the electronic device 100 to invoke a system sharing function, display a system sharing window, and share the map application to other devices or contacts. The unload control 5012 may be used to trigger the electronic device 100 to unload the map application.
The electronic device 100 can receive user input (e.g., a single click) of the sharing control 5011, in response to which the electronic device 100 can display a system sharing window 5020 as shown in fig. 5C.
As shown in fig. 5C, the system sharing window 5020 can include a map application option 5021, an area 5022, and an area 5024. Among other things, the map application option 5021 may have displayed thereon a name of the map application (e.g., "map"), a data size (e.g., "40.82 MB"), and a file type (e.g., "base. Apk"), and so forth. This area 5022 can be used to display device options 5023 for the electronic device 200 that is talking to the electronic device 100. The device option 5023 may display a contact header corresponding to the phone number of the electronic device 200, a contact name (e.g., "Alice") or a phone number corresponding to the phone number of the electronic device 200 may be displayed around the device option 5023, and a prompt message 5025 (e.g., a text prompt "in a call", etc.) may also be displayed around the device option 5023, where the prompt message 5025 is used to prompt the device option 5023 to be a device option corresponding to the electronic device 200 that is in a call with the electronic device 100. The area 5022 may also display nearby device options found by the electronic device 100, for example, the electronic device 100 may display a device option of a nearby device (for example, an "Alee's handset" option, and a "HUAWEI P50" option) in the area 5022 after searching for a nearby device. The text description of the region 5024 can refer to the text description of the region 3023 in the embodiment shown in fig. 3B, and will not be repeated here.
The electronic device 100 may receive user input (e.g., a single click) of the device option 5023, in response to which the electronic device 100 may send a data transfer request to the electronic device 200 and display a send window 5030 as shown in fig. 5D.
As shown in fig. 5D, the map application icon 5031 and the data size (e.g., "40.82 MB") and file type (e.g., "base. Apk") of the map application, the send prompt 5032 and the cancel control 5033, and so forth, may be included in the send window 5030. Wherein the send prompt 5032 may be used to prompt the user that the electronic device 100 is currently requesting a map application to be sent to the electronic device 200 that is in communication with the electronic device 100. The sending prompt 5032 may be any one or more of a text prompt (e.g., "request to send map application to Alice (40.82 MB), wait for confirmation of receipt by the other party"), a picture prompt, a moving picture prompt, and a video prompt. The cancel control 5033 may be used to trigger the electronic device 100 to cancel sending the installation package of the map application to the electronic device 200.
As shown in fig. 5E, after the electronic device 100 receives the acknowledgement information transmitted by the electronic device 200, the electronic device 100 may display a transmission window 5040. The confirmation information is used to confirm the installation package of the map application sent by the receiving electronic device 100. The transmission window 5040 may include a map application icon 5041, a data size (e.g., "40.82 MB") and a file type (e.g., "base. Apk") of the map application, a transmission hint 5042, and the like. Wherein the send prompt 5042 may be used to prompt the user that the electronic device 100 is currently sending an installation package for a map application to the electronic device 200 that is talking to the electronic device 100. Optionally, a transmission progress bar 5043 and a cancel control 5044 may also be included in the transmission window 5040. The type of the sending prompt 5042 may be any one or more of a text prompt (e.g., "send map application to Alice (40.82 MB)"), a picture prompt, a moving picture prompt, and a video prompt. The transmission progress bar 5043 may be used to indicate the progress of the electronic device 100 transmitting the installation package of the map application to the electronic device 200. The cancel control 5044 may be used to trigger the electronic device 100 to stop sending installation packages for the map application to the electronic device 200.
In one example, the electronic device 100 may directly send the installation package of the map application to the electronic device 200 without the electronic device 200 returning a confirmation message after receiving the user input (e.g., clicking) on the device option 5023 shown in fig. 5C.
Alternatively, after transmitting the installation package of the map application to the electronic device 200, the electronic device 100 may receive and respond to the input of the user by transmitting a withdrawal instruction of the installation package of the map application to the electronic device 200. Upon receiving the withdrawal instruction, the electronic device 200 may delete the installation package of the map application that has received the transmission of the electronic device 100.
In one example, if the electronic device 100 does not obtain the contact name corresponding to the phone number of the electronic device 200, the identifier of the recipient prompted in the sending prompt 5032 shown in fig. 5D and the sending prompt 5042 shown in fig. 5E may be the phone number of the electronic device 200.
In one example, if electronic device 100 stores a contact name (e.g., "Alice") corresponding to the phone number of electronic device 200, the recipient identification prompted in the send prompt 5032 shown in fig. 5D and the send prompt 5042 shown in fig. 5E may be the contact name (e.g., "Alice") of electronic device 200 and/or the phone number (e.g., "186 XXXXXXXX") of electronic device 200.
Fig. 5F-5I are schematic diagrams illustrating interfaces of receiving data such as an application shared by the electronic device 100 by the electronic device 200 when the electronic device 200 communicates with the electronic device 100 in the embodiment of the present application.
Illustratively, as shown in FIG. 5F, electronic device 200 is talking to electronic device 100 and a talk interface 5050 is displayed. The conversation interface 5050 can include a telephone number 5052 (e.g., "132 XXXXXX"), a conversation duration 5053 (e.g., "00:21"), and one or more conversation functionality controls, among others, of the electronic device 100. Optionally, if the contact name corresponding to the phone number of the electronic device 100 is stored on the electronic device 200, the call interface 5050 may further include a contact name 5051 (e.g., "Daniel") corresponding to the phone number of the electronic device 100. If the electronic device 200 further stores a contact header corresponding to the phone number of the electronic device 100, the call interface 5050 may further include a contact header corresponding to the phone number of the electronic device 100 (e.g., "Daniel"). The text description for the one or more call functionalities may refer to the text description for the call functionalities in the embodiment shown in fig. 4J, which is not described herein.
As shown in fig. 5G, after the electronic device 200 receives the data transmission request sent by the electronic device 100, a receiving window 5060 may be displayed. The data transmission request may include information about a map application to be shared by the electronic device 100 to the electronic device 200, where the information about the map application may include an icon of the map application, a name of the map application (e.g., "map application"), a data size (e.g., 40.82 MB), a file type (e.g., base. Apk), and so on. The receiving window 5060 may include information about the map application that the electronic device 100 wants to share to the electronic device 200 (e.g., map application icon 5061, name of the map application, data size, file type, etc.), receiving prompt 5062, rejecting control 5063, receiving control 5064, etc. Wherein the receipt prompt 5062 may be used to prompt the consumer electronic device 100 to request a sharing map application to the electronic device 200. The type of prompt for receiving the prompt 5062 may be any one or more of a text prompt (e.g., "Daniel wants to share a map application (40.82 MB) with you, is it received. The rejection control 5063 may be used to trigger the electronic device 200 to send rejection information to the electronic device 100, which may be used to instruct the electronic device 100 to cancel sharing of the map application with the electronic device 200. The receiving control 5064 may be used to trigger the electronic device 200 to send confirmation information to the electronic device 100, the confirmation information being used to instruct the electronic device 100 to confirm sending the installation package of the map application to the electronic device 200.
The electronic device 200 can receive user input (e.g., a single click) of the receiving control 5064, in response to which the electronic device 200 can send confirmation information to the electronic device 100 and, after sending the confirmation information, receive an installation package of the map application sent by the electronic device 100.
As shown in fig. 5H, in the process in which the electronic device 200 receives an installation package of the map application transmitted by the electronic device 100, the electronic device 200 may display a receiving window 5070. The receiving window 5070 may include information about the map application (e.g., map application icon 5071, name of the map application, data size, file type, etc.), receiving a prompt 5072. Optionally, a receiving progress bar 5073 and a cancel control 5074 may also be included in the receiving window 5070. Wherein the receipt prompt 5072 may be used to prompt the user that the electronic device 200 is currently receiving an installation package for a map application sent by the electronic device 100. The type of the receiving prompt 5072 may be any one or more of a text prompt (for example, "map application (40.82 MB) being received by Daniel for your sending)"), a picture prompt, a moving picture prompt, and a video prompt. The reception progress bar 5073 may be used to indicate the progress of the electronic device 200 receiving an installation package of the map application transmitted by the electronic device 100. The cancel control 5074 can be used to trigger the electronic device 200 to stop receiving installation packages of map applications sent by the electronic device 200.
As shown in fig. 5I, after the electronic device 200 receives the installation package of the map application transmitted by the electronic device 100, the electronic device 200 may display a receiving window 5080. The receiving window 5080 may include information related to the map application (e.g., map application icon 5081, name of the map application, data size, file type, etc.), one or more functionality controls. Among other things, the one or more functionality controls include an immediate install control 5082, a re-download control 5083, and a next re-install control 5084, among others. The immediate-install control 5082 may be used to trigger the electronic device 200 to install the map application based on an installation package of the map application sent by the electronic device 100. The re-download control 5083 can be used to trigger the electronic device 200 to switch interfaces that display application marketplace applications from which the map application is re-downloaded. The next reinstallation control 5084 may be used to trigger the electronic device 200 to save an installation package of the map application sent by the electronic device 100, and the next time the user manually triggers the electronic device 200 to install the map application based on the installation package of the map application.
In one example, if the electronic device 200 does not obtain the contact name corresponding to the phone number of the electronic device 100, the sender identifier indicated in the receiving indication 5062 shown in fig. 5G and the receiving indication 5072 shown in fig. 5H may be the phone number of the electronic device 100.
In one example, if the electronic device 200 stores a contact name (e.g., "Daniel") corresponding to the phone number of the electronic device 100, the sender identifier prompted in the receiving prompt 5062 shown in fig. 5G and the receiving prompt 5072 shown in fig. 5H may be the contact name (e.g., "Daniel") of the electronic device 100 and/or the phone number (e.g., "132 XXXXXXXX") of the electronic device 100.
Fig. 5J-5P are schematic interface diagrams illustrating data such as contact information shared by the electronic device 100 to the electronic device 200 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
Illustratively, as shown in FIG. 5J, the electronic device 100 is talking to the electronic device 200 and a contact application interface 5090 is displayed. Included in the contact interface 5090 are one or more contact options (e.g., an "Alice" option, an "Anna" option, a "Bob" option 5091, a "Britney" option, etc.).
The electronic device 100 may receive user input (e.g., a single click) of the "Bob" option 5091, in response to which the electronic device 100 may display a contact information interface 5100 as shown in fig. 5K.
As shown in fig. 5K, the contact information interface 5100 may include a name, an avatar, a phone number (e.g., "180 XXXXXXXX"), a voice call control 5101, a video call control 5102, a text message control 5103, a collection control 5104, an edit control 5105, a more options control 5106, and so forth for contact "Bob". The voice call control 5101 can be used to trigger the electronic device 100 to place a voice call to the electronic device of the contact "Bob". The video call control 5102 can be used to trigger the electronic device 100 to dial a video call to the electronic device of the contact "Bob". The SMS control 5103 can be used to trigger the electronic device 100 to send a SMS to the electronic device of the contact "Bob". The collection control 5104 can be used to trigger the electronic device 100 to collect contact information for the contact "Bob" into a favorites. The edit control 5105 can be used to trigger the electronic device 100 to modify contact information for the contact "Bob". The more options control 5106 may be used to trigger the electronic device 100 to display more contact functionality.
The electronic device 200 can receive user input (e.g., a single click) of the more options control 5106, in response to which the electronic device 100 can display a menu window 5107 as shown in fig. 5L.
As shown in fig. 5L, the menu window 5107 may include a share contact option 5108, a join blacklist option, a create shortcut option, a delete contact option, and so forth. The share contact option 5108 may be used to trigger the electronic device 100 to invoke a system sharing function and display a system sharing window to share contact information of contact "Bob" to other contacts or other devices.
The electronic device 100 receives user input (e.g., a single click) on the share contact option 5108, in response to which the electronic device 100 may display a menu window 5110 as described in fig. 5M.
As shown in fig. 5M, the menu window 5110 may include one or more sharing options, where the one or more sharing options include a two-dimensional code option 5111, a vCard option 5112, a text option 5113, and so on. The two-dimensional code option 5111 can be used for triggering the electronic device 100 to share the contact information of the contact person "Bob" to other contact persons or other devices in the form of a two-dimensional code. The vCard option 5112 may be used to trigger the electronic device 100 to share contact information for contact "Bob" in vCard to other contacts or other devices. The texting option 5113 may be used to trigger the electronic device 100 to textually share contact information for contact "Bob" to other contacts or other devices.
The electronic device 100 may receive user input (e.g., a single click) of the two-dimensional code option 5111, and in response to the input, the electronic device 100 may display a system sharing window 5120 as shown in fig. 5N.
As shown in fig. 5N, the system sharing window 5120 can include a contact information option 5121, an area 5122, and an area 5124. The contact information option 5121 may display a two-dimensional code or a thumbnail of the two-dimensional code generated based on the contact information of the contact "Bob", and a data size (e.g., 21.79 KB), a name (e.g., "contact of Bob. Jpg"), etc. of the two-dimensional code. This area 5122 may be used to display device options 5123 for the electronic device 200 with which the electronic device 100 is talking. The device option 5123 may have a contact header corresponding to the phone number of the electronic device 200 displayed thereon, a contact name (e.g., "Alice") or a phone number corresponding to the phone number of the electronic device 200 may be displayed around the device option 5123, and a prompt 5125 (e.g., a text prompt "in a call", etc.) may also be displayed around the device option 5123, where the prompt 5125 is used to prompt the device option 5123 to be a device option corresponding to the electronic device 200 in which the electronic device 100 is talking. The area 5122 may also have displayed therein nearby device options found by the electronic device 100, e.g., the electronic device 100 may display device options of nearby devices in the area 5122 after searching for nearby devices (e.g., an "Alee's cell phone" option, a "HUAWEI P50" option). The text description of the area 5124 may refer to the text description of the area 3023 in the embodiment shown in fig. 3B, and will not be repeated herein.
The electronic device 100 may receive user input (e.g., a single click) of the device option 5123, in response to which the electronic device 100 may send a data transfer request to the electronic device 200 and display a send window 5130 as shown in fig. 5O.
As shown in fig. 5O, the transmission window 5130 may include therein a two-dimensional code generated based on contact information of the contact "Bob" or a thumbnail 5131 of the two-dimensional code, and a data size (e.g., "21.79 KB") of the two-dimensional code, a transmission prompt 5132, a cancel control 5133, and the like. Wherein the send prompt 5132 may be used to prompt the user that the electronic device 100 is currently requesting to send contact information for contact "Bob" to the electronic device 200 that is talking to the electronic device 100. The prompt type of the sending prompt 5132 may be any one or more of a text prompt (e.g., "request to send Bob's contact to Alice, wait for the other party to confirm receipt"), a picture prompt, a moving picture prompt, and a video prompt. The cancel control 5033 may be used to trigger the electronic device 100 to cancel sending the contact information of the contact "Bob" of the map application to the electronic device 200.
As shown in fig. 5P, after the electronic device 100 receives the acknowledgement information transmitted by the electronic device 200, the electronic device 100 may display a transmission window 5140. The confirmation information is used for confirming and receiving contact information of the contact person 'Bob' sent by the electronic device 100. The transmission window 5140 may include a two-dimensional code generated based on contact information of the contact "Bob" or a thumbnail 5141 of the two-dimensional code, a data size (e.g., "21.79 KB") of the two-dimensional code, a transmission prompt 5142, and the like. Wherein the send prompt 5142 may be used to prompt the user that the electronic device 100 is currently sending contact information for contact "Bob" to the electronic device 200 that is talking to the electronic device 100. Optionally, a transmission progress bar 5143 and a cancel control 5144 may be further included in the transmission window 5140. The prompt type of the sending prompt 5142 may be any one or more of a text prompt (e.g., "a contact that is sending Bob to Alice"), a picture prompt, a moving picture prompt, and a video prompt. The transmission progress bar 5143 may be used to represent the progress of the electronic device 100 transmitting contact information for the contact "Bob" to the electronic device 200. The cancel control 5144 can be used to trigger the electronic device 100 to cease sending contact information for contact "Bob" to the electronic device 200.
In one example, the electronic device 100 may send the contact information of the contact "Bob" directly to the electronic device 200 without the electronic device 200 returning confirmation information after receiving the user input (e.g., a single click) of the device option 5123 shown in fig. 5N described above.
Optionally, after sending the contact information for contact "Bob" to the electronic device 200, the electronic device 100 may receive and respond to the user's input by sending a revocation indication of the contact information for contact "Bob" to the electronic device 200. Upon receiving the withdrawal indication, the electronic device 200 may delete the contact information for which contact "Bob" has been received.
In one example, if the electronic device 100 does not obtain the contact name corresponding to the phone number of the electronic device 200, the identifier of the recipient prompted in the sending prompt 5132 shown in fig. 5O and the sending prompt 5142 shown in fig. 5P may be the phone number of the electronic device 200.
In one example, if the electronic device 100 stores a contact name (e.g., "Alice") corresponding to the phone number of the electronic device 200, the recipient identifier prompted in the sending prompt 5132 shown in fig. 5O and the sending prompt 5142 shown in fig. 5P may be the contact name (e.g., "Alice") of the electronic device 200 and/or the phone number (e.g., "186 XXXXXXXX") of the electronic device 200.
Fig. 5Q-5S are schematic diagrams illustrating interfaces of receiving data such as contact information shared by the electronic device 100 by the electronic device 200 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
Illustratively, as shown in fig. 5Q, the electronic device 200 is talking to the electronic device 100 and a talking interface 5150 is displayed. The talk interface 5150 can include, among other things, a telephone number 5152 (e.g., "132 XXXXXX"), a talk duration 5153 (e.g., "00:21"), and one or more talk functionality controls for the electronic device 100. Optionally, if the contact name corresponding to the phone number of the electronic device 100 is stored on the electronic device 200, the call interface 5150 may further include a contact name 5151 (e.g., "Daniel") corresponding to the phone number of the electronic device 100. If the electronic device 200 further stores a contact header corresponding to the phone number of the electronic device 100, the call interface 5150 may further include a contact header corresponding to the phone number of the electronic device 100 (e.g., "Daniel"). The text description for the one or more call functionalities may refer to the text description for the call functionalities in the embodiment shown in fig. 4J, which is not described herein.
The electronic device 200 may display the receiving window 5160 after receiving the data transmission request transmitted by the electronic device 100. The data transmission request may include a name of the two-dimensional code (e.g., "Bob's contact (two-dimensional code)"), a data size (e.g., "21.79 KB"), and the like. The receiving window 5160 can include a name of the two-dimensional code, a data size, a receiving hint 5162, a rejecting control 5163, a receiving control 5164, and so forth. The receiving prompt 5162 may be used to prompt the user of the electronic device 100 to request the electronic device 200 to share the contact information of the contact "Bob". The prompt type of the receiving prompt 5162 may be any one or more of a text prompt (e.g., "Daniel wants to share Bob's contact information with you, is it received. The rejection control 5163 may be used to trigger the electronic device 200 to send rejection information to the electronic device 100, which may be used to instruct the electronic device 100 to cancel sharing of contact information of contact "Bob" with the electronic device 200. The receiving control 5164 can be used to trigger the electronic device 200 to send confirmation information to the electronic device 100 that instructs the electronic device 100 to confirm sending contact information for contact "Bob" to the electronic device 200.
The electronic device 200 may receive user input (e.g., a single click) on the receiving control 5164, in response to which the electronic device 200 may send confirmation information to the electronic device 100 and, after sending the confirmation information, receive contact information for contact "Bob" sent by the electronic device 100.
As shown in fig. 5R, in the process that the electronic device 200 receives the contact information of the contact "Bob" transmitted by the electronic device 100, the electronic device 200 may display a receiving window 5170. The receive window 5170 can include a receive prompt 5172. Optionally, the receiving window 5170 may further include a receiving progress bar 5173 and a cancel control 5174. Wherein the receipt prompt 5172 may be used to prompt the user that the electronic device 200 is currently receiving contact information for contact "Bob" sent by the electronic device 100. The prompt type of the receiving prompt 5172 may be any one or more of a text prompt (e.g., "a contact address of Bob being received by Daniel to you"), a picture prompt, a moving picture prompt, and a video prompt. The receipt progress bar 5173 may be used to indicate the progress of the electronic device 200 in receiving contact information for contact "Bob" sent by the electronic device 100. The cancel control 5174 can be used to trigger the electronic device 200 to cease receiving contact information for contact "Bob" sent by the electronic device 200.
As shown in fig. 5S, after the electronic device 200 receives the contact information of the contact "Bob" sent by the electronic device 100, the electronic device 200 may display a receiving window 5180. The receiving window 5180 can include a two-dimensional code corresponding to contact information of contact "Bob" and one or more functionality controls. The one or more functionality controls include, among other things, identifying a two-dimensional code control 5182, saving to gallery control 5183, and so forth. The identification two-dimensional code control 5182 can be used to trigger the electronic device 200 to identify the contact information of the contact "Bob" in the two-dimensional code. The save to gallery control 5183 may be used to trigger the electronic device 200 to save the two-dimensional code to the gallery.
In one example, if the electronic device 200 does not obtain the contact name corresponding to the phone number of the electronic device 100, the sender identifier indicated in the receiving indication 5162 shown in fig. 5R and the receiving indication 5172 shown in fig. 5S may be the phone number of the electronic device 100.
In one example, if the electronic device 200 stores a contact name (e.g., "Daniel") corresponding to the phone number of the electronic device 100, the sender identifier prompted in the receiving prompt 5162 shown in fig. 5R and the receiving prompt 5172 shown in fig. 5S may be the contact name (e.g., "Daniel") of the electronic device 100 and/or the phone number (e.g., "132 XXXXXXXX") of the electronic device 100.
Fig. 5T-5W are schematic interface diagrams illustrating data such as text shared by the electronic device 100 to the electronic device 200 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
Illustratively, as shown in FIG. 5T, the electronic device 100 is talking to the electronic device 200 and a document editing interface 5190 is displayed. The document editing interface 5190 can include a text editing area 5191. The text editing area 5191 may display text contents (for example, "when going to zoo, a membership card is attached").
The electronic device 100 may receive a user selection input (e.g., a long press operation) of the text content of the text editing area 5191, and in response to the input, the electronic device 100 may display a menu bar 5192 as shown in fig. 5U.
As shown in fig. 5U, the menu bar 5192 can include a share control 5193, a cut control, a copy control, a paste control, and the like. The share control 5193 can trigger sharing of the user-selected text content.
The electronic device 100 can receive user input (e.g., a single click) of the sharing control 5193, in response to which the electronic device 100 can display a system sharing window 5200 as shown in fig. 5V.
As shown in fig. 5V, the system sharing window 5200 may include a text option 5201, an area 5202, and an area 5204. The text options 5201 may have a name, a data size, etc. of the text content selected by the user displayed thereon. This area 5202 may be used to display device options 5203 of the electronic device 200 with which the electronic device 100 is communicating. A prompt 5205 (e.g., text prompt "talk in" etc.) may also be displayed around the device option 5023. The text description of the region 5202 may refer to the text description of the region 5202 in the embodiment shown in fig. 5C, and the text description of the region 5024 may refer to the text description of the region 3023 in the embodiment shown in fig. 3B, which is not repeated herein.
The electronic device 100 may receive user input (e.g., a single click) of the device option 5203, in response to which the electronic device 100 may send a data transfer request to the electronic device 200 and display a send window 5210 as shown in fig. 5W.
As shown in fig. 5W, the name 5211, the transmission prompt 5212, the cancel control 5213, and the like of the text content that can be selected by the user are in the transmission window 5210. Wherein the send prompt 5212 may be used to prompt a user that the electronic device 100 is currently requesting to send text to the electronic device 200 that is talking to the electronic device 100. The sending prompt 5212 may be any one or more of a text prompt (e.g., "request text to Alice, wait for confirmation of receipt by the other party"), a picture prompt, a moving picture prompt, and a video prompt. The cancel control 5213 can be used to trigger the electronic device 100 to cancel sending text to the electronic device 200.
Alternatively, after transmitting text to the electronic device 200, the electronic device 100 may receive and respond to user input by transmitting a withdrawal indication of the text to the electronic device 200. After receiving the withdrawal indication, the electronic device 200 may delete the text that has been received from the electronic device 100.
Fig. 5X-5Y are schematic diagrams illustrating interfaces of receiving data such as text shared by the electronic device 100 by the electronic device 200 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
For example, as shown in fig. 5X, the electronic device 200 is talking with the electronic device 100, and a talking interface 5150 is displayed, and the text description of the talking interface 5150 may refer to the embodiment shown in fig. 5Q and will not be repeated here.
After the electronic apparatus 200 receives the data transmission request transmitted by the electronic apparatus 100, the receiving window 5220 may be displayed. Wherein the data transmission request may include a name of text, etc. The receiving window 5220 can include a text icon, a receiving prompt 5222, a rejection control 5223, a receiving control 5224, and so forth. Wherein the receipt prompt 5222 can be used to prompt the consumer electronic device 100 to request that text be shared with the electronic device 200. The type of prompt for receiving the prompt 5222 may be any one or more of a text prompt (e.g., "Daniel wants to share text with you, is it received. The rejection control 5223 can be used to trigger the electronic device 200 to send rejection information to the electronic device 100, which can be used to instruct the electronic device 100 to cancel sharing text with the electronic device 200. The receiving control 5224 can be used to trigger the electronic device 200 to send confirmation information to the electronic device 100 that instructs the electronic device 100 to confirm the sending of text to the electronic device 200.
The electronic device 200 may receive user input (e.g., a single click) to the receiving control 5224, in response to which the electronic device 200 may send confirmation information to the electronic device 100 and, after sending the confirmation information, receive text sent by the electronic device 100.
As shown in fig. 5Y, after the electronic apparatus 200 receives the text transmitted from the electronic apparatus 100, the electronic apparatus 200 may display a receiving window 5230. The receiving window 5230 can include a portion of the text or the entire content 5231, one or more functionality controls. Among other things, the one or more functionality controls include copy to clipboard control 5232, save to memo control 5233, delete control 5234, and so forth. The copy-to-clipboard control 5232 may be used to trigger the electronic device 200 to save the content in the text to the clipboard. The save to memo control 5233 may be used to trigger the electronic device 200 to save the content in the text to the memo. The delete control 5234 can be used to trigger the electronic device 200 to delete the text.
In some application scenarios, the electronic device 100 may receive and respond to user input during a call (e.g., a voice call or a video call, etc.) with another device (e.g., the electronic device 200), trigger display of a sharing menu within the specified application on an application interface of the specified application, and add display of a sharing object option (e.g., a sharing object option corresponding to the electronic device 200) corresponding to the device currently being called by the electronic device 100 in the sharing menu within the application. The electronic device 100 may receive and respond to user input of the sharing object's option by transmitting the specified data to the talking device over the transmission link between the electronic device 100 and the talking device. In this way, the user can display the calling party in the sharing menu of the designated application in the process of using the electronic device 100 to talk with the counterpart, so that the data content selected by the user in the designated application can be timely shared to the calling counterpart, and the experience of sharing data by the user is improved.
Fig. 6A-6D are schematic diagrams illustrating interfaces of sharing data such as links with the electronic device 200 by the electronic device 100 when the electronic device 100 communicates with the electronic device 200 in the embodiment of the present application.
For example, as shown in fig. 6A, the electronic device 100 may be talking to the electronic device 200 and display a news information application interface 6010. The news information application interface 6010 may include titles of news articles (e.g., "golf will see Alee for gold"), content of news articles (e.g., "yesterday, golf will see Alee for gold on golf tournament, with the total score of four rounds 267 bars), publisher names of news articles (e.g.," news bulletin "), and avatars, more controls 6013. The status bar 6011 may be displayed on top of the news information application interface 6010, and the text description of the status bar 6011 may refer to the text description of the status bar in the foregoing embodiment, which is not repeated herein. Because the electronic device 100 may be talking with the electronic device 200, the electronic device 100 may display a talk time (e.g., "00:18") on the talk icon 6012 in the status bar 6011, and optionally, the phone number of the electronic device 200 (e.g., "186 XXXXXXXX") and/or a contact name (e.g., "Alice") corresponding to the phone number of the electronic device 200 may also be displayed on the talk icon 6012. The talk icon 6012 may be used to trigger the electronic device 100 to display a talk interface to talk to the electronic device 200.
The electronic device 100 may receive user input (e.g., a single click) of the further control 6013, in response to which the electronic device 100 may display a share menu 6020 as shown in fig. 6B.
As shown in fig. 6B, the sharing menu 6020 may include one or more options for sharing services. The one or more sharing service options may include a device option 6021 corresponding to the electronic device 200 with which the electronic device 100 is talking, a sharing option within the news information application (e.g., private letter option and forwarding option, etc.), and/or a sharing option of other applications (e.g., friend circle option, chat application option, web application option, etc.), and a system sharing option 6022. Other functionality controls (e.g., favorites controls, linked copy controls, etc.) may also be included in the sharing menu 6020. The system sharing option 6022 may be used to trigger the electronic device 100 to invoke a system sharing function and display a system sharing interface to share the news article, where the text description of the system sharing interface for sharing the news article may refer to the system sharing interface for sharing the map application installation package shown in fig. 5C, and will not be described herein. The contact name (e.g., "Alice") corresponding to the phone number of the electronic device 200 and/or the phone number of the electronic device 200 may be displayed around the device option 6021, and a prompt 6023 (e.g., a text prompt "in a call", etc.) may also be displayed around the device option 6021, where the prompt 6023 is used to prompt the device option 6021 to be a device option corresponding to the electronic device 200 that the electronic device 100 is talking. Optionally, a call flag may also be displayed in the vicinity of the device option 6021 (e.g., in the upper left corner of the device option 6021) that may be used to prompt the device option 6021 to be a device option corresponding to the electronic device 200 that the electronic device 100 is communicating with.
In one example, the electronic device 100 may be engaged in a conversation with multiple contacts at the same time, and the electronic device 100 may display options for the multiple contacts with whom the electronic device 100 is engaged in a conversation in the sharing menu 6020 described above.
The electronic device 100 may receive user input (e.g., a single click) of the device option 6021, in response to which the electronic device 100 may send a data transfer request to the electronic device 200 and display a send window 6030 as shown in fig. 6C.
As shown in fig. 6C, the transmission window 6030 may include description information 6031 of the above-described news article (e.g., "news information APP: [ golf will see Alee first show for gold"), a transmission prompt 6032, and a cancel control 6033. Wherein the send prompt 6032 may be used to prompt the user that the electronic device 100 is currently requesting an open link to send a news article to the electronic device 200 that is talking to the electronic device 100. The transmission prompt 6032 may be any one or more of a text prompt (for example, "request to send news information to Alice, wait for confirmation of reception by the other party)"), a picture prompt, a moving picture prompt, and a video prompt. The cancel control 6033 may be used to trigger the electronic device 100 to cancel the open link to send the news article to the electronic device 200.
As shown in fig. 6D, after the electronic device 100 receives the acknowledgement information transmitted by the electronic device 200, the electronic device 100 may display a transmission window 6040. The confirmation information is used to confirm the picture sent by the receiving electronic device 100. The transmission window 6040 may include description information 6041 and a transmission prompt 6042 of the news article. Optionally, a transmission progress bar 6043 and a cancel control 6044 may be further included in the transmission window 6040. Wherein the send prompt 6042 may be used to prompt the user that the electronic device 100 is currently sending an open link to a news article to the electronic device 200 that is talking to the electronic device 100. The sending prompt 6042 may be any one or more of a text prompt (e.g., "sending news information to Alice"), a picture prompt, a moving picture prompt, and a video prompt. The transmission progress bar 6043 may be used to indicate the progress of the electronic device 100 to transmit the open link of the news article described above to the electronic device 200. The cancel control 6044 may be used to trigger the electronic device 100 to stop sending the open link of the news article described above to the electronic device 200.
In one example, the electronic device 100 may send the open link of the news article to the electronic device 200 directly after receiving the user input of the device option 6021 without the electronic device 200 returning a confirmation message.
Alternatively, after sending the open link of the news article to the electronic device 200, the electronic device 100 may receive and respond to the input of the user by sending a withdrawal indication of the open link of the news article to the electronic device 200. After receiving the withdrawal indication, the electronic device 200 may delete the open link that has received the news article sent by the electronic device 100.
Fig. 6E to fig. 6G are schematic diagrams illustrating interfaces of the electronic device 200 receiving data such as sharing links by the electronic device 100 when the electronic device 200 communicates with the electronic device 100 in the embodiment of the present application.
Illustratively, as shown in FIG. 6E, the electronic device 200 is talking to the electronic device 100 and a talk interface 6050 is displayed. The conversation interface 6050 can refer to the text description of the conversation interface 4100 in the embodiment shown in fig. 4J, which is not described herein.
The electronic device 200 may display the receiving window 6060 after receiving the data transmission request transmitted by the electronic device 100. The data transmission request may include description information of the news article (e.g., "news information APP: [ golf will see Alee first show for gold"). The receiving window 6060 may include description information 6061 of the news article, receiving prompt 6062, rejecting control 6063, receiving control 6064, and the like. Wherein the receive prompt 6062 may be used to prompt the user electronic device 100 to request an open link of a news article to the electronic device 200. The receiving prompt 6062 may be any one or more of a text prompt (e.g., "Daniel wants to share news information with you, is it received. The rejection control 6063 may be used to trigger the electronic device 200 to send rejection information to the electronic device 100, which may be used to instruct the electronic device 100 to cancel the open link sharing the news article with the electronic device 200. The receive control 6064 may be used to trigger the electronic device 200 to send confirmation information to the electronic device 100 that instructs the electronic device 100 to confirm sending of the open link of the news article to the electronic device 200.
The electronic device 200 can receive user input (e.g., a single click) on the receiving control 6064, in response to which the electronic device 200 can send confirmation information to the electronic device 100 and, after sending the confirmation information, receive an open link to a news article sent by the electronic device 100.
As shown in fig. 6F, in the process of the electronic device 200 receiving an open link of a news article transmitted by the electronic device 100, the electronic device 200 may display a receiving window 6070. The receive window 6070 may include a receive prompt 6072. Optionally, a receiving progress bar 6073 and a cancel control 6074 may be further included in the receiving window 6070. Wherein the receipt prompt 6072 may be used to prompt the user that the electronic device 200 is currently receiving an open link to a news article transmitted by the electronic device 100. The type of the receiving prompt 6072 may be any one or more of a text prompt (e.g., "receiving news information that Daniel sends to you"), a picture prompt, a moving picture prompt, and a video prompt. The receipt progress bar 6073 may be used to indicate the progress of the electronic device 200 in receiving an open link of a news article transmitted by the electronic device 100. The cancel control 6074 may be used to trigger the electronic device 200 to cease receiving open links to news articles sent by the electronic device 200.
As shown in fig. 6G, after the electronic device 200 receives the open link of the news article transmitted by the electronic device 100, the electronic device 200 may display a receiving window 6080. The receive window 6080 may include descriptive information 6081 of the news article, one or more functionality controls. Among other things, the one or more functionality controls include opening control 6082 in the news information application, opening control 6083 with a browser, copying to memo control 6084, and so forth. The open control 6082 in the news application may be used to trigger the electronic device 200 to identify an open link in the news application based on the news article, and display an interface including the news article. The open browser control 6083 may be used to trigger the electronic device 200 to display the news article with the browser application based on the open link for the news article. The copy to memo control 6084 may be used to trigger the electronic device 200 to copy the open link of the news article into the memo.
In one example, if the electronic device 200 does not obtain the contact name corresponding to the phone number of the electronic device 100, the sender identifier indicated in the receiving indication 6062 shown in fig. 6E and the receiving indication 6072 shown in fig. 6F may be the phone number of the electronic device 100.
In one example, if the electronic device 200 stores a contact name (e.g., "Daniel") corresponding to the phone number of the electronic device 100, the sender identifier prompted in the receiving prompt 6062 shown in fig. 6E and the receiving prompt 6072 shown in fig. 6F may be the contact name (e.g., "Daniel") of the electronic device 100 and/or the phone number (e.g., "132 XXXXXXXX") of the electronic device 100.
In some application scenarios, the electronic device 100 may display a data sharing control on a call interface when a call (voice call or video call, etc.) with another device (e.g., the electronic device 200) is made and the call interface is displayed. The electronic device 100 may receive and respond to user input to the data sharing control by having the user select specified data on the electronic device 100 for transmission to the talking device via a transmission link between the electronic device 100 and the talking device. In this way, the user can directly trigger to share the data to the opposite party at the call interface in the process of using the electronic device 100 to communicate with the opposite party, so that the user can conveniently share the data on the electronic device 100 to the opposite party, and the experience of sharing the data by the user is improved.
Fig. 7A-7G are schematic diagrams illustrating an interface for sharing data with the electronic device 200 when the electronic device 100 communicates with the electronic device 200 and displays a communication interface in an embodiment of the present application.
For example, as shown in fig. 7A, the electronic device 100 may be talking to the electronic device 200 and displaying a talk interface 7010. The talk interface 7010 may include, among other things, a telephone number 7013 (e.g., "186 XXXXXXXX"), a talk duration 7014 (e.g., "00:15"), and one or more talk feature controls for the electronic device 200. The one or more call functionality controls include, but are not limited to, a sound recording control, a wait control, an add call control, a video call control, a mute control, a contacts control, a dial control, a hang-up control, a show-out control, and the like. The text description of the one or more call functionalities may refer to the embodiment shown in fig. 4A, and will not be repeated herein. The electronic device 100 may hover display the share menu 7020 over the talk interface 7010. Among other things, the sharing menu 7020 may include a talk mode switch control 7021, a location send control 7022, a file sharing control 7023, and so on. The talk module switch control 7021 can be used to trigger the electronic device 100 to switch talk modes with the electronic device 200. The location sending control 7022 may be used to trigger the electronic device 100 to send location information of the electronic device 100 to the electronic device 200. The file sharing control 7023 can be used to trigger the electronic device 100 to send file data stored on the electronic device 100 to the electronic device 200.
The electronic device 100 can receive user input (e.g., a single click) of the file sharing control 7023, in response to which the electronic device 100 can display a file selection interface 7030 as shown in fig. 7B.
As shown in fig. 7B, the top of the file selection interface 7030 may display a status bar 7011. Since the electronic device 100 is engaged in a call with the electronic device 200 and has currently exited the call interface, the electronic device 100 may display a call icon 7015 in the status bar 7011, which call icon 7015 may be used to indicate that the electronic device 100 is currently communicating with other devices. The file selection interface 7030 can include one or more file options (e.g., picture file option 7031, document option and send control, etc.), send control 7035 and delete control 7034, etc. Wherein each file option may correspond to a displayed selection box, for example, a thumbnail 7032 of a picture may be displayed on the picture file option 7031, and the selection box 7032 may be displayed to the right of the picture file option 7032. For example, the document file option may have displayed thereon the name of the document (e.g., "parent book") and the file format (e.g., ".docx"), etc. The delete control 7033 may be used to trigger the electronic device 100 to delete a selected file. The send control may be used to trigger the electronic device 100 to send the selected file to the electronic device 200
The electronic device 100 may receive user input (e.g., a single click) to the selection box 7033, and in response to the input, as shown in fig. 7C, the electronic device 100 may display a selection marker in the selection box 7033, where the selection marker may be used to prompt the user that the picture file corresponding to the picture file option 7031 is currently selected.
After the user selects the picture file corresponding to the picture file option 7031, the electronic device 100 can receive user input (e.g., a single click) of the send control 7035, in response to which the electronic device 100 can send a data transmission request to the electronic device 200 and display a send window 7040 as shown in fig. 7D.
As shown in fig. 7D, the transmission window 7040 may include therein a thumbnail 7041 of the above-described picture file, a transmission hint 7042, and a cancel control 7043. The text description of the transmission window 7040 may refer to the text description of the transmission window 4070 in the embodiment shown in fig. 4G, which is not repeated herein.
As shown in fig. 7E, after the electronic device 100 receives the acknowledgement information transmitted by the electronic device 200, the electronic device 100 may display a transmission window 7050. The confirmation information is used for confirming and receiving the picture file sent by the electronic device 100. The text description of the transmission window 7050 may refer to the text description of the transmission window 4080 in the embodiment shown in fig. 4H, which is not repeated herein.
Alternatively, as shown in fig. 7F, after the electronic device 100 transmits the file selected by the user to the electronic device 200, the electronic device 100 may display a transmission window 7060. Among these, the transmission window 7060 may include a thumbnail 7061 of the above-described transmitted picture file, a transmission hint 7062, a revocation control 7063, and a continuation transmission control 7064. Wherein the revocation control 7063 may be used to trigger the electronic device 100 to send a revocation indication to the electronic device 200. After receiving the withdrawal instruction, the electronic device 200 may delete the above-described picture file that has received the transmission of the electronic device 100. The continue send control 7064 may be used to trigger the electronic device 100 to switch to displaying the file selection interface shown in fig. 7B, so that the user can continue to select a file to send to the electronic device 200.
In one example, the sharing menu 7020 in the embodiment shown in fig. 7A described above may remain in a fixed position in floating display on the conversation interface 7010. For example, the sharing menu 7020 may remain hovered over the top of the conversation interface 7010 at all times.
In one example, the sharing menu 7020 in the embodiment shown in fig. 7A may also be displayed in a floating manner at the uppermost layer of all interfaces. For example, the sharing menu 7020 may remain displayed in suspension at the uppermost layer of the other application interfaces when the electronic device 100 is currently switching from the talk interface 7010 to displaying the other application interfaces.
In one example, the display position of the sharing menu 7020 in the embodiment shown in fig. 7A described above may be adjusted according to the input of the user.
In one example, the call mode switch control 7021, the location sending control 7022, and the file sharing control 7023 may be displayed on a call interface as call functionality controls.
In one example, the sharing menu 7020 in the embodiment shown in fig. 7A described above may be displayed after the data transmission link between the electronic device 100 and the electronic device 200 is established. Or,
in the embodiment shown in fig. 7A, the file sharing control 7023 in the sharing menu 7020 may be enabled after the data transmission link between the electronic device 100 and the electronic device 200 is established, and in the enabled state, the file sharing control 7023 may trigger the electronic device 100 to display the file selection interface in response to the input of the user. The file sharing control 7023 is in a disabled state before a data transmission link between the electronic device 100 and the electronic device 200 is established, and when in the disabled state, the file sharing control 7023 may not trigger the electronic device 100 to display the file selection interface. The file sharing control 7023 may be displayed in a different color in the non-enabled state than in the enabled state, for example, the display color in the non-enabled state may be gray, and the display color in the enabled state may be white or green.
In one example, the sharing menu 7020 in the embodiment shown in fig. 7A may further include a phone number corresponding to the electronic device 200 and/or a contact name (e.g., alice) corresponding to the phone number of the electronic device 200 and/or a contact avatar corresponding to the phone number of the electronic device 200, and so on.
For example, as shown in fig. 7G, the electronic device 100 may hover display the share menu 7070 over the talk interface 7010. The sharing menu 7070 may include a contact name (e.g., alice) corresponding to a phone number of the electronic device 200, a contact avatar 7071 corresponding to a phone number of the electronic device 200, an exit control 7072, a call mode switching control 7073, a location sending control 7074, a file sharing control 7075, and so on. The text descriptions of the conversation mode switch control 7073, the position sending control 7074, and the file sharing control 7075 may refer to the text description of the sharing menu 7020 in the embodiment shown in fig. 7A, which is not repeated herein. The electronic device 100 may receive and adjust the display position of the sharing menu 7070 in response to a user input (e.g., drag) to the sharing menu 7070.
As shown in fig. 7H, when the electronic device 100 receives user input (e.g., a single click) of the exit control 7072, the electronic device 100 can hide the sharing menu 7070 in response to the input. After the electronic device 100 hides the sharing menu 7070, the electronic device 100 may display a marker button 7076. The marker button 7076 can be used to prompt the triggering electronic device 100 to redisplay the sharing menu 7070. The marker button 7076 may be displayed at the edge of the touch screen to save display space of the touch screen. Alternatively, the electronic device 100 may hide the sharing menu 7070 and display the marker button 7076 when the sharing menu 7070 is moved to the touch screen edge or moved to the touch screen edge by the user to stay for a certain time (e.g., 1 second). The display position of the marker button 7076 can also be adjusted based on the input of the user.
Optionally, as shown in fig. 7I, the tag 7076 may also display thereon a phone number of the electronic device 200 and/or a contact name corresponding to the phone number of the electronic device 200, and so on.
In some application scenarios, the electronic device 100 may display one or more options of the nearest contact in a sharing interface (system sharing interface or in-application sharing interface) or sharing window (system sharing window or in-application sharing window) of the specified data when the user triggers sharing of the specified data after interaction (e.g., talking, texting, or instant messaging application of private messages, praying/commenting on content sent by contacts in a friend circle, etc.) with a contact (e.g., contact "Alice" corresponding to the electronic device 200), and the electronic device 100 may transmit the specified data to a device of the specified contact after the user selects to share the specified data to the specified contact in the one or more nearest contact in the sharing interface or sharing window. Therefore, the user can share the data to the nearest contact person, and the experience of the user for sharing the data is improved.
Fig. 8A-8B are schematic diagrams illustrating an interface for sharing data to a recently interacted contact in a system sharing interface according to an embodiment of the application.
For example, as shown in fig. 8A, the electronic device 100 may display a picture presentation interface 8010. The picture display interface 8010 includes a picture 8011 and a menu 8012. The menu 8012 includes a share button 8013, a collect button, an edit button, a delete button, and a more button. For the text description of the menu 8012, reference may be made to the menu 4052 in the embodiment shown in fig. 4E, which is not described herein.
The electronic device 100 may receive user input (e.g., a single click) of the share button 8013, in response to which the electronic device 100 may display a system share interface 8020 as shown in fig. 8B.
As shown in fig. 8B, the system sharing interface 8020 can include an area 8021, an area 8022, and an area 8023. Wherein:
the region 8021 may be used to display one or more pictures or videos in a gallery, which may include user-selected pictures or videos therein. Wherein the selected picture may have a marker displayed thereon, the marker being used to indicate that its corresponding picture is selected (i.e., the picture has been selected by the user). The picture or video screen displayed in this area 8021 may be a thumbnail. The artwork corresponding to the picture or video frame displayed in region 8021 may be stored on electronic device 100. The area 8022 may include options (e.g., option 8024 and option 8027, etc.) corresponding to one or more recently interacted contacts of the electronic device 100 that have interacted recently (e.g., interacted for the last half hour). The head portraits of the latest contacts can be displayed on the options corresponding to the latest interactive contacts, and the names of the most contacts can be displayed around the options corresponding to the latest interactive contacts. A prompt (e.g., a text prompt "recent contact") may also be displayed around the recent interactive contact, where the prompt is used to prompt the user that the option is that of the recent contact. Optionally, an application mark may be displayed around the option corresponding to the recent contact, where the application mark may be used to represent the application to which the recent contact belongs. For example, option 8024 corresponds to contact "Alice" in a phone application on electronic device 100, contact name "Alice" and reminder 8025 (e.g., "recent contact") may be displayed under option 8024, and phone application tab 8026 may be displayed in the upper left corner of option 8024. Option 8027 corresponds to contact "Kiki" in the chat application on electronic device 100, and contact name "Kiki" and reminder 8028 (e.g., "recent contact") may be displayed below option 8027, and chat application tab 8029 may be displayed in the upper left corner of option 8027. The area 8022 may also have displayed therein nearby device options found by the electronic device 100, e.g., the electronic device 100 may display device options for nearby devices in the area 8022 after searching for nearby devices (e.g., a "HUAWEI P50" option). The area 8023 displays one or more service options (e.g., mail icon, browser icon, information icon, WLAN direct icon, etc.). The text description of the region 4064 may refer to the text description of the region 3023 in the embodiment shown in fig. 3B, which is not repeated herein.
The electronic device 100 may receive user input (e.g., a single click) on the option 8024, in response to which the electronic device 100 may send the picture selected by the user to the electronic device 200 corresponding to the most recently interacted with contact "Alice".
In one example, the electronic device 100 may send a data transmission request to the electronic device 200 before sending the user-selected data to the electronic device 200 corresponding to the most recently interacted contact "Alice". After the electronic device 100 receives the confirmation information sent by the electronic device 200, the electronic device 100 sends the data selected by the user to the electronic device 200 corresponding to the latest interactive contact "Alice". In the process of sending the electronic device 100 to the electronic device 200, the sending window displayed on the electronic device 100 may refer to the embodiment shown in fig. 4G to fig. 4I, and the receiving window displayed on the electronic device 200 may refer to the embodiment shown in fig. 4K to fig. 4M, which are not described herein.
In one example, when a contact in the instant messaging application of the most recently interacted contact of the electronic device 100, the electronic device 100 may send the content selected by the user to the electronic device 200 corresponding to the most recently interacted contact through the instant messaging application and the server of the instant messaging application. The electronic device 200 is provided with the instant messaging application, and logs in to the account of the most recently interacted contact.
8C-8D are diagrams illustrating interfaces for sharing data to recently interacted contacts within an application in accordance with embodiments of the application.
For example, as shown in fig. 8C, the electronic device 100 may display a news information-application interface 8030. The news information-application interface 8030 may include titles of news articles (e.g., "golf will see Alee for gold"), content of news articles (e.g., "yesterday, golf will see Alee for gold on golf tournament, with the total score of four rounds 267 bars), names of publishers of news articles (e.g.," news bulletins "), and avatars, more controls 8031. The text description of the news application interface 8030 may refer to the text description of the news application interface 6010 in the embodiment shown in fig. 6A, which is not repeated herein.
The electronic device 100 may receive user input (e.g., a single click) of the further control 8031, in response to which the electronic device 100 may display a share menu window 8040 as shown in fig. 6B.
As shown in fig. 8D, the sharing menu window 8040 may include one or more options for sharing services. The one or more sharing service options may include, among other things, options corresponding to one or more recently interacted contacts of the electronic device 100 that have interacted recently (e.g., interacted last half an hour), sharing options within the news information application (e.g., private mail option and forwarding option, etc.), and/or sharing options of other applications (e.g., friend circle option, chat application option, web application option, etc.), and/or system sharing option 8047. Other functionality controls (e.g., favorites controls, linked copy controls, etc.) may also be included in the sharing menu 8040. The system sharing option 8047 may be used to trigger the electronic device 100 to invoke a system sharing function, and display a system sharing interface to share the news article, where the text description of the system sharing interface for sharing the news article may refer to the system sharing interface for sharing the picture shown in fig. 8B, and will not be described herein. The head portraits of the latest contacts can be displayed on the options corresponding to the latest interactive contacts, and the names of the most contacts can be displayed around the options corresponding to the latest interactive contacts. A prompt (e.g., a text prompt "recent contact") may also be displayed around the recent interactive contact, where the prompt is used to prompt the user that the option is that of the recent contact. Optionally, an application mark may be displayed around the option corresponding to the recent contact, where the application mark may be used to represent the application to which the recent contact belongs. For example, option 8041 corresponds to contact "Alice" in a phone application on electronic device 100, contact name "Alice" and reminder information 8042 (e.g., "recent contact") may be displayed under option 8041, and phone application tab 8043 may be displayed in the upper left corner of option 8041. Option 8044 corresponds to contact "Kiki" in the chat application on electronic device 100, and contact name "Kiki" and reminder 8045 (e.g., "recent contact") can be displayed under option 8044, and chat application tab 8046 can be displayed in the upper left corner of option 8044.
The electronic device 100 may receive user input (e.g., a single click) of the option 8041, in response to which the electronic device 100 may send an open link of the news article selected by the user to the electronic device 200 corresponding to the most recently interacted with contact "Alice".
In this embodiment of the present application, the display form of the content in the sharing interface or the sharing interface in the application is not limited, and may be presented in the form of an interface or may be presented in the form of a window or a menu. For example, the content in the system sharing interface may be referred to as a system sharing interface when presented in an interface form, a system sharing window, a system sharing menu when presented in a window or menu form, and so on. For another example, the content in the intra-application sharing interface may be referred to as an intra-application sharing interface when presented in the form of an interface, a sharing menu window, a sharing menu, an intra-application sharing window, and so on when the content in the intra-application sharing interface is presented in the form of a window or menu.
In the embodiment of the present application, the type of the user input is not limited, and the above embodiment only lists a preferred type of the user input, and in a specific implementation, the type of the user input may be any one or a combination of multiple operations as follows: single click, double click, long press, sliding, dragging, multi-finger long press, multi-finger sliding, finger joint touching, finger joint sliding, and the like.
A communication system 90 provided in an embodiment of the present application is described below.
Fig. 9 shows a schematic architecture of a communication system 90 provided in an embodiment of the present application.
As shown in fig. 9, the communication system 90 may include an electronic device 100 and an electronic device 200. Wherein the electronic device 100 can communicate with the electronic device 200 through a main link. The call between the electronic device 100 and the electronic device 200 may include, but is not limited to, an operator call and/or an OTT call. The call types between the electronic device 100 and the electronic device 200 may be further classified into a voice call, a video call, a conference call, a color ring, and the like. The electronic device 100 may share content data to the electronic device 200 via a primary link, or may share content data to the electronic device 200 via a secondary link. For example, electronic device 100 may communicate with electronic device 200 over an operator communication link, and electronic device 100 may share content data to electronic device 200 over the operator communication link.
In one example, electronic device 100 may communicate with electronic device 200 over an operator communication link, and electronic device 100 may share content data to electronic device 200 over an auxiliary link.
In one example, electronic device 100 may communicate with electronic device 200 over an operator communication link, and electronic device 100 may share content data to electronic device 200 over the operator communication link and the auxiliary link. Wherein, part of the shared content data can walk on the operator communication link, and the other part can walk on the auxiliary link.
The auxiliary link may be a data transmission link established through a near field communication technology, for example, a data transmission link established through Wi-Fi, BT, end-to-end (D2D), vehicle-to-outside (V2X), and so on. The auxiliary link may also be a data transmission link established by far-field communication technology, such as a data transmission link established by a primary/secondary card cellular communication (e.g., 2G/3G/4G/5G/6G) technology, satellite communication technology, wi-Fi, etc. communication technology. The auxiliary link may be a link established by any of the above-mentioned types of communication technologies, or may be a plurality of links established by a plurality of the same or different communication technologies.
The data shared by the electronic device 100 and the electronic device 200 may be local to the electronic device (e.g., pictures, video, audio, contact information, application APK, PPT/PDF/Word/Excel documents, etc.), or may be content in a third party application (e.g., pictures, video, audio, news articles, location information, links, etc.).
The following describes a data sharing method provided in the embodiments of the present application.
Fig. 10 illustrates a data sharing method provided in an embodiment of the present application.
As shown in fig. 10, the method may include the steps of:
s1001, the electronic device 100 receives a sharing input of the user triggering the sharing of the designated data.
The specified data may be file class data, text class data, link class data, paste board class data, or the like. Wherein: 1. the file class data may include documents in the form of pictures, video, audio, DOCX/PPTX/PDF/XLS, etc., APK/installation packages for applications, two-dimensional codes for contacts, vCard for contacts, location information in the form of pictures/rich media, etc. 2. The text class data may include the text of the contact, textual location information, and so forth. 3. The link class data may include: links to content (e.g., pictures, video, audio, news, articles, etc.) of a local application or a third party application, and view links to location information. 4. The clipboard class data may include currently selected content, or content or objects on the clipboard. The specified data may also be other types of data content that may be shared to other devices, which is not limited in the embodiments of the present application.
For example, in the embodiments shown in fig. 4A-4O, fig. 5A-5Y, fig. 8A-8B, or the like, the operation type of the sharing input is not limited in the embodiments of the present application, and may be, for example, a single click, a long press, a sliding, a double click, or the like. For details, reference may be made to the foregoing embodiments shown in fig. 4A-4O, or fig. 5A-5Y, or fig. 8A-8B, etc., and further description is omitted herein.
S1002, the electronic device 100 determines whether the electronic device 100 is in a call.
The call may include, but is not limited to, an operator call and/or an OTT call (e.g., a chat voice phone or a video phone), among others. The type of call may also be classified as a voice call, a video call, a conference call, a color ring, and the like.
S1003, when the electronic device 100 is in a call, the electronic device 100 obtains the information of the current call contact.
If the call is an operator call, the information of the current call contact may include one or more of the following: phone number of the currently talking contact, contact name, contact avatar, etc. If OTT calls during the above call, the information of the current call contact may include one or more of the following: contact account ID, contact nickname, contact avatar, etc.
S1004, the electronic device 100 establishes a data transmission link with the electronic device 200 of the current call contact.
Specifically, the process of establishing the data transmission link between the electronic device 100 and the electronic device 200 may refer to the following embodiments, which are not described herein.
S1005, the electronic device 100 determines whether the data transmission link is established with the electronic device 200 of the current call contact.
S1006, after the electronic device 100 establishes a data transmission link with the electronic device 200, the electronic device 100 may display the option of the current call contact on the system sharing interface.
In one example, when the data transfer link is fully or partially running the primary link of the current call, the electronic device 100 may immediately display the options of the current call contact in the system sharing interface.
In one example, when the data transfer link is fully walked through the newly established auxiliary link (including one or more links), the electronic device 100 may display the options of the current conversation contact in the system sharing interface after at least one of the auxiliary links is established.
In an example, the timing of establishing the data transmission link between the electronic device 100 and the electronic device 200 of the current conversation contact may be before the electronic device 100 receives the sharing input, or may be after the sharing input is received.
Wherein:
1. when the electronic device 100 and the electronic device 200 establish the data transmission link before receiving the sharing input, the electronic device 100 may establish the data transmission link with the electronic device 200. After the system sharing interface is displayed in response to the sharing input, the electronic device 100 may display the system sharing interface, and display the option of the current call contact in the system sharing interface to establish the auxiliary link, and the electronic device 100 may update the option of the current call contact in the system sharing interface.
2. When the opportunity of establishing the data transmission link between the electronic device 100 and the electronic device 200 is after receiving the sharing input, the electronic device 100 may display a system sharing interface in response to the sharing input, where the system sharing interface does not include the option of the current call contact, and after the data transmission link between the electronic device 100 and the electronic device 200 is established, the electronic device 100 may update the option of displaying the current call contact in the system sharing interface.
3. The electronic device 100 may first respond to the sharing input to display a system sharing interface and display options of the current call contact in the system sharing interface. Upon receiving a selection operation of an option of the current conversation contact by the user, the electronic device 100 may establish a data transmission link with the electronic device 200 of the current conversation contact in response to the selection operation. After the data transmission link is established, the electronic device 100 may transmit the specified data to the electronic device 200 based on the data transmission link.
For the text description of the system sharing interface and the options of the current call contact, reference may be made to the embodiments shown in fig. 4A-4O, or fig. 5A-5Y or fig. 8A-8B, which are not described herein.
S1007, the electronic device 100 receives a selection operation of an option of the current call contact by the user.
S1008, the electronic device 100 acquires the designation data in response to the selection operation.
When the specified data is file class data, the electronic device 100 may perform an opening and reading operation on the file class data through an Application Programming Interface (API) of a system file operation. For example, the file class data may be opened by the function "fopen" and the file content may be read by the function "fread". The reading mode can be text reading or binary stream reading. When the specified data is text, link, or data on a sticker, the electronic device 100 may also use a similar system interface function or an interface of a three-party APP to read the data.
S1009, the electronic device 100 sends the specified data to the electronic device 200 of the current call contact through the data transmission link.
Specifically, in the process of sending the specified data to the electronic device 200 by the electronic device 100, the displayed interface change may refer to the embodiments shown in fig. 4A-4O, or fig. 5A-5Y, or fig. 8A-8B, etc., which are not described herein.
S1010, when the electronic device 100 is not in communication, the electronic device 100 may obtain information of one or more recently interacted contacts.
The most recently interacted contact may be a contact that the user of the electronic device 100 interacted with a corresponding contact of the electronic device 100 within a specified time range (e.g., within the most recent 1 hour).
In an embodiment of the present application, the interaction between the electronic device 100 and the electronic device 200 may include: operator calls, receives/sends text messages, interactions within social applications, etc. The interaction in the social application can include OTT call, receiving/sending private message, praying/praying, commenting/praying, focusing/focusing, collecting/collecting, and the like, and the interaction social application can be used for live broadcasting of the counterpart, friend circle text content, and the like. The social applications include, but are not limited to, instant messaging applications (e.g., smooth connection applications, etc.), video live applications (e.g., hua as video applications, etc.), music play applications (e.g., hua as music applications, etc.), and the like, with multi-user social attributes.
In one example, the most recently interacted contact may also be a contact that the user of the electronic device 100 interacted with in one or more of the specified applications within a specified time frame.
In one example, the electronic device 100 may also determine a specified number (e.g., 3) of the most recently interacted contacts with the most recent interaction time, in a near-to-far order of interaction times.
The information of the most recently interacted contact may include one or more of: the phone number of the most recently interacted contact, the application ID of the most recently interacted contact, the account ID of the most recently interacted contact, the nickname of the most recently interacted contact, the avatar of the most recently interacted contact, and so forth.
S1011, the electronic device 100 displays one or more options of the most recently interacted contact on the system sharing interface.
For the option of displaying one or more recently interacted contacts in the system sharing interface, reference may be made to the system sharing interface 8020 in the embodiment shown in fig. 8B, which is not described herein.
After the electronic device 100 receives the user's selection of the option of the one or more recently interacted contacts to designate the recently interacted contact, the electronic device 100 may send the designated data to the electronic device 200 corresponding to the designated recently interacted contact over the data transmission link.
Specifically, in the process of sending the specified data to the electronic device 200 by the electronic device 100, the displayed interface change may refer to the embodiments shown in fig. 4A-4O, or fig. 5A-5Y or fig. 8A-8B, which are not described herein.
Alternatively, when the electronic device 100 determines that the electronic device 200 of the current calling contact does not establish the data transmission link, the electronic device 100 may execute the above steps S1010 and S1011.
In some embodiments, the electronic device 100 may also display the options of the current conversation contact and the options of the most recently interacted contact simultaneously in the system sharing interface. When the user selects the option of the current call contact in the system sharing interface, the electronic device 100 may share the specified data to the device of the current call contact, and when the user selects the option of the latest interactive contact in the system sharing interface, the electronic device 100 may share the specified data to the device of the latest interactive contact.
The following describes a data sharing method provided in another embodiment of the present application.
Fig. 11 illustrates a data sharing method provided in another embodiment of the present application.
As shown in fig. 11, the method may include:
s1101, the electronic device 100 receives an input that the user triggers to share the specified data in the specified application.
The specified data may be file class data, text class data, link class data, paste board class data, or the like. Wherein: 1. the file class data may include documents in the form of pictures, video, audio, DOCX/PPTX/PDF/XLS, etc., APK/installation packages for applications, two-dimensional codes for contacts, vCard for contacts, location information in the form of pictures/rich media, etc. 2. The text class data may include the text of the contact, textual location information, and so forth. 3. The link class data may include: links to content (e.g., pictures, video, audio, news, articles, etc.) of a local application or a third party application, and view links to location information. 4. The clipboard class data may include currently selected content, or content or objects on the clipboard. The specified data may also be other types of data content that may be shared to other devices, which is not limited in the embodiments of the present application.
For example, in the embodiments shown in fig. 6A to 6G, or fig. 8C to 8D, etc. described above, the input of the specified data in the sharing specified application may be triggered, and the operation type of the sharing input is not limited in this embodiment of the present application, and may be, for example, a single click, a long press, a sliding, a double click, etc. For details, reference may be made to the embodiments shown in fig. 6A to 6G, or fig. 8C to 8D, etc. described above, and details are not repeated here.
S1102, the electronic device 100 determines whether to enter system sharing.
S1103, when the electronic device 100 does not enter the system sharing, the electronic device 100 determines whether it is in a call.
The call may include, but is not limited to, an operator call and/or an OTT call (e.g., a voice phone or a video phone of a chat application), among others. The type of call may also be classified as a voice call, a video call, a conference call, a color ring, and the like.
S1104, when the electronic device 100 is in a call, the electronic device 100 may acquire information of the current call contact.
If the call is an operator call, the information of the current call contact may include one or more of the following: phone number of the currently talking contact, contact name, contact avatar, etc. If OTT calls during the above call, the information of the current call contact may include one or more of the following: contact account ID, contact nickname, contact avatar, etc.
S1105, the electronic device 100 may establish a data transmission link with the electronic device 200 of the current conversation contact.
Specifically, the process of establishing the data transmission link between the electronic device 100 and the electronic device 200 may refer to the following embodiments, which are not described herein.
S1106, the electronic device 100 may determine whether the data transmission link is established with the electronic device 200 of the current call contact.
S1107, when the electronic device 100 and the electronic device 200 have established a data transmission link, the electronic device 100 may display the option of the current call contact in the application sharing interface.
In one example, when the data transfer link is fully or partially running the primary link of the current call, the electronic device 100 may immediately display the options of the current call contact in the in-application sharing interface.
In one example, when the data transfer link is fully walked through the newly established auxiliary link (including one or more links), the electronic device 100 may display an option of the current conversation contact in the intra-application sharing interface after at least one of the auxiliary links is established.
In an example, when the electronic device 100 and the electronic device 200 of the current call contact establish a data transmission link, the electronic device 100 may be before receiving the input of the specified data in the trigger sharing specified application, or may be after receiving the input of the specified data in the trigger sharing specified application. Wherein:
1. when the timing of the electronic device 100 to establish the data transmission link with the electronic device 200 is before receiving the input of the specified data in the above-mentioned trigger sharing specified application, the electronic device 100 may establish the data transmission link with the electronic device 200. After the in-application sharing interface is displayed in response to the input of the specified data in the triggered sharing specified application, the electronic device 100 may display the in-application sharing interface, and the options of the current call contact person displayed in the in-application sharing interface establish an auxiliary link, and the electronic device 100 may update the options of the current call contact person displayed in the system sharing interface.
2. When the electronic device 100 and the electronic device 200 establish the data transmission link after receiving the input of the specified data in the trigger sharing specified application, the electronic device 100 may display the intra-application sharing interface in response to the input of the specified data in the trigger sharing specified application, where the intra-application sharing interface does not include the option of the current call contact, and after the electronic device 100 and the electronic device 200 establish the data transmission link, the electronic device 100 may update the option of displaying the current call contact in the intra-application sharing interface.
3. The electronic device 100 may first respond to the above-mentioned input of the specified data in the trigger sharing specified application, display an in-application sharing interface, and display an option of the current call contact in the in-application sharing interface. Upon receiving a selection operation of an option of the current conversation contact by the user, the electronic device 100 may establish a data transmission link with the electronic device 200 of the current conversation contact in response to the selection operation. After the data transmission link is established, the electronic device 100 may transmit the specified data to the electronic device 200 based on the data transmission link.
For the text description of the sharing interface in the application and the options of the current call contact, reference may be made to the sharing menu or the sharing menu window in the foregoing embodiments of fig. 6A to 6G, or fig. 8C to 8D, etc., which are not described herein again.
S1108, the electronic device 100 may receive a selection operation of an option of the current conversation contact by the user.
S1109, in response to the selection operation, the electronic apparatus 100 may acquire the designation data.
When the specified data is file class data, the electronic device 100 may perform an opening and reading operation on the file class data through an Application Programming Interface (API) of a system file operation. For example, the file class data may be opened by the function "fopen" and the file content may be read by the function "fread". The reading mode can be text reading or binary stream reading. When the specified data is text, link, or data on a sticker, the electronic device 100 may also use a similar system interface function or an interface of a three-party APP to read the data.
S1110, the electronic device 100 may send the specified data to the electronic device 200 of the current conversation contact.
Specifically, in the process of sending the specified data to the electronic device 200 by the electronic device 100, the displayed interface changes may refer to the foregoing embodiments of fig. 6A-6G, or fig. 8C-8D, etc., which are not described herein again.
S1111, when the electronic device 100 is not in communication, the electronic device 100 may acquire information of the most recently interacted contact.
In an embodiment of the present application, the interaction between the electronic device 100 and the electronic device 200 may include: operator calls, receives/sends text messages, interactions within social applications, etc. The interaction in the social application can include OTT call, receiving/sending private message, praying/praying, commenting/praying, focusing/focusing, collecting/collecting, and the like, and the interaction social application can be used for live broadcasting of the counterpart, friend circle text content, and the like. The social applications include, but are not limited to, instant messaging applications (e.g., smooth connection applications, etc.), video live applications (e.g., hua as video applications, etc.), music play applications (e.g., hua as music applications, etc.), and the like, with multi-user social attributes.
In one example, the most recently interacted contact may also be a contact that the user of the electronic device 100 interacted with in one or more of the specified applications within a specified time frame.
In one example, the electronic device 100 may also determine a specified number (e.g., 3) of the most recently interacted contacts with the most recent interaction time, in a near-to-far order of interaction times.
The information of the most recently interacted contact may include one or more of: the phone number of the most recently interacted contact, the application ID of the most recently interacted contact, the account ID of the most recently interacted contact, the nickname of the most recently interacted contact, the avatar of the most recently interacted contact, and so forth.
S1112, the electronic device 100 may display the most recently interacted contact within the application sharing an interface.
For the option of displaying one or more recently interacted contacts in the intra-application sharing interface, reference may be made to the sharing menu window 8040 in the embodiment shown in fig. 8D, which is not described herein.
After the electronic device 100 receives the user's selection of the option of the one or more recently interacted contacts to designate the recently interacted contact, the electronic device 100 may send the designated data to the electronic device 200 corresponding to the designated recently interacted contact over the data transmission link.
Specifically, in the process of sending the specified data to the electronic device 200 by the electronic device 100, the displayed interface changes may refer to the foregoing embodiments of fig. 6A-6G, or fig. 8C-8D, etc., which are not described herein again.
Alternatively, when the electronic device 100 determines that the electronic device 200 of the current calling contact does not establish the data transmission link, the electronic device 100 may perform the above steps S1111 and S1112.
S1113, when the electronic device 100 determines to enter system sharing, the electronic device 100 may execute the system sharing process.
The system sharing process may refer to steps S1001 to S1011 in the embodiment shown in fig. 10, which are not described herein.
The process by which the electronic device 100 obtains information of the most recently interacted contact in the embodiments of the application is described below.
Fig. 12A-12C schematically illustrate a process for obtaining information of a recently interacted contact in an embodiment of the application.
The electronic device 100 may include a system sharing module, an interactive application. The system sharing module may be configured to provide a function of sharing data by the electronic device 100. The interactive applications include applications that may include systems onboard the electronic device 100 (e.g., dialing applications, short message applications (also referred to as messaging applications), etc.), or social applications that may be non-systems onboard, including but not limited to instant messaging applications (e.g., smooth connection applications, etc.), video live applications (e.g., hua as video applications, etc.), music play applications (e.g., hua as music applications, etc.), etc. applications with multi-user interactions.
Wherein:
1. As shown in fig. 12A, the interactive application may provide a call interface to a system sharing module, which may call an acquisition function to acquire information of a specified number of recent interactive contacts in the interactive application. Wherein the interactive application may return information for a specified number of recently interacted contacts. Wherein the recently interacted contact information may comprise one or more of: an interactive application ID (app ID), a user ID (useid), a phone number (phone number), a portrait (portrait), a nickname (nickname), an interaction time (time), and the like.
For example, the system sharing module may obtain information of a specified number of most recently interacted contacts in the interactive application by calling an obtaining function "get_last_interaction (app ID, count)", where the calling function "get_last_interaction (app ID, count)", carries an ID ("app ID") of the interactive application and a number of most recently interacted contacts ("count").
After receiving a call request sent by the system sharing module through the get_last_interaction function, the interactive application can return information of a specified number of latest interactive contacts to the system sharing module.
The system sharing module can take the latest interactive contact as an object to be shared, and display options of the latest interactive contact in a system sharing interface.
In an example, when the electronic device 100 has a plurality of interactive applications, the electronic device 100 may call the acquisition function to acquire information of one or more recent interactive contacts in each interactive application at the same time or sequentially, then screen out the information of one or more recent interactive contacts in the plurality of interactive applications, as an object to be shared, of the recent interactive contacts with the latest time specified number, and display options of the recent interactive contacts in the system sharing interface.
In one example, the electronic device 100 may periodically (e.g., every 3 minutes) call an acquisition function to acquire information of the most recently interacted contact in the interacted application.
2. As shown in fig. 12B, the system sharing module may provide a registration interface for the interactive application to register information of one or more interactive contacts. The interactive application may actively register information of one or more interactive contacts with the system sharing module by calling a registration function in a provisioning (kit) manner.
For example, the interactive application may register information of the interactive contacts within the interactive application with the system sharing module by calling a registration function "register interaction (app id, useid, portrait, nickname, status)". Wherein the recently interacted contact information may comprise one or more of: an interactive application ID (app ID), a user ID (useid), a avatar (portrait), a nickname (nickname), a status (status), and so on. The interactive application can register information of the interactive contact person to the system sharing module by calling a registration function when the interaction starts and the interaction ends. The state may include a start of interaction (start) or an end of interaction (end). The system sharing module can screen one or more recent interactive contacts from the interactive contacts registered by the interactive applications as objects to be shared, and display the objects in the system sharing interface.
In one example, the interactive application may register the information of the interactive contact to the system sharing module by invoking the registration function only at the end of the interaction, at which point the most recent interactive contact information may include one or more of the following: interactive application ID (app ID), user ID (useid), avatar (portrait), nickname (nickname), etc. The system sharing module can screen one or more recent interactive contacts from the interactive contacts registered by the interactive applications as objects to be shared, and display the objects in the system sharing interface.
3. As shown in fig. 12C, after the system sharing module obtains the information of one or more recently interacted contacts in the manner shown in fig. 12A or fig. 12B, the system sharing module may provide a call interface to a sharing application, and the sharing application may call an obtaining function to obtain the information of the specified number of recently interacted contacts from the system sharing module. The system sharing module can return information of the designated number of the latest interactive contacts to the sharing application. The sharing application may be an application having an intra-application sharing function in the above embodiment. Such as news information-like applications, map applications, and the like.
For example, the sharing application may obtain information of a specified number of recently interacted contacts from the system sharing module by calling an acquisition function "get_last_interaction (app ID, count)", where the call function "get_last_interaction (app ID, count)" carries an ID of the interacted application and a number of recently interacted contacts ("count").
The system sharing module may return information of a specified number of recently interacted contacts to the sharing application after receiving a call request of the sharing application by acquiring a function "get_last_interaction (app id)". The sharing application can screen out one or more recent interactive contacts from the specified number of recent interactive contacts as objects to be shared, and display the objects in the intra-application sharing interface (or called an intra-application sharing window).
In one example, the sharing application module may set an ID ("app ID") of the interactive application carried in the call function "get_last_interaction" to a full selected value (e.g., "0"), and the system sharing module may send information of a specified number of latest interactive contacts in all types of applications to the sharing application when receiving that the value of the "app ID" is the full selected value (e.g., "0"). The sharing application can screen out one or more recent interactive contacts from the designated number of the recent interactive contacts in all types of applications, and the one or more recent interactive contacts are used as objects to be shared and displayed in an intra-application sharing interface (or called an intra-application sharing window).
A communication system architecture provided in an embodiment of the present application is described below.
Fig. 13A illustrates an architecture diagram of a communication system 1300 provided in an embodiment of the present application.
As shown in fig. 13A, the communication system 1300 may include an electronic device 100, an electronic device 200, and a cloud server 300.
Wherein:
1. the electronic device 100 may include an Application Processor (AP) 1310, a high-fidelity (HiFi) module 1320, and a modem (modem) 1330.
One or more functional modules may be included in the application processor 1310, which may include a fusion call (fusion call) module 1311, a network address translation service (NatService) module 1312. The fusion call module 1311 may be configured to perform user-level authentication with the account server 1371 in the cloud server 300 to obtain an Access Token (AT). The fusion call module 1311 may also be used to request the service cloud server 1380 to authenticate the AT, generate point-to-point (P2P Token), exchange of session identification (session id) for NAT traversal, push (push) service interfacing, and so on. The NatService module 1312 may be configured to interact with a Network Address Translation (NAT) traversal cloud server 1390 to complete NAT traversal between the electronic device 100 and the electronic device 200 and relay link establishment between the electronic device 100 and the electronic device 200.
In one example, the fusion call module 1311 may also be used to request the business cloud server 1380 to device-level authenticate the electronic device 100, e.g., verify a device certificate of the electronic device 100.
In one example, the fusion call module 1311 may be further configured to interact with the HiFi module 1320 to perform operations such as intercepting, merging, and/or replacing the RTP packets, so as to send the data content selected by the user to the electronic device 200 through the main link of the call.
The role of the fusion call module 1311 may also include, but is not limited to, the following functions: is responsible for invoking the network address service module to manage the auxiliary link (e.g., the establishment and release of the auxiliary link). Is responsible for reading shared content data (e.g., file data, location information, open links, calendars, application installation packages, etc.). Takes charge of distributing packets, transmitting, unpacking, etc. of sharing content data. Is responsible for sharing the writing and storage of content data. Responsible for related user experience (UX) interface displays, including, for example, but not limited to: the system shares the interface (including the options of the contact being interacted with or the options of the contact being interacted with recently), the options of the contact being interacted with or the options of the contact being interacted with recently in the application sharing interface/window, the sending window, the receiving window, the prompt information, the buttons/controls, and the like.
The NatService module 1312 may be used to enable establishment, release, etc. of the auxiliary link.
The HiFi module 1320 may be configured to implement transmission of real-time call data via real-time transport protocol (RTP)/real-time transport control protocol (RTCP).
A routing internet protocol (internet protocol, IP) multimedia system (IP multimedia subsystem, IMS) adapter (IMSA) and an IMS protocol stack may be included in the modem 1330. IMSA may be used to enable protocol data transfer between RTP/RTCP protocol and IMS protocol stacks. The modem 1330 may be used to implement an IMS call with the electronic device 200 over a main link on the carrier network based on the IMS protocol stack. The IMS call may include, but is not limited to, a VoLTE, viLTE, voNR, viNR, voWiFi, viWiFi, EPS-Fallback type call, among others.
2. The electronic device 200 may include an application processor 1340, a HiFi module 1350, and a modem 1360.
One or more functional modules may be included in the application processor 1340, which may include a fusion call module 1341, a NatService module 1342. The fusion call module 1341 is configured to perform user-level authentication with the account server 1371 in the cloud server 300 to obtain an Access Token (AT). The fusion call module 1341 is further operable to request the service cloud server 1380 to authenticate the AT, generate P2P Token, exchange session ids traversed by the NAT, push service interfacing, etc. The NatService module 1342 is configured to interact with the NAT traversal cloud server 1390 to perform NAT traversal signaling between the P2P auxiliary links between the electronic device 100 and the electronic device 200 and relay link establishment between the electronic device 100 and the electronic device 200.
In one example, the fusion call module 1341 is further operable to request the business cloud server 1380 to perform device-level authentication of the electronic device 100, e.g., to verify device credentials of the electronic device 100.
In one example, the fusion call module 1341 is further configured to interact with the HiFi module 1320 to perform operations such as intercepting, merging, and/or replacing RTP packets to receive data content sent by the electronic device 100 on the main link of the call.
The NatService module 1342 may be used to implement the establishment, release, etc. of an auxiliary link.
The HiFi module 1350 may be used to implement the transmission of real-time call data via RTP/RTCP.
The modem 1360 may include an IMSA and an IMS protocol stack. The IMSA may be used to enable protocol data transfer between the RTP/RTCP protocol and the IMS protocol stack. The modem 1360 may be used to implement an IMS call with the electronic device 200 over a main link on the carrier network based on the IMS protocol stack. The IMS call may include, but is not limited to, a VoLTE, viLTE, voNR, viNR, voWiFi, viWiFi, EPS-Fallback type call, among others.
3. Cloud server 300 may include one or more cloud service function modules. The one or more cloud service function modules may include an account and wake cloud server 1370, a business cloud server 1380, and a Network Address Translation (NAT) traversal cloud server 1390. The account and wake cloud server 1370 may include an account server 1371 and a push server 1372, among others. The business cloud server 1380 may include a wisdom function (wiseFunction) module 1381. The NAT traversal cloud server 1390 may include a Terminal Routing (TRS) server 1391, a session transfer tool (STUN) server 1392 in a NAT environment, a relay session server 1393, and a connection (Connector) server 1394.
Wherein the account server 1371 may be used to authenticate the electronic device 100 or the electronic device 200, wherein the authentication includes user-level authentication and device-level authentication (e.g., verifying a device certificate of the electronic device).
When user-level authentication is used, the account server 1371 may generate an AT to the electronic device 100 or the electronic device 200 after authentication of the user account of the electronic device 100 or the user account of the electronic device 200 is successful. Wherein, the user account numbers are different, and the generated ATs are also different. The AT may be used as a resource credential required by the electronic device 100 or the electronic device 200 to invoke an Application Programming Interface (API) to access a resource on the cloud server 300, for example, through which the electronic device 100 may access the service server 1380.
Taking account server 1371 for example, the user-level authentication of electronic device 100, the process of generating an AT by the user-level authentication may be as follows:
(1) The application client on the electronic device 100 identifies the required user rights.
(2) The application client on the electronic device 100 redirects the user to an account server 1371 (e.g., oAuth server) and carries a list of rights (scope) to apply to the user in the redirect link.
(3) The electronic device 100 receives a user account and password of the device system entered by a user.
(4) The electronic device 100 receives confirmation input that the user logs in the application client with the user account and password authorization of the device system. If the application client is an unlicensed application, the electronic device 100 may log in to the application client directly using the user account and password of the device system.
(5) The electronic device 100 may send a login request to an account server 1371 (e.g., oAuth server) using a user account and password. The account server 1371 (e.g., oAuth server) may verify the user account and password on the electronic device 100 after receiving the login request. After verification is successful, the account server 1371 (e.g., oAuth server) may issue an AT and send the AT to the electronic device 100, and after the electronic device 100 receives the AT, the AT may be stored, for example, in a small text file (cookie) or in a local store (localstroge) on a client on the electronic device 100. The electronic device 100 needs to carry an AT issued by the account server 1371 each time a request for a resource from the cloud server 300, where the AT may be carried in a header (header) of an HTTP message. After receiving the request from the electronic device 100, the cloud server 300 may verify the AT carried in the request by using the account server 1371, and if verification is successful, may return the requested data to the electronic device 100.
The account server 1371 may generate an AT based on information such as a user account. For example, the user information data obtained by using the user account number, the system time, the random number and the expiration time may be subjected to RSA asymmetric encryption/AES symmetric encryption to obtain an encrypted string, and the encrypted string is signed again to obtain signature data. And then splicing the signature data and the encrypted character string, and finally encoding by using a base64 algorithm to obtain the final AT.
For example, the account server 1371 may return an AT to the electronic device 100 through an HTTP response, where the content of the HTTP response may be as follows:
“HTTP/1.1 200OK
Content-Type:text/html;charset=UTF-8
Cache-Control:no-store
{"access_token":"CFyJ21sNODl16eV9y2vu3CwQk9DBr32BkOcxxgAd7MZUR5th1giyTk5\/kA+QDAyxou+\/5U2zzBRcf3qgLkkFdtbbC+mM3zFV7xj7CCEMHc5Tw92al0Y=",
"expires_in":3600,
"refresh_token":"CF13G0sRaGybtYt7SIyeUILNORtTFwMgz4ao5C7j7vtgLPt6ogmXKjdI8RS\/YlyS71z4DyP6kEMnOrRlmNK0KhdOUNWd+qVLLRsEEHkqRIKpuAkPvL8=",
"scope":"https:\/\/www.huawei.com\/auth\/account\/base.profile",
"token_type":"Bearer"
}”
in one example, when using device-level authentication, an electronic device (electronic device 100 or electronic device 200) may generate a digest of a device certificate, then sign the device certificate with a private key to obtain signature data, and send the device certificate and the signature data to cloud server 300. The cloud server 300 may verify the signature data with a public key corresponding to the private key after receiving the device certificate and the signature data, and if the verification is successful, the cloud server 300 may allow the electronic device 100 to access the data on the cloud server 300.
In one example, cloud server 300 may also verify a Serial Number (SN) code of the electronic device, and after verification, cloud server 300 may allow the electronic device to access data on cloud server 300.
Wherein the push server 1372 may be used to wake the electronic device 200 to initiate establishment of the auxiliary link.
The traffic cloud server 1380 may be used to implement addressing of links, such as session identification (session id) exchanges for NAT traversal, wake-up interfacing of wake-up services between the electronic device 100 and the electronic device 200, and so forth. The exchange process of sessionID may refer to the subsequent embodiments, and will not be described herein.
NAT traversal cloud server 1390 can be used to enable NAT P2P traversal link establishment and transmission between electronic device 100 and electronic device 200, or TURN relay link establishment and transmission between electronic device 100 and electronic device 200, based on NAT traversal signaling between electronic device 100 or electronic device 200. For the specific process of establishing and transmitting the NAT P2P traversal link, the TURN relay link may refer to the following embodiments, which are not described herein.
Fig. 13B illustrates an architecture diagram of another communication system provided in an embodiment of the present application.
As shown in fig. 13B, the application processor 1310 of the electronic device 100 may include a fusion call module 1311, a system sharing module 1313, an in-application sharing module 1314, and a Data Channel (DC) module 1315. A data routing module 1331, a quality of service class identifier (QCI)/5G quality of service class identifier (5G qualityofserviceclassidentifier,5QI) configuration module 1332 may be included in a modem (modem) 1330 of the electronic device 100.
The system sharing module 1313 may be configured to provide a system sharing function. The in-application sharing module 1314 may be used to provide functionality for sharing data within an application.
Channel management and routing configuration of data channels may be implemented in the DC module 1315. The DC module 1315 may also implement transmission of media or control streams in a data channel in a main link based on a stream control protocol (STCP), a data packet transport layer security (DTLS) protocol. The DC module 1315 may transmit media streams (including data content with specified data) and control streams (including control instructions when sharing specified data) to the modem 1330.
Modem 1330 may enable transmission of media streams between electronic device 200 and a data path on the main link based on the TCP/IP protocol stack. Modem 1330 may enable transmission of control flows between electronic device 200 and the data path of the main link based on the IMS protocol stack and the TCP/IP protocol stack. Data routing module 1331 in modem 1330 may implement routing control in a media stream or a control stream. QCI/5QI configuration module 1332 in modem 1330 may be based on implementing a classification and identification of quality of service levels in media or control streams.
The application processor 1340 of the electronic device 200 may include a fusion call module 1341, a system sharing module 1343, an in-application sharing module 1344, and a Data Channel (DC) module 1345. A data routing module 1361, a quality of service class identifier (QCI)/5G quality of service class identifier (5G qualityofserviceclassidentifier,5QI) configuration module 1362 may be included in a modem (modem) 1360 of the electronic device 200.
The system sharing module 1343 may be used to provide system sharing functionality. The in-application sharing module 1344 is operable to provide functionality for sharing data within an application.
Channel management and routing configuration of data channels may be implemented in the DC module 1345. The DC module 1345 may further implement transmission of a media or control stream in a data channel in a main link based on a stream control protocol (STCP), a data packet transport layer security (DTLS) protocol. The DC module 1345 may transmit a media stream (including data content with specified data) and a control stream (including control instructions when sharing the specified data) to the modem 1360.
The modem 1360 may enable transmission of media streams between the electronic device 200 and data channels of the main link based on a TCP/IP protocol stack. Modem 1360 may enable transmission of control flows between electronic device 200 and the data path of the main link based on the IMS protocol stack and the TCP/IP protocol stack. A data routing module 1361 in the modem 1360 may implement routing control in the media stream or the control stream. QCI/5QI configuration module 1361 in modem 1360 may be based on implementing a classification and identification of quality of service levels in media or control flows.
Fig. 13C illustrates an architecture diagram of another communication system provided in an embodiment of the present application.
As shown in fig. 13C, the application processor 1310 of the electronic device 100 may include a fusion call module 1311, a system sharing module 1313, an in-application sharing module 1314, and a Data Channel (DC) management module 1316. A data routing module 1331, a quality of service class identifier (QCI)/5G quality of service class identifier (5G qualityofserviceclassidentifier,5QI) configuration module 1332, and a Data Channel (DC) protocol module 1333 may be included in a modem 1330 of the electronic device 100.
Channel management and routing configuration for data channels may be implemented in the DC management module 1316.
The DC protocol module 1333 may implement transmission of media or control streams in a data channel in a main link based on a stream control protocol (STCP), a data packet transport layer security (DTLS) protocol. DC protocol module 1333 may transmit the media stream (including the data content with the specified data) to the TCP/IP protocol stack of modem 1330 for processing. The DC protocol module 1333 may transmit the control flow (including the control instruction when sharing the specified data) to the IMS protocol stack of the modem 1330 for processing, where the IMS protocol stack transmits the control flow to the TCP/IP protocol stack for further processing after processing.
The application processor 1340 of the electronic device 200 may include a fusion call module 1341, a system sharing module 1343, an in-application sharing module 1344, and a Data Channel (DC) management module 1346. A data routing module 1361, a quality of service class identifier (QCI)/5G quality of service class identifier (5G qualityofserviceclassidentifier,5QI) configuration module 1362, a Data Channel (DC) protocol module 1363 may be included in a modem (modem) 1360 of the electronic device 200.
Channel management and routing configuration for data channels may be implemented in the DC management module 1346.
The DC protocol module 1363 may implement transmission of a media stream or a control stream in a data channel in a main link based on a stream control protocol (STCP), a data packet transport layer security (DTLS) protocol. The DC protocol module 1363 may transmit the media stream (including the data content with the specified data) to the TCP/IP protocol stack of the modem 1360 for processing. The DC protocol module 1363 may transmit the control flow (including the control instruction when sharing the specified data) to the IMS protocol stack of the modem 1360 for processing, where the IMS protocol stack transmits the control flow to the TCP/IP protocol stack for further processing after processing the control flow.
The description of the electronic device 100 and other functional modules in the electronic device 200 may refer to the embodiment shown in fig. 13B, which is not described herein.
The following describes a procedure of establishing a data transmission link between the electronic device 100 and the electronic device 200 in the embodiment of the present application.
In this embodiment, when the electronic device 100 and the electronic device 200 are communicating, the establishing manner of the data transmission link may include the following manners:
1. the primary links of the call are multiplexed.
For example, when the call between the electronic device 100 and the electronic device 200 is an IMS call, an IMS protocol is used. The message type for transmitting the shared data can be expanded and increased in the original RTP message. Alternatively, the RTP packet may be marked by a synchronization source identifier (synchronous source, SSRC) in the RTP packet, which carries the voice/video frame data of the call, or the designated data shared by the electronic device 100 to the electronic device 200. In this way, the core network device of the cellular network device needs to enter a transparent mode, and does not filter and transcode the RTP packet.
2. A datachannel (datachannel) of the talk link is used.
For example, a data channel is included in a call link established between the electronic device 100 and the electronic device 200 using the IMS protocol. The data channel is a data transmission channel outside the relative call signaling QCI5 channel, the audio QCI 1/audio QCI2 channel. The description of the data channel may refer to the protocol specification TS 26.114, which is not described herein.
3. An auxiliary link is established.
3.1 electronic device 100 and electronic device 200 may negotiate to establish an auxiliary link by carrying connection information over RTCP packets of the main link of the call.
Text data carrying connection information may be carried in RTCP source description (source description, SDES) packets and sent to the electronic device 200. The connection may include information such as communication ID, IP address, etc. for NAT traversal. The connection information may be carried in a Canonical Name (CNAME) item in an SDES entry (item) field.
For example, as shown in FIG. 14A, RTCP data may include a header, one or more blocks (chunk). Wherein,
the header (header) may include a version number (V) field, a source description item number (number of SDES items, SC) field, a Packet Type (PT) field, a length field, and a padding (P) field.
Among them, a source identifier (synchronous source identifier (SSRC) or specific source identifier (CSRC)), a source description entry (SDES items) may be included in the chunk. Wherein the version number field may have a value of "2", and the PT field may have a value of "202" (for indicating that the RTCP packet is an SDES packet.
As shown in fig. 14B, the SDES items field may include a CNME field (a value may be "1"), a length field (a length may be 36 bits, for example), connection information, and the length field may be used to indicate a data length of the connection information.
3.2 the electronic device 100 may address a communication ID of the other party with the electronic device 200 through the cloud server 300, and the electronic device 100 and the electronic device 200 may establish an auxiliary link between the electronic device 100 and the electronic device 200 based on the communication IDs of the two parties.
Fig. 15 illustrates an auxiliary link establishment procedure provided in an embodiment of the present application.
As shown in fig. 15, the link establishment procedure may include the following 3 phases: registration/login phase, addressing phase, link establishment phase. The registration/login phase includes the following steps S1501 to S1502, the addressing phase includes the following steps S1503 to S1506, and the link establishment phase includes the following step S1507. Wherein:
s1501, the electronic device 100 registers and registers the ID group a and the communication identifier a of the electronic device 100 in a binding manner and stores them on the cloud server 300.
S1502, the electronic device 200 registers and binds the ID group B of the electronic device 200 and the communication identifier B to the cloud server 300.
Wherein the query request a may be used to obtain the communication identifier B of the electronic device 200.
S1503, the electronic device 100 may send a query request a to the cloud server 300, where the query request a carries all or part of the information of the ID group B of the electronic device 200.
S1504, the cloud server 300 may return the communication identifier B of the electronic device 200 to the electronic device 100.
S1505, the electronic device 200 may send a query request B to the cloud server 300, where the query request B carries all or part of the information of the ID group a of the electronic device 100. The query request B may be used to query the communication identity a of the electronic device 100.
S1506, the cloud server 300 may return the communication identifier a of the electronic device 100 to the electronic device 200.
S1507, the electronic device 100 and the electronic device 200 establish an auxiliary link based on the communication identifier a and the communication identifier B. The auxiliary link includes an IP direct link, a NAT-penetrating point-to-point link, or a server relay link, among others.
The cloud server 300 shown in fig. 15 may specifically be a service cloud server 1380 in the cloud server 300.
The auxiliary link establishment procedure described above is specifically described below in connection with the principle shown in fig. 16.
Fig. 16 is a schematic diagram illustrating the principle of the electronic device 100 obtaining the communication identifier of the electronic device 200 from the service cloud server 1380 in the implementation of the present application.
As shown in fig. 16, the electronic device 100 and the electronic device 200 may bind the respective ID groups and the communication identifiers, and register and log on to the service cloud server 1380. That is, the electronic device 100 may bind the ID group a and the communication identifier a of the electronic device 100 to the binding information a, register and log on to the service cloud server 1380, and store the binding information a. The electronic device 200 may bind the ID group B and the communication identifier B of the electronic device 200 to the binding information B, and register the binding information B to the service server 1380 for storage. Wherein the ID group may include a combination of one or more of the following: one or more telephone numbers, one or more OTT IDs (e.g., user ID of an instant messaging application, email address, etc.), and so forth.
In one example, the binding information may be stored after being de-private (e.g., hashed (hash) operation) and registered to the business server 1380.
The binding information stored in the service server 1380 may be temporary, and the service server 1380 may control whether to delete or not, or may be accurate, and the electronic device (electronic device 100 or electronic device 200) may control whether to delete or not.
For temporary, the business server 1380 may set a session time threshold (session) for a session (session) of the electronic device, e.g., 10 minutes, after the duration of the session between the business server 1380 and the electronic device exceeds the session, the business server 1380 may automatically delete binding information for the electronic device or set to an idle (inactive) state. The electronic device may refresh (refresh) the session before the session exceeds the sessiontimer, extending the sessiontimer.
For accuracy, the electronic device may determine when to delete the binding information, for example, after the electronic device has finished talking, or after the network state has changed, the service server 1380 may be requested to delete the stored binding information.
After the service cloud server 1380 stores the binding information a of the electronic device 100 and the binding information B of the electronic device 200, the process of the electronic device 100 querying the service cloud server 1380 for the communication identifier of the electronic device 200 may include the following steps:
1. the electronic device 100 acquires all or part of the information in the ID group a of the electronic device 200.
2. The electronic device 100 sends a query request to the service server 1380 querying the communication identifier B of the electronic device 200. Wherein the query request carries all or part of the information in the ID group B of the electronic device 200.
3. The service server 1380, upon receiving the inquiry request from the electronic device 100, inquires about the communication identifier B of the electronic device 200 according to all or part of the information in the ID group B of the electronic device 200, and returns the communication identifier B of the electronic device 200 to the electronic device 100.
In one example, the communication identification may be a session identification (sessionID) generated by the NAT traversal cloud server 1390 for the electronic device (electronic device 100 or electronic device 200). The electronic device may communicate with the NAT traversal cloud server 1390 via the session identification. The electronic device 100 and the electronic device 200 are addressed by the service cloud server 1380, and the sessionids of the two parties are exchanged. After the electronic device 100 and the electronic device 200 take the session id of the other party, the NAT public network information (including the NAT public network address and the port number) of the other party can be obtained through NAT traversal by the NAT traversal cloud server 1390 to establish a P2P link, or the relay address of the other party can be obtained, so as to establish a server relay link.
In one example, when the electronic device 100 and the electronic device 200 are in the same lan, the communication identifier may be an IP address in the lan of the electronic device, and the electronic device 100 and the electronic device 200 may establish an auxiliary link (including a P2P link or a server relay link) directly based on the IP address in the lan of the other party when they take the IP address of the lan of the other party. At this time, the electronic device 100 and the electronic device 200 may take the IP address of the other party in the lan through the cloud server 300, or may take the IP address of the other party in the lan through the routing device in the lan.
In one example, when the electronic device 100 and the electronic device 100 use a network protocol such as internet protocol version 6 (IPV 6), the communication identifier may be an IPV6 address of the electronic device (electronic device 100 or electronic device 200). After the electronic device 100 and the electronic device 200 take the IPV6 address information (including the IPV6 address and the port (port) number) of the other party through the cloud server 300, an auxiliary link (including a P2P link or a server relay link) is directly established based on the IPV6 address information of the other party.
The following describes in detail an addressing procedure in an auxiliary link provided in an embodiment of the present application.
Fig. 17 shows a schematic diagram of an addressing procedure in an auxiliary link according to an embodiment of the present application.
As shown in fig. 17, the addressing flow may include 4 phases as follows: authentication generates a point-to-point Token (P2P Token) phase, a binding or refresh phase, an addressing phase, a session end phase. The authentication generation P2P Token phase may include steps S1701 to S1702, the binding or refreshing phase may include steps S1703 to S1704, the addressing phase may include steps S1705 to S1713, and the session end phase may include steps S1714 to S1715.
Wherein:
s1701, the electronic device 100 authenticates with the service cloud server 1380 (including user-level authentication or device-level authentication).
For the authentication process of the electronic device 100 to the service cloud server 1380, reference may be made to the authentication process of the electronic device 100 to the account server 1371 in the embodiment shown in fig. 13A, which is not described herein.
S1702, the service cloud server 1380 may return a point-to-point token a (P2 PToken-a) to the electronic device 100 after authentication of the electronic device 100 has passed.
The P2P Token-a may be used for the electronic device 100 to access the data of the NAT traversal cloud server 1390, and request the NAT traversal service function on the cloud server 1390.
After the electronic device 100 obtains the P2P Token-a, it may send a long connection request to the NAT traversal cloud server 1390, requesting to establish a long connection with the NAT traversal cloud server 1390. Wherein the long connection request carries the P2P Token-A. The NAT traversal cloud server 1390 may request the service cloud server 1380 to verify the P2P Token-a, and if verification is successful, the NAT traversal cloud server 1390 may generate a session identifier a (session id-a) of the long connection session for the electronic device 100 to the electronic device 100.
S1703, the electronic device 100 sends the binding information a to the service cloud server 1380 for storage. The binding information a includes an ID group a of the electronic device 100 and a session identifier a (session ID-a) returned to the electronic device 100 by the NAT traversal cloud server 1390.
Wherein the ID group a may include a combination of one or more of the following IDs of the electronic device 100: one or more phone numbers, one or more application account IDs (e.g., user ID of an instant messaging application, email address, etc.), and so forth.
In one example, the electronic device 100 compresses the ID of the electronic device 100 and places the compressed ID into the ID group a. For example, the electronic device 100 may operate with 2 SIM cards, and the mobile phone numbers of the 2 SIM cards are the mobile phone number A1 and the mobile phone number A2, respectively. The electronic device 100 may perform hash operation on the mobile phone number A1 to obtain a hash value 1, and perform hash operation on the mobile phone number A2 to obtain a hash value 2. And puts hash value 1 and hash value 2 into ID group a.
Optionally, S1704, the electronic device 100 may update the binding information a, and save the updated binding information a to the service cloud server 1380.
The electronic device 100 may update the binding information a when the information in the ID group a and/or the session identifier a allocated to the electronic device 100 by the NAT traversal cloud server 1390 change, and store the updated binding information a on the service cloud server 1380.
For example, the electronic device 100 may operate with 2 SIM cards, SIM card 1 and SIM card 2. The SIM card 1 corresponds to the mobile phone number A1, and the SIM card 2 corresponds to the mobile phone number A2. The electronic device 100 may put the mobile phone number A1 and the mobile phone number A2 into the ID group a to bind with the session identifier a to generate the binding information a, and send the binding information a to the service cloud server 1380. When the SIM card 1 on the electronic device 100 is disconnected or the mobile phone number A1 fails to stop, but the SIM card 2 works normally, the electronic device 100 may put the mobile phone number A2 into the ID group a to bind with the session identifier a, generate updated binding information a, and send the updated binding information a to the service cloud server 1380.
For another example, the NAT traversal cloud server 1390 can generate a new session identification a for the electronic device 100 when the electronic device 100 disconnects from the long connection of the NAT traversal cloud server 1390, reconnects, and so on. The electronic device 100 may bind the ID group a with the new session identifier a to generate updated binding information a, and send the updated binding information a to the service cloud server 1380.
S1705, the electronic device 100 may send a query request a to the service cloud server 1380, where the query request a may include all or part of information in the ID group B of the electronic device 200, where the query request a may be used to query the session identifier B of the electronic device 200.
Wherein the ID group B may include therein a combination of one or more of the following IDs of the electronic device 200: one or more phone numbers, one or more application account IDs (e.g., user ID of an instant messaging application, email address, etc.), and so forth.
All or part of the information in the ID group B may refer to all IDs or some one or more IDs in the ID group B.
S1706, after receiving the query request sent by the electronic device 100, the service cloud server 1380 may determine whether the session identifier B of the electronic device 200 is matched.
S1707, after the service cloud server 1380 matches the session identifier B of the electronic device 200, the session identifier B of the electronic device 200 may be returned to the electronic device 100.
Optionally, in S1708, after the service cloud server 1380 does not query the session identifier B of the electronic device 200, the service cloud server 1380 may determine whether to wake up the electronic device 200.
When the electronic device 200 is in a non-wake state such as a sleep state or an off-screen state, the electronic device 200 may not access the service cloud server 1380. Accordingly, the business cloud server 1380 may wake the electronic device 200 to communicate with the business server 1380.
Optionally, S1709, if the electronic device 200 needs to be awakened, the service cloud server 1380 may awaken the electronic device 200 through the push (push) server 1372.
Optionally, S1710, if the electronic device 200 does not need to be awakened, the service cloud server 1380 may return the failure cause to the electronic device 200.
For example, the failure cause may include the electronic device 200 not waking up, the electronic device 200 having been powered off, and so on.
Optionally, S1711, after waking up the electronic device 200, the electronic device 200 may authenticate with the service cloud server 1380.
The authentication process of the service cloud server 1380 for the electronic device 200 may refer to the authentication process of the service cloud server 1380 for the electronic device 100 in the above embodiment, which is not described herein.
Optionally, S1712, business cloud server 1380 may return point-to-point Token B (P2P Token-B) to electronic device 200.
The P2P Token-B may be used for the electronic device 200 to access the data of the NAT traversal cloud server 1390, and request the NAT traversal service function on the cloud server 1390.
After the electronic device 100 obtains the P2P Token-B, it may send a long connection request to the NAT traversal cloud server 1390, requesting to establish a long connection with the NAT traversal cloud server 1390. Wherein the long connection request carries the P2P Token-B. The NAT traversal cloud server 1390 may request the service cloud server 1380 to authenticate the P2P Token-B, and if authentication is successful, the NAT traversal cloud server 1390 may generate a session identifier B (session id-B) of the long connection session for the electronic device 200 to the electronic device 100.
Optionally, S1713, the electronic device 200 sends the binding information B to the service cloud server 1380 for saving. The binding information B includes an ID group B of the electronic device 100 and a session identifier B returned to the electronic device 200 by the NAT traversal cloud server 1390.
After the electronic device 200 uploads the binding information B to the service cloud server 1380, the service cloud server 1380 may return the session identifier B of the electronic device 200 to the electronic device 100.
S1714, the electronic device 100 may proactively request to release the long connection session with the service cloud server 1380 after receiving the session identifier B of the electronic device 200.
Optionally, S1715, the service cloud server 1380 may also automatically release the session with the electronic device 100 after sending the session identifier B of the electronic device 200 to the electronic device 100.
The following describes the interaction flow of functional modules between the electronic device 100 and the electronic device 200 in the embodiment of the present application.
Fig. 18 shows a functional module interaction flow between the electronic device 100 and the electronic device 200 in the embodiment of the present application.
As shown in fig. 18, the electronic device 100 may include a fusion call (fusion call) module 1311 and a network address translation service (nature) module 1312. The electronic device 200 may include a fusion call module 1341 and a NatService module 1342. The interaction flow between the functional modules may be as follows:
S1801, the fusion call module 1311 initializes the transmission service of the NatService module 1312.
For example, the fusion call module 1311 may initialize the transport services in the NatService module 1312 by the function "RfcManager. Int".
S1802, fusion call module 1311 applies for session identifier a of the long connection channel to NatService module 1312.
For example, the fusion call module 1311 may apply the session identifier a of the long connection channel with the NAT traversal cloud server 1390 to the nature module 1312 through the function "alloctrendimd (cb)". The fusion call module 1311 may send the P2P Token-a generated by the service cloud server 1380 for the electronic device 100 to the nature module 1312 through a function "allocphannelid (P2 ptoken, cb)". The NatService module 1312 may carry the P2P Token-A when sending a long connection request to the NAT traversal cloud server 1390.
S1803, the nature module 1312 returns the session identifier a of the long connection channel to the fusion call module 1311.
For example, after returning the session identifier a of the long connection channel to the nature module 1312, the NAT traversal cloud server 1390 may return the session identifier a to the fusion call module 1311 through a function "cb (tuneld)", which is a parameter "tuneld", i.e., the session identifier a in the function "cb (tuneld)".
S1804, the fusion call module 1311 requests the NatService module 1312 to create a session with the electronic device 200.
The fusion call module 1311 may send the session identifier a of the electronic device 100 and the session identifier B of the electronic device 200 to the NatService module 1312, so as to request the NatService module 1312 to establish a transmission session with the electronic device 200.
The NatService module 1312 may send the session identifier B of the electronic device 200 to the NAT traversal cloud server 1390, requesting the NAT traversal cloud server 1390 to complete establishment of a transmission session between the electronic device 100 and the electronic device 200.
For example, the fusion call module 1311 may request the NatService module 1312 to establish a transmission session with the electronic device 200 through the function "createSessionByTunnelID (p 2ptoken, remoteTunnelID, flag, isessionCallbackback"). The parameter "P2ptoken" in the function "createsessionbytuneld (P2 ptoken, remotetuneld, flag, isessioncallback)" is the above-mentioned P2P Token-a, and the parameter "remotetuneld" is the session identifier B of the electronic device 200.
S1805, the nature service module 1312 returns the transmission session creation result to the fusion call module 1311.
The transmission session creation result may include creation success and creation failure, among others.
For example, natService module 1312 may return the session creation result to fusion Call module 1311 via the function "ISessionCallback". The function "ISessionCallback" may include a creation success function "onSessionCreate (Sessionsession)", a creation failure function "connectircontologic state" (intercode, stringdesc), among others.
S1806, after the transmission session is created successfully, the fusion call module 1311 may add a listening event to the nature service module 1312.
After adding the listening event, the NatService module 1312 may be configured to listen to data sent by the electronic device 200 to the electronic device 100 over the transmission session.
For example, the fusion call module 1311 may add a snoop event to the NatService module 1312 by the function "addListener (p 2ptoken, ISessionListenListener)" to snoop data from the electronic device 200 on the transport session. The NatService module 1312 may return the snoop results of the snoop event to the fusion Call module 1311 via the function "ISessionListenterListener".
S1807, the fusion call module 1341 on the electronic device 200 provides the send data to the nature service module 1342.
S1808, the NatService module 1342 transmits data to the NatService module 1312 on the electronic device 100 by means of a P2P direct transfer/server relay or the like.
S1809, the NatService module 1312 may return the received data to the fusion call module 1311 after receiving the data sent by the NatService module 1342.
For example, the NatService module 1312 may return data to the fusion Call module 1311 that successfully listened to the electronic device 200 transmission with the function "onAcceptbytes (byte [ ] data)". The NatService module 1312 may return the reason for the snoop failure (e.g., the error code) to the fusion Call module 1311 with the function "onLisetError (interCode, stringdesc)".
S1810, fusion call module 1311 provides send data to NatService module 1312.
For example, the fusion call module 1311 may provide data to the NatService module 1312 via the function "session.
S1811, the NatService module 1312 transmits the session transfer data to the NatService module 1342 on the electronic device 200 by means of P2P direct transfer/server relay or the like.
S1812, the nature module 1342 on the electronic device 200 may return the received data to the fusion call module 1341 after receiving the data sent by the nature module 1312 on the electronic device 100.
S1813, fusion call module 1311 removes the snoop event to NatService module 1312.
The fusion call module 1311 may remove the snoop event to the NatService module 1312 after the data between the electronic device 100 and the electronic device 200 is completed.
For example, fusion call module 1311 may remove a snoop event to NatService module 1312 via function "removeListener (SessionListenerlistener)".
S1814, fusion call module 1311 requests the nature module 1312 to release the session.
For example, the fusion call module 1311 may request the NatService module 1312 to release the transfer session with the electronic device 200 via the function "releaseSession (Sessionsession)".
S1815, the fusion call module 1311 requests the NatService module 1312 to destroy the transport service.
For example, the fusion call module 1311 may request to destroy the transport services initialized on the NatService module 1312 by the function "RfcManager. Free (Session)".
The following describes the P2P direct link establishment procedure in the embodiment of the present application.
Fig. 19 is a schematic diagram of a P2P direct link establishment procedure provided in an embodiment of the present application.
As shown in fig. 19, the electronic device 100 may include a fusion call module 1311 and a nature service module 1312.NAT traversal cloud server 1390 can include TRS server 1391, connector server 1394, TURN server 1393, STUN server 1392.
The P2P direct link establishment procedure may include the following phases:
1. acquiring TRS route: step S1901 to step S1902.
2. Acquiring a home terminal session identifier (sessionID): step S1903 to step S1904.
3. Exchange sessionID: step S1905.
Nat traversal procedure.
The NAT traversal stage comprises the following steps:
4.1. obtaining NAT public network information of a home terminal: step S1906 to step S1907.
4.2. Two-end NAT public network information exchange: step S1908 to step S1910.
4.3. Connection detection and transmission channel establishment: step S1911.
Steps S1901 to S1911 may be as follows:
s1901, nature module 1312 may send a route retrieval request to TRS server 1391.
The route acquisition request is used to acquire address information of the Connector server 1394, address information of the TURN server 1393, and address information of the STUN server 1392. The address information may include an IP address and a port (port) number, among others. The route acquisition request may carry a P2P Token-a sent by the service server 1380 to the electronic device 100.
For example, the NatService module 1312 may obtain routing information on the TRS server 1391 via an interface "getroute" provided by the TRS server 1391. The interface protocol of the TRS server 1391 may be a transmission control protocol (transmission control protocol, TCP) or a hypertext transfer security protocol (hyper text transfer protocol over secure socket layer, HTTPS), among others.
S1902, the TRS server 1391, upon receiving the route acquisition request, can return route information to the nature service module 1312.
The routing information includes address information of the acquisition Connector server 1394, address information of the TURN server 1393, and address information of the STUN server 1392. The address information may include, among other things, an IP address and a port (port).
S1903, the nature module 1312 logs in to the TRS server 1391 with a long connection.
When the NatService module 1312 logs in to the TRS server 1391 through the interface long connection provided by the Connector server 1394, it transmits the P2P Token-A to the Connector server 1394. The interface protocol of the Connector server 1394 may be TCP or transport layer security protocol (transport layer security, TLS). When the interface provided by the Connector server 1394 transmits the P2P Token-a to the Connector server 1394, the data read-write mode of the P2P Token-a may be a binary large-end read-write mode, i.e. the most significant byte of the P2P Token-a is stored at a low address.
S1904, the Connector server 1394 returns the session id a (session id-a) to the nature module 1312.
S1905, the fusion call module 1311 exchanges session identifiers of both parties with the electronic device 200 via the service server 1380.
For details, reference may be made to the foregoing embodiments shown in fig. 15 to 17, and details are not repeated here.
S1906, the nature service module 1312 transmits an acquisition request for NAT public network information of the electronic device 100 to the STUN server 1392.
The request for obtaining NAT public network information for the electronic device 100 carries the P2P Token-a.
For example, the NatService module 1312 may send an acquisition request for NAT public network information of the electronic device 100 to the STUN server 1392 via a function "Binding" at the interface provided by the STUN server 1392. The interface protocol of the STUN server 1392 may be a STUN protocol or a packet transport layer security (datagram transport layer security, DTLS) protocol.
S1907, STUN server 1392 returns NAT public network information a of electronic device 100 to fusion call module 1311.
The NAT public network information a may include a public network IP address and a public network-to-internal network port number of the electronic device 100.
In one example, STUN server 1392 may compress or encrypt NAT public information a for electronic device 100 and return it to fusion call module 1311. For example, NAT public network information a may be xored and returned to fusion call module 1311.
S1908, the nature service module 1312 sends a message a to the Connector server 1394.
The message a carries NAT public network information a of the electronic device 100 and session identifier B (session id-B) of the electronic device 200. The session identifier B (session id-B) of the electronic device 200 is a session identifier generated by the Connector server 1394 to the electronic device 200. The electronic device 200 can conduct a long connection session with the Connector server 1394 based on the session id-B.
S1909, the Connector server 1394 forwards the NAT public network information a of the electronic device 100 in the message to the electronic device 200.
S1910, the Connector server 1394 may send NAT public network information B of the electronic device 200 to the NatService module 1312.
The electronic device 200 may also send an acquisition request for NAT public network information of the electronic device 200 to the STUN server 1392. The request for obtaining NAT public network information for the electronic device 200 carries a P2P Token-B allocated to the electronic device 200 by the service cloud server 1380. STUN server 1392 may return NAT public network information B for electronic device 200 to electronic device 200. The NAT public network information B includes a public network IP address and a public network-to-internal network port number of the electronic device 200. The electronic device 200 can send message B to the Connector server 1394. The message B carries the session identifier a of the electronic device 100 and NAT public network information B of the electronic device 200. After receiving the message B, the Connector server 1394 may forward NAT public network information B of the electronic device 200 to the NatService module 1312 on the electronic device 100.
After receiving the NAT public network information B of the electronic device 200, the NatService module 1312 may perform connection detection with the electronic device 200 based on the NAT public network information B to establish a P2P transmission link.
The electronic device 100 may transmit the specified data content selected by the user to be shared with the electronic device 200, and content such as control information (e.g., revocation instruction, file destruction instruction, etc.) to the electronic device 200 based on the P2P transmission link. The electronic device 200 may also return control information (e.g., acknowledge receipt of an instruction, reject receipt of an instruction, etc.) or other data to the electronic device 100 based on the P2P transmission link.
The following describes a relay link establishment procedure in the embodiment of the present application.
Fig. 20 is a schematic diagram of a relay link establishment procedure provided in an embodiment of the present application.
As shown in fig. 20, the electronic device 100 may include a fusion call module 1311 and a nature service module 1312.NAT traversal cloud server 1390 can include TRS server 1391, connector server 1394, TURN server 1393, STUN server 1392.
The relay link establishment procedure may include the following phases:
1. acquiring TRS route: step S2001 to step S2002.
2. Acquiring a home terminal session identifier (sessionID): step S2003 to step S2004.
3. Exchange sessionID: step S2005.
4. And (5) a relay flow. The NAT traversal stage comprises the following steps:
4.1. channel allocation: step S2006 to step S2007.
4.2. Two-terminal relay address exchange: step S2008 to step S2010.
4.3. Creating a license: step S2011 to step S2012.
4.4. Transmitting/receiving data: step S2013 to step S2016.
Step S2001 to step S2016 may be as follows:
s2001, nature service module 1312 may send a route retrieval request to TRS server 1391.
S2002, the TRS server 1391, upon receiving the route acquisition request, can return route information to the nature service module 1312.
The S2003 and nature service module 1312 logs in to the TRS server 1391 with a long connection.
S2004, the TRS server 1391 returns a session id a (session id-a) to the nature module 1312.
S2005, fusion call module 1311 exchanges session identifiers of both parties with electronic device 200 via service server 1380.
Step S2001 and step S2005 may refer to steps S1901 to S1905 in the embodiment shown in fig. 19, which are not described herein.
S2006, nature service module 1312 transmits an acquisition request for the relay address of electronic device 100 to TURN server 1393.
The request for obtaining the relay address of the electronic device 100 carries the P2P Token-a.
For example, natService module 1312 may send an acquisition request for the relay address of electronic device 100 to TURN server 1393 via a function "Allocation" or "Refresh" in the interface provided by TURN server 1393. The interface protocol of TURN server 1393 may be TURN protocol or packet transport layer security (datagram transport layer security, DTLS) protocol. The function "Allocation" or "Refresh" may be a binary large-end read-write method for writing data of P2P Token-a, i.e. the most significant byte of P2P Token-a is stored at a low address. The data format of the P2P Token-a may be a Tag Length Value (TLV) format.
S2007, TURN server 1393 returns relay address a of electronic device 100 to fusion call module 1311.
In one example, STUN server 1392 may compress or encrypt the relay address a of electronic device 100 before returning to fusion call module 1311. For example, the relay address a may be xored and returned to the fusion call module 1311.
S2008, nature service module 1312 sends message C to Connector server 1394.
The message C carries the relay address a of the electronic device 100 and the session id B (session id-B) of the electronic device 200. The session identifier B (session id-B) of the electronic device 200 is a session identifier generated by the Connector server 1394 to the electronic device 200. The electronic device 200 can conduct a long connection session with the Connector server 1394 based on the session id-B.
For example, natService module 1312 may send message A to Connector server 1394 via the function "SendMsg ()" in the interface provided by Connector server 1394. The data in the message C may be read-write in binary big end. The interface protocol of the Connector server 1394 may be the TCP protocol or the TLS protocol.
S2009, the Connector server 1394 forwards the relay address a of the electronic device 100 in the message C to the electronic device 200.
S2010, the Connector server 1394 may send the relay address B of the electronic device 200 to the nature module 1312.
Here, the electronic apparatus 200 may also transmit an acquisition request for the relay address of the electronic apparatus 200 to the TURN server 1393. The request for acquiring the relay address of the electronic device 200 carries the P2P Token-B allocated to the electronic device 200 by the service cloud server 1380. TURN server 1393 may return relay address B of electronic device 200 to electronic device 200. The electronic device 200 can send a message D to the Connector server 1394. The message D carries the session identifier a of the electronic device 100 and the relay address of the electronic device 200. After receiving the message B, the Connector server 1394 may forward the relay address B of the electronic device 200 to the NatService module 1312 on the electronic device 100.
S2011, nature service module 1312 may send license creation request a to TURN server 1393.
The license creation request a may carry the P2P Token-a of the electronic device 100 and the relay address B of the electronic device 200. This license creation request a may be used to request TURN server 1393 to create a relay forwarding link for electronic device 100 to electronic device 200.
For example, the NatService module 1312 may send a license creation request A to the TURN server 1393 via the function "CreatePushing ()" based on the TURN protocol or the DTLS protocol on the interface of the TURN server 1393.
S2012, electronic device 200 may send license creation request B to TURN server 1393.
The license creation request B may carry the P2P Token-B of the electronic device 200 and the relay address a of the electronic device 100. This license creation request B may be used to request TURN server 1393 to create a relay forwarding link for electronic device 200 to electronic device 100.
For example, the electronic device 200 may send a license creation request B to TURN server 1393 via the function "createpression ()" based on TURN protocol or DTLS protocol over the interface provided by TURN server 1393.
S2013, natService module 1312 may send packet a to TURN server 1393.
The data packet a carries a session identifier B (session id-B) of the electronic device 200, a relay address B of the electronic device 200, and data a.
For example, natService module 1312 may Send packet A to TURN server 1393 via the function "Send ()" over the interface provided by TURN server 1393. The data in the data packet a can be read and written in a binary large-end manner, i.e. the most significant bytes of the data in the data packet a are stored in a low address. The data format of the data packet a may be a Tag Length Value (TLV) format.
S2014, TURN server 1393 may forward data packet a to electronic device 200.
TURN server 1393, upon receiving packet a, may parse session identifier B of electronic device 200 and relay address B of electronic device 200 carried in packet a. Accordingly, TURN server 1393 may determine, based on session identification B of electronic device 200 and relay address B of electronic device 200, that the data in data packet a is to be sent to electronic device 200. TURN server 1393 forwards data a in this data packet a to electronic device 200.
S2015, electronic device 200 may send packet B to TURN server 1393.
The data packet B carries a session identifier a (session id-a) of the electronic device 100, a relay address B of the electronic device 200, and data B.
S2016, TURN server 1393 may forward packet B to NatService module 1312.
TURN server 1393, upon receiving packet B, may parse session identifier a of electronic device 100 and relay address a of electronic device 100 carried in packet B. Accordingly, TURN server 1393 may determine, based on session identification a of electronic device 100 and relay address a of electronic device 100, that data in data packet B is to be sent to electronic device 100. TURN server 1393 may forward data B in this data packet B to electronic device 100.
For example, natService module 1312 may receive data B via the function "Recv ()" on an interface provided by TURN server 1393. The read-write mode of the data B may be a binary large-end read-write mode, that is, the most significant byte of the data B is stored in the low address. The data format of the data packet a may be a Tag Length Value (TLV) format.
The relay address a of the electronic device 100 may be used to indicate the IP address of the access terminal a on the TURN server 1393 that provides a communication interface for the electronic device 200. The relay address B of the electronic device 200 may be used to indicate the IP address of the access terminal B on TURN server 1393 that provides a communication interface for the electronic device 200. In one example, the IP address of access terminal a and the IP address of access terminal B may be the same, and in one example, the IP address of access terminal a and the IP address of access terminal B may also be different.
The following describes a device wake-up procedure provided in the embodiments of the present application.
Fig. 21 shows a schematic diagram of a device wake-up procedure in an embodiment of the present application.
As shown in fig. 21, taking the example of the cloud server arousing 300 to wake up the electronic device 200, the electronic device 200 may include an application, a mobile service (for example, a Huaweimiboleservice (HMS), etc.), a push agent (push agent). A push (push) server and a business cloud server 1380 may be included on cloud server 300. The device wake-up procedure may include the steps of:
s2101, the converged call application may request a push Token (push Token) from the mobile service.
S2102, the mobile service may be broadcast to the pushagent by sending.
S2103, after receiving the broadcast, the push agent may request a push Token from the push server 1372.
S2104, the push server 1372 returns a push Token a (push Token-a) to the push agent.
The push server 1372 may authenticate the electronic device 100, and returns a push token-B to the push agent after the authentication is successful. The authentication includes user-level authentication or device-level authentication, and the authentication process of the electronic device 100 may refer to the embodiment shown in fig. 13A, which is not described herein.
S2105, the push Token may return the push Token to the converged call application.
S2106, the converged call application can store the push Token-B to an application server.
S2107, closing the converged call application, and disconnecting the long connection with the application server.
The convergence call application is closed due to the situations of the electronic device 200 locking or unlocking or the user actively closing the application, etc., so that the long connection with the service cloud server 1380 is disconnected.
S2108, business cloud server 1380 may determine that electronic device 200 needs to be awakened.
The service cloud server 1380 may query whether the session identifier of the electronic device 200 is stored on the service cloud server 1380 after receiving the query request a for querying the session identifier of the electronic device 200. If the service cloud server 1380 does not query the session identifier of the electronic device 200, and the long connection between the service cloud server 1380 and the electronic device 200 has been disconnected, the service cloud server 1380 may determine that the electronic device 200 needs to be awakened.
In one example, when business cloud server 1380 does not query the session identification of electronic device 200, business cloud server 1380 may send a notification to electronic device 100 informing electronic device 100 that electronic device 200 is not awake. The electronic device 100 may receive an input that the user confirms to wake the electronic device 200, in response to which the electronic device 100 may send a wake indication to the business cloud server 1380. The business cloud server 1380, upon receiving the wake indication, may determine that the electronic device 200 needs to be woken up.
S2109, after determining that the electronic device 200 needs to be awakened, the service cloud server 1380 may send an awakening instruction to the push server 1372. Wherein, the wake-up instruction carries push Token-B.
S2108, the push server 1372 may send a wake-up message to the push agent when receiving the service cloud server 1380.
S2109, the pushagent may wake up the converged call application long connection to log into the service cloud server 1380 after receiving the wake up message.
In one example, the push Token-B carries an application identifier of the converged call application and a device identifier of the electronic device 200. After receiving the wake-up instruction carrying push Token-B, the push server 1372 may send a wake-up message to one or more push agents that establish a long connection with the push server 1372, where the wake-up message includes the later push Token-B. After receiving the wake-up message, the push agent on the electronic device 200 can determine whether the device identifier carried in the push Token-B is the device identifier of the electronic device 200, if yes, the push agent of the electronic device 200 can wake up the converged call application indicated by the application identifier in the push Token-B.
In one example, when the push agent of the electronic device 200 requests a push Token from the push server 1372, the application identifier of the converged call application and the device identifier of the electronic device 200 may be sent to the push server 1372. The push server 1372 may generate a push Token-B based on the application identifier of the converged call application and the device identifier of the electronic device 200. The push server 1372 may bind the application identifier of the converged call application and the device identifier of the electronic device 200 to a mapping relationship for storage. After receiving the wake-up instruction, the push server 1372 may determine, based on the push Token-B in the wake-up instruction, that the fusion call application on the electronic device 200 needs to be woken up from the local storage mapping relationship. The push server 1372 may send a wake-up message to the push agent of the electronic device 200. The wake-up message carries an application identifier of the converged call application, or the wake-up message carries an application identifier of the converged call application and an equipment identifier of the electronic equipment 200. After receiving the wake-up message, the pushagent of the electronic device 200 may wake up the person fusion call application of the electronic device 200.
In one example, electronic device 200 may not save push Token-B to business cloud server 1380 electronic device 100 may obtain push Token-B of electronic device 200 prior to waking electronic device 200, electronic device 100 may receive an input from a user confirming waking of electronic device 200, and in response to the input, electronic device 100 may send a wake indication to business cloud server 1380. The wake-up instruction carries a push Token-B of the electronic device 200. After receiving the wake-up instruction, the service cloud server 1380 may determine that the electronic device 200 needs to be woken up, and send the wake-up message carrying the push Token-B to a push agent of the electronic device 200.
The following describes the data packetization and depacketization processes in the embodiments of the present application.
After the electronic device 100 reads the specified data selected by the user, the specified data may be packaged. When transmitting the specified data over a network, alignment of the data to the network endian is required. Accordingly, a packet format is provided in embodiments of the present application.
Fig. 22 shows a data structure of a data packet provided in an embodiment of the present application.
As shown in fig. 22, the data packet may include a transmission header (franshead), and transmission data (fransdata). The TransData may be binary data of the specified data selected by the user.
The definition of the data packet may be as follows:
among them, in the above definition, a data type (type) field, a length (length) field, a sequence number (seq) field may be included in the TransHead. The data type field may be used to indicate the type of data transmitted in the data packet. For example, the type of the transmission data may include a RAW image format (RAW), a Command (CMD), a voice (voice), and the like. A length field may be used to indicate a data length of the transmission data. A sequence field may be used to indicate the sequence number of the packet in the plurality of packets after the specified data fragment.
Wherein the maximum length of the data packet cannot exceed 1500 bits due to limitations of the maximum transmission unit (maximum transmission unit, MTU) in the network transmission protocol. Therefore, it is necessary to cut the specified data into a plurality of data packets in accordance with the format of the data packet. Wherein, the TransHead includes a seq field to indicate the sequence number of the data packet. Therefore, the receiving end can conveniently assemble a plurality of data packets into complete specified data based on the seq field in the TransHead. Thus, regardless of whether the underlying protocol uses UDP, TCP, or quick-transfer (quick) protocols, the receiving end can still recover the specified data from the multiple data packets.
In one example, the seq field may not be set in the TransHead, and the underlying TCP protocol transmission may be used directly, so that the sequential transmission of the specified data may be accomplished at the TCP layer.
In one example, a transport protocol appropriate for a type of specified data may be used depending on the type. For example, the RTP protocol may be used for transmitting real-time streaming media data, and a File Transfer Protocol (FTP) may be used for transmitting file data.
The policies of data offloading and transmission provided in embodiments of the present application are described below.
Because the electronic device 100 shares the designated data selected by the user with the electronic device 200, the main link of the call can be walked, and the auxiliary link can also be walked. And the auxiliary links may be multiple. Thus, a strategy for determining data splitting is needed. The policy may be as follows:
1. the transmission speed takes precedence.
The electronic device 100 may select one or more data transmission links having the fastest transmission speed among the main link and the auxiliary link, or may concurrently transmit the specified data selected by the user among multiple links among the main link and the auxiliary link.
In one example, when electronic device 100 chooses to concurrently multiplex, electronic device 100 may redundantly repeat transmission of some data packets in multiple links, facilitating recovery of user-selected specified data from the data packets transmitted in multiple links by electronic device 200.
2. Low power consumption is a priority.
Electronic device 100 may select a link of the primary link and the secondary link that consumes less power for transmission to transmit the user-selected specified data.
3. Low cost is a priority.
The electronic device 100 may select the least costly link of the primary and secondary links to transmit the specified data in the user selection. For example, the user-selected designated data may be preferentially selected for transmission over the Wi-Fi link.
The following describes a procedure of a file revocation mechanism provided in an embodiment of the present application.
FIG. 23 illustrates a flow diagram of a file revocation mechanism provided in an embodiment of the present application.
As shown in fig. 23, the file revocation mechanism may comprise the steps of:
s2301, the electronic device 100 may transmit the designation data to the electronic device 200.
For details of the process and interface display of the electronic device 100 for transmitting the specified data selected by the user to the electronic device 200, reference may be made to the foregoing embodiments, which are not described herein.
S2302, the electronic device 200 may store the specified data after receiving the specified data, and record a storage path of the specified data.
Optionally, S2303, the electronic device 200 may monitor and record a save path of the specified data after the movement and/or copying.
S2304, the electronic device 100 may transmit a revocation indication to the electronic device 200.
Wherein the electronic device 100 may send a revocation indication to the electronic device 200 over the data transmission link. The specific interface display at the time of withdrawing the specified data may refer to the embodiment shown in fig. 4I, and will not be described herein.
S2305, the electronic device 200 may determine whether the save time of the specified data is time-out after receiving the withdrawal instruction.
S2306, when the storage time of the specified data does not expire, the electronic device 200 may find the storage path of the specified data, and delete the specified data.
In one example, the electronic device 200 may also directly find the storage path of the specified data and delete the specified data without determining whether to timeout after receiving the withdrawal instruction.
Alternatively, S2307, after the electronic device 200 deletes the specified data, the reception state of the specified data may be updated.
Wherein the electronic device 200 may display a revocation hint for prompting the user that the specified data has been revoked.
For example, the electronic device 200 may display an option of specifying data in the received file list, and mark the state of the option of specifying data as the revocation state.
The electronic device 100 in the embodiment of the present application performs rights management on the specified data sent to the electronic device 200.
In some embodiments, the electronic device 100 may also perform rights management on the specified data sent to the electronic device 200. The rights management includes burn-after-read (i.e., allowing only electronic device 200 to view, not allowing electronic device 200 to transfer), allowing only electronic device 200 to store, not allowing electronic device 200 to transfer, etc. Without being limited thereto, further rights management may be performed on the specified data, for example, the electronic device 200 is not allowed to modify the content in the specified data, and so on.
Wherein, the authority management can be performed on the specified data by the following modes:
1. the electronic device 100 may negotiate a key and a certificate with the electronic device 200 before the electronic device 100 transmits the specified data to the electronic device 200. The certificate includes therein rights that the electronic device 100 allows the electronic device 200 to operate on the specified data. The electronic device 100 may encrypt the specified data with the negotiated key and transmit the encrypted specified data to the electronic device 200. The electronic device 200, upon receiving the encrypted specified data, may store the encrypted specified data separately from the key device certificate negotiated before. The electronic device 200 may verify whether the certificate includes the authority of the specified operation when receiving the input of the specified operation (for example, opening, restoring, forwarding, etc.) performed on the specified data by the user, and if so, the electronic device 200 may continue to verify the key and perform the specified operation on the specified data after verifying the key. If there is no authority, the electronic device 200 may not perform the designating operation on the designating data.
2. The electronic device 100 may add rights information at the header of the specified data. When receiving the input of the designating operation of the designating data by the user, the electronic device 200 may determine whether the designating operation is performed on the designating data based on the authority information in the file header of the designating data. If the authority is available, the electronic device 200 may perform the designating operation on the designating data, and if not, the electronic device 200 refuses to perform the designating operation on the designating data.
The following describes a call scenario provided in the embodiments of the present application.
In some application scenarios, the counterpart of the call of the electronic device 100 may be a non-mobile phone type device. For example, the electronic device 100 may communicate with a seat device connected to a service center through the service center. Such as Interactive Voice Response (IVR) call systems. The electronic device 100 may send the designated data selected by the user to the seat device during the call with the seat device.
Fig. 24 shows an IVR call system provided in an embodiment of the present application.
As shown in fig. 24, the IVR call system may include an electronic device 100, an operator network, a service center, and an agent device.
The electronic device 100 may dial a service number of a service center, and establish a call link with the service center through an operator network. The service center may establish a call link with the agent device to transfer the call of the electronic device 100 to the agent device.
The electronic device 100 can communicate with the seat device through a communication link composed of a communication path from the operator network to the service center and a communication path from the service center to the seat device. One or more auxiliary links may be created between the electronic device 100 and the seat device, and the designated data selected by the user may be sent to the seat device through the one or more auxiliary links.
In one example, the electronic device 100 may establish an auxiliary link 1 with the service center, and transmit the designated data selected by the user to the agent device through the auxiliary link 1 and the call link between the service center and the agent device.
In one example, the electronic device 100 may establish an auxiliary link 2 with the agent device and transmit the user selected designated data to the agent device over the auxiliary link 2.
In one example, the electronic device 100 may transmit the user-selected designated data to the seat device using both the auxiliary link 1 and the call link between the service center and the seat device, and the auxiliary link 2.
Fig. 25 shows a flow of establishing an auxiliary link in an IVR call system according to an embodiment of the present application.
As shown in fig. 25, the procedure for establishing the auxiliary link in the IVR call system may include the following steps:
s2501, the electronic device 100 establishes a call link with the agent device through the carrier network and the service center.
The electronic device 100 can talk to the seat device based on the talk link.
S2502, the electronic device 100 may send the call binding information a to the addressing server.
The call binding information a includes a communication identifier a of the electronic device 100, a phone number of the electronic device 100, a service number of a service center, and a call device type a (e.g., a mobile phone) of the electronic device 100.
After receiving the call binding information a, the addressing server may save the call binding information a.
S2503, the service center may send the call binding information B to the addressing server.
The call binding information B includes a communication identifier B of the service center, a phone number of the electronic device 100, a service number of the service center, and a call device type B of the service center (e.g., the service center).
After receiving the call binding information B, the addressing server may save the call binding information B.
S2504, the agent device may send call binding information C to the addressing server.
The call binding information C includes a communication identifier C of the agent device, a phone number of the electronic device 100, a service number of the service center, and a call device type C of the agent device (e.g., the agent device).
After receiving the call binding information C, the addressing server may save the call binding information C.
S2505, the electronic device 100 may send a query request a to the addressing server, where the query request a may be used to query the communication identifier B of the service center and/or the communication identifier C of the agent device.
The query request a carries a call device type B and/or a call device type C. When the query request A carries the call equipment type B, the query request A is used for querying the communication identifier B of the service center. When the query request a carries the call equipment type C, the query request a is used for querying the communication identifier C of the seat equipment. When the query request A carries the call equipment type B and the call equipment type C, the query request A is used for querying the communication identifier B of the service center and the communication identifier C of the seat equipment.
S2506, the addressing server may return, after receiving the query request a, the communication identifier B of the service center and/or the communication identifier C of the agent device to the electronic device 100.
S2507, the service center may send a query request B to the addressing server, where the query request B may be used to query the communication identifier a of the electronic device 100.
The query request B carries the call device type a.
S2508, the addressing server may return the communication identifier a of the electronic device 100 to the service center after receiving the query request B.
S2509, the agent device may send a query request C to the addressing server, where the query request C may be used to query the communication identifier a of the electronic device 100.
The query request B carries the call device type a.
S2510, the addressing server may return the communication identifier a of the electronic device 100 to the seat device after receiving the query request B.
S2511, the electronic device 100 and the service center establish the auxiliary link 1 through the communication identifier a and the communication identifier B.
S2512, the electronic device 100 and the agent device establish the auxiliary link 2 through the communication identifier a and the communication identifier C.
In this embodiment of the present application, the process of acquiring the communication identifier a by the electronic device 100 in the embodiment shown in fig. 13A and fig. 15 to 20 may be referred to for the acquisition of the communication identifier a by the electronic device 100 in the embodiment shown in fig. 13A, the acquisition of the communication identifier B by the service center, and the acquisition of the communication identifier C by the seat device, which are not described herein again.
The addressing server in the embodiment of the present application may be the service cloud server 1380 in the embodiments shown in fig. 13A and fig. 15-20.
The process of establishing the auxiliary link 1 and the auxiliary link 2 in the embodiment of the present application may refer to the process of establishing the link between the electronic device 100 and the electronic device 200 in the embodiment shown in fig. 15 to 20, which is not described herein.
The above embodiments are merely for illustrating the technical solution of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application.

Claims (25)

1. The data sharing method is characterized by comprising the following steps of:
the method comprises the steps that a first electronic device displays a call interface, wherein the call interface comprises contact information of a second electronic device, and the call interface is used for indicating that the first electronic device and the second electronic device are in communication with an operator;
The first electronic equipment receives a first input for sharing first designated data in the process of communicating with the second electronic equipment by the operator;
responding to the first input, displaying a first sharing interface by the first electronic equipment, and displaying a first option corresponding to the second electronic equipment in the first sharing interface;
the first electronic device receiving a second input to the first option;
in response to the second input, the first electronic device transmits the first specified data to the second electronic device.
2. The method of claim 1, wherein a call marker is displayed around the first option, the call marker indicating that the first option is an option corresponding to a second electronic device that is communicating with the first electronic device.
3. The method of claim 1 or 2, wherein contact information corresponding to the second electronic device is further displayed around the first option, and the contact information corresponding to the second electronic device includes one or more of the following: the telephone number of the second electronic device, the name of the contact person, the head portrait of the contact person, and the call application mark; the call application mark is used for indicating the call application to which the call interface belongs.
4. A method according to any of claims 1-3, wherein said first electronic device, in response to said second input, transmits said first designation data to said second electronic device, comprising in particular:
in response to the second input, the first electronic device sends a data transmission request to the second electronic device, the data transmission request being for requesting transmission of the first specified data to the second electronic device;
the first electronic equipment receives confirmation information sent by the second electronic equipment, wherein the confirmation information is used for indicating that the second electronic equipment allows the first electronic equipment to send the first specified data to the second electronic equipment;
and the first electronic device sends the first specified data to the second electronic device in response to the confirmation information.
5. The method according to claim 4, wherein the method further comprises:
in response to the second input, the first electronic device displays a first prompt for prompting a user that the first electronic device is requesting to send the first specified data to the second electronic device.
6. The method according to any one of claims 1-5, further comprising:
the first electronic device displays a second prompt and a sending progress bar in the process of sending the first appointed data to the second electronic device, the second prompt is used for prompting a user that the first electronic device is sending the first appointed data to the second electronic device, and the sending progress bar is used for prompting the user that the first electronic device sends the first appointed data to the second electronic device.
7. The method of claim 6, wherein the method further comprises:
and the first electronic device displays a transmission cancellation control in the process of transmitting the first appointed data to the second electronic device, wherein the cancellation control is used for triggering the first electronic device to pause transmitting the first appointed data to the second electronic device.
8. The method according to any one of claims 1-7, further comprising:
after the first electronic device sends the first specified data to the second electronic device, a third prompt and a withdrawal control are displayed, wherein the third prompt is used for prompting the user that the first electronic device has sent the first specified data to the second electronic device, the withdrawal control is used for triggering the first electronic device to send a withdrawal instruction to the second electronic device, and the withdrawal instruction is used for requesting the second electronic device to delete the first specified data sent by the first electronic device.
9. The method of any one of claims 1-8, wherein the first sharing interface is a system sharing interface, and the first sharing interface further includes one or more options of a nearby device discovered by the first electronic device through a near field communication technology, and one or more service options, where the options of the nearby device are used to trigger the first electronic device to share the first specified data to the nearby device, and the service options are used to trigger the first electronic device to share the first specified data through an application program or a protocol corresponding to the service options.
10. The method of any of claims 1-9, wherein the first sharing interface is an intra-application sharing interface of a first application, the first sharing interface further comprising one or more functional options in the first application;
the first electronic device receives a first input for sharing first designated data in the process of communicating with the second electronic device by the operator, and specifically includes:
the first electronic device displays a first interface of a first application in the process of communicating with the second electronic device through the operator, wherein the first interface comprises the first appointed data and a first control, and the first control is used for sharing the first appointed data, and the sharing of the first appointed data comprises sharing of an acquisition link of the first appointed data;
The first electronic device receives the first input to the first control.
11. The method of any one of claims 1-10, wherein the first specified data comprises one or more of: pictures, audio, video, document files, location information, links, contact information, calendars, application packages, memos.
12. The method according to any one of claims 1-11, further comprising:
after the first electronic device sends the first specified data to the second electronic device, the first electronic device and the second electronic device end the operator call;
the first electronic device receives a third input for sharing the second designated data;
responsive to the third input, the first electronic device displays a second sharing interface including options for one or more recently interacted with contacts; wherein the most recently interacted contact is a contact interacted with the first electronic device within a most recent period of time when the first electronic device receives the third input, and the one or more recently interacted contact options include a second option corresponding to a third electronic device;
The first electronic device receives a second input of the second option;
in response to the second input, the first electronic device sends the second specified data to the third electronic device.
13. The method of claim 12, wherein the contact information of the most recently interacted contact is displayed around the option of the most recently interacted contact, the contact information of the most recently interacted contact including one or more of: the contact information of the most recently interacted contact includes one or more of: the telephone number of the latest interactive contact, the contact name of the latest interactive contact, the contact head portrait of the latest interactive contact and a contact application mark; the contact application mark is used for representing an application used when the first electronic device interacts with the latest interaction contact.
14. The method of claim 13, wherein the interaction comprises any one of: operator calls, receives short messages, sends short messages, over-the-top OTT calls, receives or sends private messages within social applications.
15. The method of any of claims 1-14, wherein prior to the first electronic device transmitting the first specified data to the second electronic device, the method further comprises:
The first electronic equipment and the second electronic equipment establish a first data transmission link;
the responding to the second input, the first electronic device sends the first appointed data to the second electronic device, specifically comprising:
in response to the second input, the first electronic device transmits the first specified data to the second electronic device over the first data transmission link.
16. The method of claim 15, wherein the method further comprises:
the first electronic equipment establishes the first data transmission link with the second electronic equipment before receiving the first input in the process of communicating with the second electronic equipment by the operator;
the responding to the first input, the first electronic device displaying a first sharing interface, and displaying a first option corresponding to the second electronic device in the first sharing interface, specifically including:
and responding to the first input, the first electronic equipment displays the first sharing interface, wherein the first sharing interface comprises the first option corresponding to the second electronic equipment.
17. The method of claim 15, wherein the responding to the first input, the first electronic device displaying a first sharing interface, and displaying a first option corresponding to the second electronic device in the first sharing interface, specifically includes:
responsive to the first input, the first electronic device displays the first sharing interface;
after the first electronic device and the second electronic device establish the first data transmission link, the first electronic device displays a first option corresponding to the second electronic device in the first sharing interface.
18. The method of claim 15, wherein the first electronic device, in response to the second input, transmits the first specified data to the second electronic device over the first data transmission link, comprising:
in response to the second input, the first electronic device establishes the first data transmission link with the second electronic device;
after the first data transmission link is established, the first electronic device sends the first specified data to the second electronic device on the first data transmission link.
19. The method according to any of claims 15-18, wherein the first data transmission link comprises one or more of the following links: and the first electronic equipment and the second electronic equipment are used for carrying out a main link of operator communication and one or more auxiliary links between the first electronic equipment and the second electronic equipment.
20. The method of claim 19, wherein the one or more auxiliary links comprise one or more of: internet protocol IP direct links, point-to-point P2P links, server relay links.
21. The method according to claim 19 or 20, wherein when the first data transmission link comprises the one or more auxiliary links, the first electronic device establishes a first data transmission link with the second electronic device, comprising in particular:
the first electronic equipment acquires a first communication identifier distributed by a cloud server for the first electronic equipment;
the first electronic equipment sends the telephone number of the first electronic equipment and the first communication identifier to the cloud server for binding and storing;
the first electronic device sends a first query request to the cloud server, wherein the first query request comprises the telephone number of the second electronic device, and the first query request is used for querying a second communication identifier of the second electronic device;
The first electronic equipment receives the second communication identifier sent by the cloud server;
the first electronic device establishes the auxiliary link with the electronic device based on the first communication identifier and the second communication identifier.
22. The method of claim 21, wherein the auxiliary link comprises a P2P link; the first communication identifier is a first session identifier used when the first electronic device performs session communication with the cloud server, and the second communication identifier is a second session identifier used when the second electronic device performs session communication with the cloud server;
the first electronic device establishes the auxiliary link with the electronic device based on the first communication identifier and the second communication identifier, and specifically includes:
the first electronic equipment sends a first acquisition request to the cloud server, wherein the first acquisition request is used for requesting to acquire first NAT public network information of the first electronic equipment;
the first electronic equipment receives the first NAT public network information sent by the cloud server, wherein the first NAT public network information comprises a public network IP address of the first electronic equipment and a port number of a public network-to-internal network of the first electronic equipment;
The first electronic device sends a first message to the cloud server, wherein the first message carries the second session identifier and the first NAT public network information, and the first message is used for the first electronic device and the second electronic device to exchange NAT public network information;
the first electronic device receives second NAT public network information of the second electronic device, which is sent by the cloud server, wherein the second NAT public network information comprises a public network IP address of the second electronic device and a port number of a public network-to-internal network of the second electronic device;
and the first electronic equipment establishes a P2P link with the second electronic equipment based on the first NAT public network information and the second NAT public network information.
23. The method of claim 21, wherein the auxiliary link comprises a server relay link; the first communication identifier is a first session identifier used when the first electronic device performs session communication with the cloud server, and the second communication identifier is a second session identifier used when the second electronic device performs session communication with the cloud server;
the first electronic device establishes the auxiliary link with the electronic device based on the first communication identifier and the second communication identifier, and specifically includes:
The first electronic equipment sends a second acquisition request, wherein the second acquisition request is used for acquiring a first relay address of the first electronic equipment;
the first electronic equipment receives a first relay address sent by the cloud server;
the first electronic device sends a first message to the cloud server, wherein the first message carries the second session identifier and the first relay address, and the first message is used for exchanging the relay address between the first electronic device and the second electronic device;
the first electronic device receives a second relay address of the second electronic device, which is sent by the cloud server;
after the first electronic equipment and the second electronic equipment exchange the relay address, the first electronic equipment and the second electronic equipment establish a server relay link.
24. An electronic device, being a first electronic device, comprising a display screen, one or more processors, and one or more memories, the display screen, the one or more memories being coupled to the one or more processors, the one or more memories being configured to store computer program code, the computer program code comprising computer instructions that, when executed by the one or more processors, implement the method of any of claims 1-23.
25. A computer storage medium storing computer instructions which, when executed by a processor, implement the method of any one of claims 1-23.
CN202211067060.6A 2022-09-01 2022-09-01 Data sharing method, system and related device Pending CN117676480A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211067060.6A CN117676480A (en) 2022-09-01 2022-09-01 Data sharing method, system and related device
PCT/CN2023/115722 WO2024046347A1 (en) 2022-09-01 2023-08-30 Data sharing method and system, and related apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211067060.6A CN117676480A (en) 2022-09-01 2022-09-01 Data sharing method, system and related device

Publications (1)

Publication Number Publication Date
CN117676480A true CN117676480A (en) 2024-03-08

Family

ID=90065055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211067060.6A Pending CN117676480A (en) 2022-09-01 2022-09-01 Data sharing method, system and related device

Country Status (2)

Country Link
CN (1) CN117676480A (en)
WO (1) WO2024046347A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2835952A4 (en) * 2012-12-27 2015-06-03 Huawei Tech Co Ltd Information sharing method and device
CN110191045B (en) * 2019-05-05 2021-06-01 珠海格力电器股份有限公司 Information sharing method and device, terminal and readable storage medium
CN112437190B (en) * 2019-08-08 2023-04-18 华为技术有限公司 Data sharing method, graphical user interface, related device and system
CN114697929A (en) * 2020-12-31 2022-07-01 华为技术有限公司 Connection establishing method and electronic equipment
CN113382392B (en) * 2021-02-10 2023-03-24 华为技术有限公司 Communication method and electronic device

Also Published As

Publication number Publication date
WO2024046347A1 (en) 2024-03-07

Similar Documents

Publication Publication Date Title
US9300706B1 (en) Digital photograph group editing and access
CN105359560B (en) Pass through the service provision of intelligent personal gateway
WO2021164445A1 (en) Notification processing method, electronic apparatus, and system
KR20090017983A (en) A portable cellular enhancer
CN110198362B (en) Method and system for adding intelligent household equipment into contact
WO2022068513A1 (en) Wireless communication method and terminal device
US11871478B2 (en) Bluetooth low energy-based communication method and related apparatus
CN111628916A (en) Method for cooperation of intelligent sound box and electronic equipment
WO2021233161A1 (en) Family schedule fusion method and apparatus
WO2012097702A2 (en) Method and mobile terminal for processing data in message
EP4187872A1 (en) Task processing method and related electronic device
US11470153B2 (en) Photo sharing method and electronic device
WO2023011386A1 (en) Whitelist control method in beidou communication system and related device
CN113676902B (en) System, method and electronic equipment for providing wireless internet surfing
WO2020051916A1 (en) Method for transmitting information and electronic device
WO2024046347A1 (en) Data sharing method and system, and related apparatus
CN113746945B (en) Reverse address resolution method and electronic equipment
WO2020216144A1 (en) Method for adding mail contact, and electronic device
CN114915944A (en) Communication method and electronic device
CN114117367A (en) Data protection method and electronic equipment
CN114173317B (en) Method for transmitting data and electronic equipment
WO2022022435A1 (en) Method for quickly joining conference and related device
CN116016418B (en) Information interaction method and electronic equipment
WO2024104122A1 (en) Sharing method, electronic device, and computer storage medium
WO2023051229A1 (en) Method and apparatus for identifying device, and electronic device and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination