WO2023011220A1 - Procédé de synchronisation de données, terminal, et système - Google Patents

Procédé de synchronisation de données, terminal, et système Download PDF

Info

Publication number
WO2023011220A1
WO2023011220A1 PCT/CN2022/107489 CN2022107489W WO2023011220A1 WO 2023011220 A1 WO2023011220 A1 WO 2023011220A1 CN 2022107489 W CN2022107489 W CN 2022107489W WO 2023011220 A1 WO2023011220 A1 WO 2023011220A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
state
data
server
request
Prior art date
Application number
PCT/CN2022/107489
Other languages
English (en)
Chinese (zh)
Inventor
陈建锋
高长寿
黄翔
李雪峰
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023011220A1 publication Critical patent/WO2023011220A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session

Definitions

  • the embodiments of the present invention relate to the technical field of communication, and in particular, to a data synchronization method, terminal and system.
  • Data synchronization refers to data consistency among multiple terminals.
  • the data synchronization service refers to a service that uses a server to keep data consistent among multiple terminals. For example, when data on a certain terminal changes (such as adding, deleting, or modifying data in a certain application), the terminal can update the changed data to the server. When the data on the server changes, the server notifies each terminal to obtain updated data from the server. In this way, the data on the terminal can be kept consistent with the data on the server.
  • the terminal when the user frequently operates the data applied on a certain terminal, the terminal will frequently update the data, which increases the resource consumption of the terminal and at the same time increases the pressure on the server. If other terminals do not pay attention to the updated data, it becomes meaningless for the terminal to frequently update data. Therefore, the existing data synchronization method has the problem of contradiction between real-time synchronization and resource consumption.
  • the data synchronization method, terminal and system provided by the embodiments of the present application can not only ensure the real-time requirement of user data synchronization, but also reduce resource consumption to the greatest extent.
  • the embodiment of the present application provides a data synchronization method.
  • the execution subject of the method may be a terminal, or a component located in the terminal (for example, a chip, a chip system or a processor, etc.), and the following execution subject is
  • the terminal is described as an example.
  • the method includes: the first terminal receives the user's first operation on the first application program on the first terminal; the first terminal displays the first interface in response to the first operation, and the content of the first interface is the same as that of the second interface displayed by the second terminal The content is different; the first terminal receives the user's third operation on the first interface; in response to the third operation, the first terminal uploads the data of the first application to the server, and the second terminal obtains the data of the first application from the server And a third interface is displayed, wherein the data of the first application program includes the data of the first interface; the third interface is the same as the first interface. In this way, when the user operates the application program on the first terminal, the second terminal may be triggered to acquire data of the application program from the server.
  • the user when the second terminal does not have high requirements for real-time synchronization, the user operates the memo on the first terminal, and the first terminal can lengthen the interval between synchronous update data, which can reduce the number of synchronization requests and number, thereby saving network bandwidth and power consumption, and reducing the number of server IO connections.
  • the server can consolidate notifications, reduce the number of notifications sent, and reduce server resources and network bandwidth.
  • the second terminal has a high requirement for real-time synchronization
  • the user operates the memo on the first terminal, and the first terminal can update data in real time, maintaining high real-time synchronization and ensuring user experience in using the memo.
  • the first terminal receives a fourth user operation on the first interface; in response to the fourth operation, the first terminal uploads the data of the first application program to the server and displays the fourth interface, and, The second terminal acquires the data of the first application program from the server and displays the fifth interface, wherein the data of the first application program includes the data of the fourth interface; the fifth interface is the same as the fourth interface.
  • the displaying the first interface by the first terminal in response to the first operation includes: sending a first request to the server, the first request is used to request establishment of the first session, and determining the first session according to the first operation
  • the first state of the first state is a low real-time state
  • the server is used to determine the second state of the second session of the second terminal, the second state of the second session is determined according to the first request, the second state of the second session It is a low real-time state.
  • the user when the second terminal does not have high requirements for real-time synchronization, the user operates the memo on the first terminal, and the first terminal can lengthen the interval between synchronous update data, which can reduce the number of synchronization requests and number, thereby saving network bandwidth and power consumption, and reducing the number of server IO connections.
  • the server can consolidate notifications, reduce the number of notifications sent, and reduce server resources and network bandwidth.
  • the first terminal sends a third request to the server in response to the third operation, and the third request is used to request switching the low real-time status to a high real-time status; the second terminal is used to obtain the third request from the server The second state of the second session, and update the second state of the second session to a high real-time state.
  • the user when the second terminal has high requirements for synchronization and real-time performance, the user operates the memo on the first terminal, and the first terminal can update the data in real time, which can maintain high real-time synchronization and ensure the user's use Memo experience.
  • the first terminal uploads the data of the first application program to the server, including: the first state is a low real-time state, and the terminal uploads the data of the first application program to the server after a third preset time interval, And the second terminal obtains the data of the first application program from the server after the third preset time interval; the first state is a high real-time state, the terminal uploads the data of the first application program to the server in real time, and the second terminal obtains the data of the first application program from the server in real time Get the data of the first application.
  • the first request carries the state of the first application program on the first terminal, and the first state of the first session and the second state of the second session are determined according to the state of the first application program.
  • the application program on the first terminal can set a synchronization real-time policy according to its own state.
  • the first request carries a real-time policy parameter
  • the first state of the first session and the second state of the second session are determined according to the real-time policy parameter
  • the real-time policy parameter is determined according to the first terminal Determined on the state of the first application.
  • the first terminal receives the sixth operation of the user on the first application program on the first terminal; the first terminal sends a seventh request to the server in response to the sixth operation, and the seventh request uses to request deletion of the session.
  • the first state or the second state is a low real-time state, and the real-time policy is to update data asynchronously; the first or second state is a high real-time state, and the real-time policy is to update data synchronously.
  • the first application program includes a method application program and a third-party application program
  • the method application program includes at least one of an address book, a memo, a calendar, a bookmark, a document, a short message, an email, and a photo.
  • the embodiment of the present application provides a data synchronization method.
  • the execution subject of the method may be a terminal, or a component located in the terminal (for example, a chip, a chip system or a processor, etc.), and the following execution subject is The terminal is described as an example.
  • the method includes: the second terminal receives the user's second operation on the first application program on the second terminal; the second terminal displays a second interface in response to the second operation, and the content of the second interface is different from the content of the first interface of the first terminal Different; when the first terminal receives the user's third operation on the first interface, and responds to the third operation, when the first terminal uploads the data of the first application program to the server, the second terminal obtains the data of the first application program from the server And a third interface is displayed, wherein the data of the first application program includes the data of the first interface; the third interface is the same as the first interface.
  • it also includes: when the first terminal receives the user's fourth operation on the first interface, and in response to the fourth operation, the first terminal uploads the data of the first application program to the server and displays the fourth interface , the second terminal acquires data of the first application program from the server and displays a fifth interface, wherein the data of the first application program includes data of the fourth interface; the fifth interface is the same as the fourth interface.
  • the second terminal displays the second interface after a first preset time interval.
  • the sixth interface is the same as the first interface.
  • the displaying the second interface by the second terminal in response to the second operation includes: sending a second request to the server, where the second request is used to request establishment of the second session, and the server determines the second state of the second session, The second state of the second session is determined according to the first request sent by the first terminal, and the second state of the second session is a low real-time state.
  • the third request is used to request switching the low real-time status to a high real-time status; the second terminal obtains the second the second state of the session, and update the second state of the second session to a high real-time state.
  • obtaining the second state of the second session by the second terminal from the server includes: the second terminal sends a fourth request to the server according to a second preset time interval, and the fourth request is used to obtain the latest state; the second The second terminal receives the latest status sent by the server, and updates the second status of the second session to a high real-time status.
  • the second terminal obtains the data of the first application program from the server, including: the second terminal obtains the data change notification from the server according to the real-time policy corresponding to the second state; the second terminal sends the data change notification to the The server sends a fifth request, and the fifth request is used to request to obtain update data; the second terminal obtains update data from the server according to the real-time policy corresponding to the second state, and the server is used to receive the fifth request, and send the update data to the second terminal according to the fifth request.
  • the second terminal sends update data.
  • the second terminal obtains the data of the first application program from the server, including: the second terminal queries the data change on the server at a second preset time interval; when the data on the server changes, the second terminal The second terminal sends a sixth request to the server, and the sixth request is used to request to obtain update data; the second terminal obtains update data from the server according to the real-time policy corresponding to the second state, and the server is used to receive the sixth request, and according to the sixth Request to send update data to the second terminal.
  • the first request carries the state of the first application program on the first terminal, and the first state of the first session and the second state of the second session are determined according to the state of the first application program.
  • the first request carries a real-time policy parameter
  • the first state of the first session and the second state of the second session are determined according to the real-time policy parameter
  • the real-time policy parameter is determined according to the first terminal Determined on the state of the first application.
  • the first terminal receives the user's sixth operation on the first application program on the first terminal; the first terminal sends a seventh request to the server in response to the sixth operation, and the seventh request is used to request deletion session; the second terminal receives the seventh operation of the user on the first application program on the second terminal; the second terminal sends an eighth request to the server in response to the seventh operation, and the eighth request is used to request deletion of the session.
  • the first state or the second state is a low real-time state, and the real-time policy is to update data asynchronously; the first or second state is a high real-time state, and the real-time policy is to update data synchronously.
  • the first application program includes a method application program and a third-party application program
  • the method application program includes at least one of an address book, a memo, a calendar, a bookmark, a document, a short message, an email, and a photo.
  • the embodiment of the present application provides a data synchronization system, the system includes: the first terminal receives the user's first operation on the first application program on the first terminal; the first terminal displays the first operation in response to the first operation An interface; the second terminal receives the user's second operation on the first application program on the second terminal; the second terminal displays the second interface in response to the second operation, and the content of the second interface is different from the content of the first interface; the first The terminal receives the user's third operation on the first interface; in response to the third operation, the first terminal uploads the data of the first application program to the server, and the second terminal obtains the data of the first application program from the server and displays the third interface , wherein the data of the first application program includes the data of the first interface; the third interface is the same as the first interface.
  • the user when the second terminal does not have high requirements for real-time synchronization, the user operates the memo on the first terminal, and the first terminal can lengthen the interval between synchronous update data, which can reduce the number of synchronization requests and number, thereby saving network bandwidth and power consumption, and reducing the number of server IO connections.
  • the server can consolidate notifications, reduce the number of notifications sent, and reduce server resources and network bandwidth.
  • the second terminal has high requirements for real-time synchronization
  • the user operates the memo on the first terminal, and the first terminal can update data in real time, which can maintain high real-time synchronization and ensure user experience in using the memo.
  • the first terminal receives the user's fourth operation on the first interface; in response to the fourth operation, the first terminal uploads the data of the first application program to the server and displays the fourth interface, and the second terminal
  • the data of the first application program is obtained from the server and a fifth interface is displayed, wherein the data of the first application program includes the data of the fourth interface; the fifth interface is the same as the fourth interface.
  • the second terminal displays the second interface after a first preset time interval.
  • the sixth interface is the same as the first interface.
  • the displaying the first interface by the first terminal in response to the first operation includes: sending a first request to the server, the first request is used to request establishment of the first session, and determining the first session according to the first operation In the first state, the first state is a low real-time state; the second terminal responds to the second operation, and displaying the second interface includes: sending a second request to the server, the second request is used to request the establishment of a second session, and the server determines that the second The second state of the second session, the second state of the second session is determined according to the first request, and the second state of the second session is a low real-time state.
  • the first terminal sends a third request to the server in response to the third operation, and the third request is used to request to switch the low real-time status to a high real-time status;
  • the second terminal obtains the second session from the server the second state of the second session, and update the second state of the second session to a high real-time state.
  • obtaining the second state of the second session by the second terminal from the server includes: the second terminal sends a fourth request to the server according to a second preset time interval, and the fourth request is used to obtain the latest state; the second The second terminal receives the latest status sent by the server, and updates the second status of the second session to a high real-time status.
  • the first terminal uploads the data of the first application program to the server, including: the first state is a low real-time state, and the terminal uploads the data of the first application program to the server after a third preset time interval, And the second terminal obtains the data of the first application program from the server after the third preset time interval; the first state is a high real-time state, the terminal uploads the data of the first application program to the server in real time, and the second terminal obtains the data of the first application program from the server in real time Get the data of the first application.
  • the second terminal obtains the data of the first application program from the server, including: the second terminal obtains the data change notification from the server according to the real-time policy corresponding to the second state; the second terminal sends the data change notification to the The server sends a fifth request, and the fifth request is used to request to obtain update data; the second terminal obtains update data from the server according to the real-time policy corresponding to the second state, and the server is used to receive the fifth request, and send the update data to the second terminal according to the fifth request.
  • the second terminal sends update data.
  • the second terminal obtains the data of the first application program from the server, including: the second terminal queries the data change on the server at a second preset time interval; when the data on the server changes, the second terminal The second terminal sends a sixth request to the server, and the sixth request is used to request to obtain update data; the second terminal obtains update data from the server according to the real-time policy corresponding to the second state, and the server is used to receive the sixth request, and according to the sixth Request to send update data to the second terminal.
  • the first request carries the state of the first application program on the first terminal, and the first state of the first session and the second state of the second session are determined according to the state of the first application program.
  • the first request carries a real-time policy parameter
  • the first state of the first session and the second state of the second session are determined according to the real-time policy parameter
  • the real-time policy parameter is determined according to the first terminal Determined on the state of the first application.
  • the first terminal receives the user's sixth operation on the first application program on the first terminal; the first terminal sends a seventh request to the server in response to the sixth operation, and the seventh request is used to request deletion session; the second terminal receives the seventh operation of the user on the first application program on the second terminal; the second terminal sends an eighth request to the server in response to the seventh operation, and the eighth request is used to request deletion of the session.
  • the first state or the second state is a low real-time state, and the real-time policy is to update data asynchronously; the first or second state is a high real-time state, and the real-time policy is to update data synchronously.
  • the first application program includes a system application program and a third-party application program
  • the system application program includes at least one of an address book, a memo, a calendar, a bookmark, a document, a short message, an email, and a photo.
  • the embodiment of the present application provides a terminal, which is applied to the service access method in the first aspect.
  • the embodiment of the present application provides a computer-readable storage medium, the computer-readable storage medium includes computer instructions, and when the computer instructions are run on the terminal, the terminal executes the first aspect or the second aspect. Aspect's service access method.
  • the embodiment of the present application provides a computer program.
  • the program is invoked by a processor, the service access method in the first aspect or the second aspect is executed.
  • the embodiment of the present application provides a chip system, including one or more processors, and when the one or more processors execute instructions, the one or more processors execute the first aspect or the second Aspect's service access method.
  • FIG. 1 is a schematic structural diagram of a system provided by an embodiment of the present application.
  • FIG. 2(1) is a schematic structural diagram of a terminal provided in an embodiment of the present application.
  • FIG. 2(2) is a system framework diagram of a terminal provided in an embodiment of the present application.
  • Fig. 3 is a schematic flow chart of a data synchronization method
  • FIG. 4(1) is a schematic flow diagram of the session creation phase of a data synchronization method provided by the embodiment of the present application.
  • FIG. 4(2) is a schematic flowchart of the session creation phase of a data synchronization method provided by the embodiment of the present application.
  • FIG. 4(3) is a schematic flow diagram of the session creation phase of a data synchronization method provided by the embodiment of the present application.
  • FIG. 4(4) is a schematic flow diagram of the session creation phase of a data synchronization method provided by the embodiment of the present application.
  • FIG. 5 is a schematic diagram of session management of a server for the same user provided by an embodiment of the present application.
  • Fig. 6 (1a) is a schematic flow chart of the data synchronization stage of a data synchronization method provided by the embodiment of the present application;
  • FIG. 6(1b) is a schematic flow diagram of the data synchronization stage of a data synchronization method provided by the embodiment of the present application;
  • Figure 6(2a) is a schematic flow diagram of the data synchronization stage of a data synchronization method provided by the embodiment of the present application;
  • FIG. 6(2b) is a schematic flow diagram of the data synchronization stage of a data synchronization method provided by the embodiment of the present application;
  • FIG. 6(3) is a schematic flowchart of the data synchronization stage of another data synchronization method provided by the embodiment of the present application.
  • FIG. 6(4) is a schematic flow diagram of another data synchronization method in the deletion session phase provided by the embodiment of the present application.
  • FIG. 7 is a schematic diagram of a display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 8 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 9 (1) in FIG. 9 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 9 (2) in FIG. 9 is a schematic diagram of a display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 9 (3) in FIG. 9 is a schematic diagram of a display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 10 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 11 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 11 (2) in FIG. 11 is a schematic diagram of another display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 12 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 13 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 14 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 14 (2) in FIG. 14 is a schematic diagram of another display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 15 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 15 (2) in FIG. 15 is a schematic diagram of another display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 15 is a schematic diagram of another display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 16 (1) in FIG. 16 is a schematic diagram of another display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 16 (2) in FIG. 16 is a schematic diagram of another display page of the first mobile phone provided by the embodiment of the present application.
  • FIG. 17 (1) in FIG. 17 is a schematic diagram of another display page of the second mobile phone provided by the embodiment of the present application.
  • FIG. 17 (2) in FIG. 17 is a schematic diagram of another display page of the first mobile phone provided in the embodiment of the present application.
  • first and second are used for descriptive purposes only, and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of indicated technical features. Thus, a feature defined as “first” and “second” may explicitly or implicitly include one or more of these features. In the description of this embodiment, unless otherwise specified, “plurality” means two or more.
  • the system 100 may include a server 110 and multiple terminals (such as a first terminal 120 , a second terminal 130 , a third terminal 140 , a fourth terminal 150 and a fifth terminal 160 ).
  • the above-mentioned terminals can be mobile phones, tablet computers, desktops, laptops, notebook computers, ultra-mobile personal computers (Ultra-mobile Personal Computer, UMPC), handheld computers, netbooks, personal digital assistants (Personal Digital Assistant, PDA) , a wearable terminal, a television, a virtual reality device, and other devices with a display function, the specific form of the terminal is not particularly limited in this embodiment of the application.
  • both the first terminal 120 and the fifth terminal 160 can be mobile phones
  • the second terminal 130 can be a tablet computer
  • the third terminal 140 can be a TV set
  • the fourth terminal 150 can be a notebook computer .
  • FIG. 2(1) is a structural block diagram of the above-mentioned terminal.
  • the terminals may include a processor 210, an external memory interface 220, an internal memory 221, a universal serial Bus (universal serial bus, USB) interface 230, charging management module 240, power management module 241, battery 242, antenna 1, antenna 2, mobile communication module 250, wireless communication module 260, audio module 270, speaker 270A, receiver 270B, Microphone 270C, earphone jack 270D, sensor module 280, button 290, motor 291, indicator 292, camera 293, display screen 294, and subscriber identification module (subscriber identification module, SIM) card interface 295, etc.
  • a processor 210 an external memory interface 220, an internal memory 221, a universal serial Bus (universal serial bus, USB) interface 230, charging management module 240, power management module 241, battery 242, antenna 1, antenna 2, mobile communication module 250, wireless communication module 260, audio module 270, speaker 270A, receiver 270B, Microphone 270C, earphone jack 270D, sensor module 280, button 290, motor 291, indicator 292, camera 29
  • the sensor module 280 may include a pressure sensor 280A, a gyro sensor 280B, an air pressure sensor 280C, a magnetic sensor 280D, an acceleration sensor 280E, a distance sensor 280F, a proximity light sensor 280G, a fingerprint sensor 280H, a temperature sensor 280J, a touch sensor 280K, and an ambient light sensor.
  • the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the terminal 120 .
  • the terminal 120 may include more or fewer components than shown in the figure, or combine certain components, or separate certain components, or arrange different components.
  • the illustrated components can be realized in hardware, software or a combination of software and hardware.
  • the processor 210 may include one or more processing units, for example: the processor 210 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural network processor (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • the controller can generate an operation control signal according to the instruction opcode and timing signal, and complete the control of fetching and executing the instruction.
  • a memory may also be provided in the processor 210 for storing instructions and data.
  • the memory in processor 210 is a cache memory.
  • the memory may hold instructions or data that the processor 210 has just used or recycled. If the processor 210 needs to use the instruction or data again, it can be called directly from the memory. Repeated access is avoided, and the waiting time of the processor 210 is reduced, thereby improving the efficiency of the system.
  • processor 210 may include one or more interfaces.
  • the interface 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 transmitter (universal asynchronous receiver/transmitter, UART) interface, mobile industry processor interface (mobile industry processor interface, MIPI), general-purpose input and output (general-purpose input/output, GPIO) interface, subscriber identity module (subscriber identity module, SIM) interface, and /or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transmitter
  • MIPI mobile industry processor interface
  • GPIO general-purpose input and output
  • subscriber identity module subscriber identity module
  • SIM subscriber identity module
  • USB universal serial bus
  • the I2C interface is a bidirectional synchronous serial bus, including a serial data line (serial data line, SDA) and a serial clock line (derail clock line, SCL).
  • processor 210 may include multiple sets of I2C buses.
  • the processor 210 can be respectively coupled to the touch sensor 280K, the charger, the flashlight, the camera 293 and so on through different I2C bus interfaces.
  • the processor 210 may be coupled to the touch sensor 280K through the I2C interface, so that the processor 210 and the touch sensor 280K communicate through the I2C bus interface to realize the touch function of the terminal 120 .
  • the I2S interface can be used for audio communication.
  • processor 210 may include multiple sets of I2S buses.
  • the processor 210 may be coupled to the audio module 270 through an I2S bus to implement communication between the processor 210 and the audio module 270 .
  • the audio module 270 can transmit audio signals to the wireless communication module 260 through the I2S interface, so as to realize the function of answering calls through the Bluetooth headset.
  • the PCM interface can also be used for audio communication, sampling, quantizing and encoding the analog signal.
  • the audio module 270 and the wireless communication module 260 may be coupled through a PCM bus interface.
  • the audio module 270 can also transmit audio signals to the wireless communication module 260 through the PCM interface, so as to realize the function of answering calls through the Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
  • the UART interface is a universal serial data bus used for asynchronous communication.
  • the bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
  • a UART interface is generally used to connect the processor 210 and the wireless communication module 260 .
  • the processor 210 communicates with the Bluetooth module in the wireless communication module 260 through the UART interface to realize the Bluetooth function.
  • the audio module 270 can transmit audio signals to the wireless communication module 260 through the UART interface, so as to realize the function of playing music through the Bluetooth headset.
  • the MIPI interface can be used to connect the processor 210 with the peripheral devices such as the display screen 294 and the camera 293 .
  • MIPI interface includes camera serial interface (camera serial interface, CSI), display serial interface (display serial interface, DSI), etc.
  • the processor 210 communicates with the camera 293 through a CSI interface to realize the shooting function of the terminal 120 .
  • the processor 210 communicates with the display screen 294 through the DSI interface to realize the display function of the terminal 120 .
  • the GPIO interface can be configured by software.
  • the GPIO interface can be configured as a control signal or as a data signal.
  • the GPIO interface can be used to connect the processor 210 with the camera 293 , the display screen 294 , the wireless communication module 260 , the audio module 270 , the sensor module 280 and so on.
  • the GPIO interface can also be configured as an I2C interface, I2S interface, UART interface, MIPI interface, etc.
  • the USB interface 230 is an interface conforming to the USB standard specification, specifically, it may be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 230 can be used to connect a charger to charge the terminal 120, and can also be used to transmit data between the terminal 120 and peripheral devices. It can also be used to connect headphones and play audio through them. This interface can also be used to connect other electronic devices, such as AR devices.
  • the interface connection relationship between the modules shown in the embodiment of the present invention is only a schematic illustration, and does not constitute a structural limitation of the terminal 120 .
  • the terminal 120 may also adopt different interface connection modes in the foregoing embodiments, or a combination of multiple interface connection modes.
  • the charging management module 240 is configured to receive charging input from the charger.
  • the charger may be a wireless charger or a wired charger.
  • the charging management module 240 can receive the charging input of the wired charger through the USB interface 230 .
  • the charging management module 240 may receive wireless charging input through the wireless charging coil of the terminal 120 . While the charging management module 240 is charging the battery 242 , it can also supply power to the electronic device through the power management module 241 .
  • the power management module 241 is used for connecting the battery 242 , the charging management module 240 and the processor 210 .
  • the power management module 241 receives the input from the battery 242 and/or the charging management module 240 to provide power for the processor 210 , the internal memory 221 , the display screen 294 , the camera 293 , and the wireless communication module 260 .
  • the power management module 241 can also be used to monitor parameters such as battery capacity, battery cycle times, and battery health status (leakage, impedance).
  • the power management module 241 can also be set in the processor 210 .
  • the power management module 241 and the charging management module 240 may also be set in the same device.
  • the wireless communication function of the terminal 120 may be implemented by the antenna 1, the antenna 2, the mobile communication module 250, the wireless communication module 260, a modem processor, a baseband processor, and the like.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in terminal 120 may be used to cover single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas.
  • Antenna 1 can be multiplexed as a diversity antenna of a wireless local area network.
  • the antenna may be used in conjunction with a tuning switch.
  • the mobile communication module 250 can provide wireless communication solutions including 2G/3G/4G/5G applied on the terminal 120 .
  • the mobile communication module 250 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA) and the like.
  • the mobile communication module 250 can receive electromagnetic waves through the antenna 1, and filter and amplify the received electromagnetic waves, and send them to the modem processor for demodulation.
  • the mobile communication module 250 can also amplify the signal modulated by the modem processor, convert it into electromagnetic wave and radiate it through the antenna 1 .
  • at least part of the functional modules of the mobile communication module 250 may be set in the processor 210 .
  • at least part of the functional modules of the mobile communication module 250 and at least part of the modules of the processor 210 may be set in the same device.
  • a 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 to demodulate the received electromagnetic wave signal into a low frequency baseband signal. Then the demodulator sends the demodulated low-frequency baseband signal to the baseband processor for processing.
  • the low-frequency baseband signal is passed to the application processor after being processed by the baseband processor.
  • the application processor outputs sound signals through audio equipment (not limited to speaker 270A, receiver 270B, etc.), or displays images or videos through display screen 294 .
  • the modem processor may be a stand-alone device.
  • the modem processor may be independent of the processor 210, and be set in the same device as the mobile communication module 250 or other functional modules.
  • the wireless communication module 260 can provide wireless local area networks (wireless local area networks, WLAN) (such as wireless fidelity (Wireless Fidelity, Wi-Fi) network), bluetooth (bluetooth, BT), global navigation satellite system, etc. (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • the wireless communication module 260 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 260 receives electromagnetic waves via the antenna 2 , frequency-modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 210 .
  • the wireless communication module 260 can also receive the signal to be sent from the processor 210 , frequency-modulate it, amplify it, and convert it into electromagnetic waves through the antenna 2 to radiate out.
  • the antenna 1 of the terminal 120 is coupled to the mobile communication module 250, and the antenna 2 is coupled to the wireless communication module 260, so that the terminal 120 can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (general packet radio service, GPRS), code division multiple access (code division multiple access, CDMA), broadband 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, etc.
  • GSM global system for mobile communications
  • GPRS general packet radio service
  • code division multiple access code division multiple access
  • CDMA broadband Code division multiple access
  • WCDMA wideband code division multiple access
  • time division code division multiple access time-division code division multiple access
  • TD-SCDMA time-division code division multiple access
  • LTE
  • the GNSS may include a global positioning system (global positioning system, GPS), a global navigation satellite system (global navigation satellite system, GLONASS), a Beidou navigation satellite system (beidou navigation satellite system, BDS), a quasi-zenith satellite system (quasi -zenith satellite system (QZSS) and/or satellite based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • Beidou navigation satellite system beidou navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite based augmentation systems
  • the terminal 120 implements a display function through a GPU, a display screen 294, an application processor, and the like.
  • the GPU is a microprocessor for image processing, and is connected to the display screen 294 and the application processor. GPUs are used to perform mathematical and geometric calculations for graphics rendering.
  • Processor 210 may include one or more GPUs that execute program instructions to generate or change display information.
  • the display screen 294 is used to display images, videos and the like.
  • Display 294 includes a display panel.
  • the display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active matrix organic light emitting diode or an active matrix organic light emitting diode (active-matrix organic light emitting diode, AMOLED), flexible light-emitting diode (flex light-emitting diode, FLED), Miniled, MicroLed, Micro-oLed, quantum dot light emitting diodes (quantum dot light emitting diodes, QLED), etc.
  • the terminal 120 may include 1 or N display screens 294, where N is a positive integer greater than 1.
  • the terminal 120 can realize the shooting function through the ISP, the camera 293 , the video codec, the GPU, the display screen 294 and the application processor.
  • the ISP is used for processing the data fed back by the camera 293 .
  • the light is transmitted to the photosensitive element of the camera through the lens, and the light signal is converted into an electrical signal, and the photosensitive element of the camera transmits the electrical signal to the ISP for processing, and converts it into an image visible to the naked eye.
  • ISP can also perform algorithm optimization on image noise, brightness, and skin color.
  • ISP can also optimize the exposure, color temperature and other parameters of the shooting scene.
  • the ISP may be located in the camera 293 .
  • Camera 293 is used to capture still images or video.
  • the object generates an optical image through the lens and projects it to the photosensitive element.
  • the photosensitive element may be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
  • CMOS complementary metal-oxide-semiconductor
  • the photosensitive element converts the light signal into an electrical signal, and then transmits the electrical signal to the ISP to convert it into a digital image signal.
  • the ISP outputs the digital image signal to the DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other image signals.
  • the terminal 120 may include 1 or N cameras 293, where N is a positive integer greater than 1.
  • Digital signal processors are used to process digital signals. In addition to digital image signals, they can also process other digital signals. For example, when the terminal 120 selects a frequency point, the digital signal processor is used to perform Fourier transform on the energy of the frequency point.
  • Video codecs are used to compress or decompress digital video.
  • Terminal 120 may support one or more video codecs.
  • the terminal 120 can play or record videos in various encoding formats, for example: moving picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
  • the NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • the NPU can quickly process input information and continuously learn by itself.
  • Applications such as intelligent cognition of the terminal 120 can be implemented through the NPU, such as image recognition, face recognition, speech recognition, text understanding, and the like.
  • the external memory interface 220 can be used to connect an external memory card, such as a Micro SD card, so as to expand the storage capacity of the terminal 120.
  • the external memory card communicates with the processor 210 through the external memory interface 220 to implement a data storage function. Such as saving music, video and other files in the external memory card.
  • the internal memory 221 may be used to store computer-executable program codes including instructions.
  • the internal memory 221 may include an area for storing programs and an area for storing data.
  • the stored program area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.) and the like.
  • the storage data area can store data created during the use of the terminal 120 (such as audio data, phonebook, etc.) and the like.
  • the internal memory 221 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (universal flash storage, UFS) and the like.
  • the processor 210 executes various functional applications and data processing of the terminal 120 by executing instructions stored in the internal memory 221 and/or instructions stored in a memory provided in the processor.
  • the terminal 120 may implement audio functions through an audio module 270, a speaker 270A, a receiver 270B, a microphone 270C, an earphone interface 270D, and an application processor. Such as music playback, recording, etc.
  • the audio module 270 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signal.
  • the audio module 270 may also be used to encode and decode audio signals.
  • the audio module 270 can be set in the processor 210 , or some functional modules of the audio module 270 can be set in the processor 210 .
  • Speaker 270A also referred to as a "horn" is used to convert audio electrical signals into sound signals. Terminal 120 can listen to music through speaker 270A, or listen to hands-free calls.
  • Receiver 270B also called “earpiece” is used to convert audio electrical signals into audio signals.
  • the receiver 270B can be placed close to the human ear to listen to the voice.
  • the microphone 270C also called “microphone” or “microphone” is used to convert sound signals into electrical signals.
  • the user can make a sound by approaching the microphone 270C with a human mouth, and input the sound signal into the microphone 270C.
  • the terminal 120 may be provided with at least one microphone 270C.
  • the terminal 120 may be provided with two microphones 270C, which may also implement a noise reduction function in addition to collecting sound signals.
  • the terminal 120 can also be equipped with three, four or more microphones 270C to realize the collection of sound signals, noise reduction, identification of sound sources, and realization of directional recording functions, etc.
  • the earphone interface 270D is used for connecting wired earphones.
  • the earphone interface 270D can be a USB interface 230, or a 3.5mm open mobile terminal platform (OMTP) standard interface, or a cellular telecommunications industry association of the USA (CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA
  • the pressure sensor 280A is used to sense the pressure signal and convert the pressure signal into an electrical signal.
  • pressure sensor 280A may be located on display screen 294 .
  • pressure sensors 280A such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors.
  • a capacitive pressure sensor may be comprised of at least two parallel plates with conductive material.
  • Terminal 120 determines the strength of the pressure from the change in capacitance.
  • the terminal 120 detects the intensity of the touch operation according to the pressure sensor 280A.
  • the terminal 120 may also calculate the touched position according to the detection signal of the pressure sensor 280A.
  • touch operations acting on the same touch position but with different touch operation intensities may correspond to different operation instructions. For example: when a touch operation with a touch operation intensity less than the first pressure threshold acts on the short message application icon, an instruction to view short messages is executed. When a touch operation whose intensity is greater than or equal to the first pressure threshold acts on the icon of the short message application, the instruction of creating a new short message is executed.
  • the gyro sensor 280B can be used to determine the motion posture of the terminal 120 .
  • the angular velocity of the terminal 120 around three axes may be determined by the gyro sensor 280B.
  • the gyro sensor 280B can be used for image stabilization. Exemplarily, when the shutter is pressed, the gyro sensor 280B detects the shaking angle of the terminal 120, calculates the distance that the lens module needs to compensate according to the angle, and allows the lens to counteract the shaking of the terminal 120 through reverse movement to achieve anti-shake.
  • the gyro sensor 280B can also be used for navigation and somatosensory game scenes.
  • the air pressure sensor 280C is used to measure air pressure. In some embodiments, the terminal 120 calculates the altitude based on the air pressure value measured by the air pressure sensor 280C to assist positioning and navigation.
  • the magnetic sensor 280D includes a Hall sensor.
  • the terminal 120 may detect the opening and closing of the flip holster using the magnetic sensor 280D.
  • the terminal 120 can detect the opening and closing of the clamshell according to the magnetic sensor 280D.
  • features such as automatic unlocking of the flip cover are set.
  • the acceleration sensor 280E can detect the acceleration of the terminal 120 in various directions (generally three axes). When the terminal 120 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify the posture of electronic devices, and can be used in applications such as horizontal and vertical screen switching, pedometers, etc.
  • the distance sensor 280F is used to measure the distance.
  • the terminal 120 can measure the distance by infrared or laser. In some embodiments, when shooting a scene, the terminal 120 may use the distance sensor 280F for distance measurement to achieve fast focusing.
  • Proximity light sensor 280G may include, for example, a light emitting diode (LED) and a light detector, such as a photodiode.
  • the light emitting diodes may be infrared light emitting diodes.
  • the terminal 120 emits infrared light through the light emitting diode.
  • Terminal 120 uses photodiodes to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it may be determined that there is an object near the terminal 120 . When insufficient reflected light is detected, the terminal 120 may determine that there is no object near the terminal 120 .
  • the terminal 120 can use the proximity light sensor 280G to detect that the user holds the terminal 120 close to the ear to make a call, so as to automatically turn off the screen to save power.
  • Proximity light sensor 280G can also be used in leather case mode, automatic unlock and lock screen in pocket mode.
  • the ambient light sensor 280L is used for sensing ambient light brightness.
  • the terminal 120 may adaptively adjust the brightness of the display screen 294 according to the perceived ambient light brightness.
  • the ambient light sensor 280L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 280L can also cooperate with the proximity light sensor 280G to detect whether the terminal 120 is in the pocket, so as to prevent accidental touch.
  • the fingerprint sensor 280H is used to collect fingerprints.
  • the terminal 120 can use the collected fingerprint characteristics to unlock the fingerprint, access the application lock, take a photo with the fingerprint, answer the incoming call with the fingerprint, and so on.
  • the temperature sensor 280J is used to detect temperature.
  • the terminal 120 uses the temperature detected by the temperature sensor 280J to implement a temperature processing strategy. For example, when the temperature reported by the temperature sensor 280J exceeds the threshold, the terminal 120 executes reducing the performance of the processor located near the temperature sensor 280J, so as to reduce power consumption and implement thermal protection.
  • the terminal 120 when the temperature is lower than another threshold, the terminal 120 heats the battery 242 to avoid abnormal shutdown of the terminal 120 due to low temperature.
  • the terminal 120 boosts the output voltage of the battery 242 to avoid abnormal shutdown caused by low temperature.
  • the touch sensor 280K is also called “touch device”.
  • the touch sensor 280K can be arranged on the display screen 294, and the touch sensor 280K and the display screen 294 form a touch screen, also called “touch screen”.
  • the touch sensor 280K is used to detect a touch operation on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • Visual output related to touch operations can be provided through the display screen 294 .
  • the touch sensor 280K may also be disposed on the surface of the terminal 120 , which is different from the position of the display screen 294 .
  • the bone conduction sensor 280M can acquire vibration signals.
  • the bone conduction sensor 280M can acquire the vibration signal of the vibrating bone mass of the human voice.
  • the bone conduction sensor 280M can also contact the human pulse and receive the blood pressure beating signal.
  • the bone conduction sensor 280M can also be disposed in the earphone, combined into a bone conduction earphone.
  • the audio module 270 can analyze the voice signal based on the vibration signal of the vibrating bone mass of the vocal part acquired by the bone conduction sensor 280M, so as to realize the voice function.
  • the application processor can analyze the heart rate information based on the blood pressure beating signal acquired by the bone conduction sensor 280M, so as to realize the heart rate detection function.
  • the keys 290 include a power key, a volume key and the like.
  • the key 290 may be a mechanical key. It can also be a touch button.
  • the terminal 120 may receive key input and generate key signal input related to user settings and function control of the terminal 120 .
  • the motor 291 can generate a vibrating reminder.
  • the motor 291 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback.
  • touch operations applied to different applications may correspond to different vibration feedback effects.
  • the motor 291 can also correspond to different vibration feedback effects for touch operations acting on different areas of the display screen 294 .
  • Different application scenarios for example: time reminder, receiving information, alarm clock, games, etc.
  • the touch vibration feedback effect can also support customization.
  • the indicator 292 can be an indicator light, which can be used to indicate the charging status, the change of the battery capacity, and also can be used to indicate messages, missed calls, notifications and so on.
  • the terminal 120 may also include other functional units, which is not limited in this embodiment of the present application.
  • the following describes the data synchronization method provided by the embodiment of the present application by taking the architecture shown in FIG. 2(1) as an example. Each unit in the following embodiments may have the components shown in Fig. 2(1), which will not be described in detail.
  • the creation (create) in the embodiment of the present application can also be understood as generating (generate) or determination, and the "carrying” in the embodiment of the present application can also be understood as “include”. Specific limits.
  • FIG. 2(2) is a block diagram of the software structure of the first electronic device provided by the embodiment of the present application.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate through software interfaces.
  • the Android system can be divided into four layers, which are respectively the application program layer, the application program framework layer, the Android runtime (Android runtime) and the system library, and the kernel layer from top to bottom.
  • the application layer can consist of a series of application packages.
  • the application package can include Bluetooth, device management applications (applications with device management functions), navigation, memo, WLAN, short message, gallery, calendar, call and other applications (applications, APPs) .
  • the application framework layer provides application programming interfaces and programming frameworks for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer may include window manager, content provider, view system, phone manager, resource manager, notification manager and so on.
  • a window manager is used to manage window programs.
  • the window manager can get the size of the display screen, determine whether there is a status bar, lock the screen, capture the screen, etc.
  • Content providers are used to store and retrieve data and make it accessible to applications.
  • the aforementioned data can include videos, images, audio, calls made and received, browsing history and bookmarks, phonebook, etc.
  • the view system includes visual controls, such as controls for displaying text, controls for displaying pictures, and so on.
  • the view system can be used to build applications.
  • a display interface can consist of one or more views.
  • a display interface including a text message notification icon may include a view for displaying text and a view for displaying pictures.
  • the phone manager is used to provide a communication function of the terminal 120 .
  • the management of call status including connected, hung up, etc.).
  • the resource manager provides various resources for the application, such as localized strings, icons, pictures, layout files, video files, and so on.
  • the notification manager enables the application to display notification information in the status bar, which can be used to convey notification-type messages, and can automatically disappear after a short stay without user interaction.
  • the notification manager is used to notify the download completion, message reminder, etc.
  • the notification manager can also be a notification that appears on the top status bar of the system in the form of a chart or scroll bar text, such as a notification of an application running in the background, or a notification that appears on the screen in the form of a dialog interface. For example, prompting text information in the status bar, issuing a prompt sound, vibrating the electronic device, and flashing the indicator light, etc.
  • the Android Runtime includes core library and virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
  • the core library consists of two parts: one part is the function function that the java language needs to call, and the other part is the core library of Android.
  • the application layer and the application framework layer run in virtual machines.
  • the virtual machine executes the java files of the application program layer and the application program framework layer as binary files.
  • the virtual machine is used to perform functions such as object life cycle management, stack management, thread management, security and exception management, and garbage collection.
  • a system library can include multiple function modules. For example: surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • the surface manager is used to manage the display subsystem and provides the fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of various commonly used audio and video formats, as well as still image files, etc.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing, etc.
  • 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer includes at least a display driver, a camera driver, an audio driver, and a sensor driver.
  • synchronization module shown in Fig. 2(2) can be integrated in the application framework layer, or can be integrated in a specific application program, such as a memorandum.
  • a specific application program such as a memorandum.
  • Data synchronization refers to using a server to perform data synchronization among multiple terminals.
  • the terminal updates the updated data to the server.
  • the server notifies multiple terminals to obtain updated data from the server. In this way, the data on multiple terminals and servers are consistent.
  • Data update refers to data changes, such as new data addition, data deletion, data modification, etc.
  • data update can be divided into uplink data update and downlink data update.
  • the uplink data update refers to: when the data on the terminal is updated, the terminal updates the updated data to the server.
  • the downlink data update refers to: when the data on the server is updated, the terminal obtains the updated data from the server.
  • FIG. 3 it is a schematic flowchart of a data synchronization method.
  • the flow of the number method is as follows:
  • the operation may include adding operation, deleting operation, modifying operation and so on.
  • the first APP configures an update identifier for the updated data.
  • the first APP sends a data change request to the server, and the data change request carries updated data.
  • the server receives updated data.
  • the server updates data.
  • the server sends an update result to the first APP, and the update result may include that the update is successful. Of course, update failures may also be included.
  • the first APP receives the update result sent by the server.
  • the first APP updates the data and deletes the update identifier.
  • the server sends a data change notification to the second APP, and correspondingly, the second APP receives the data change notification.
  • the second APP sends a data acquisition request to the server.
  • the server receives the data acquisition request.
  • the server sends the updated data to the second APP.
  • the second APP receives the updated data sent by the server.
  • the second APP updates data.
  • first terminal and the second terminal take the first APP and the second APP as memo applications as an example, when the user edits the memo on the first terminal, even if the second terminal is online in the synchronous data service, the second terminal does not Open the note. It can be seen that the first terminal and the second terminal have different real-time requirements for the synchronous data of the memorandum, and the scenarios with different real-time requirements are illustrated as follows:
  • Example 1 when the user edits a memo on the first terminal, the user also opens the memo on the second terminal, then the user hopes that the memo edited on the first terminal can be displayed synchronously on the second terminal as soon as possible.
  • Example 2 when the user edits the memo on the first terminal, but the user does not open the memo on the second terminal, it means that the user does not pay attention to whether the data of the memo on the second terminal is updated in real time, and only needs to ensure that the next When the second terminal opens the memo, the data of the memo on the second terminal is the latest.
  • the first terminal when the user frequently edits the memo on the first terminal, the first terminal will frequently update data, which increases the resource consumption of the first terminal and at the same time increases the pressure on the server. If other terminals such as the second terminal do not pay attention to the updated data of the memorandum, it becomes meaningless for the first terminal to frequently update the data. Therefore, how to balance the real-time and resource consumption of synchronous data becomes crucial.
  • an embodiment of the present application provides a data synchronization method, the method includes a first terminal receiving a user's first operation on a first application program on the first terminal.
  • the first terminal displays the first interface in response to the first operation.
  • the second terminal receives the user's second operation on the first application program on the second terminal.
  • the second terminal displays a second interface in response to the second operation, and the content of the second interface is different from the content of the first interface.
  • the first terminal receives the user's third operation on the first interface.
  • the first terminal uploads the data of the first application program to the server, and the second terminal downloads the data of the first application program from the server and displays a third interface, wherein the data of the first application program includes the first Interface data; the third interface is the same as the first interface.
  • the first operation may be used to start the first application program, or browse the interface of the application program.
  • the user When the second terminal does not require high real-time synchronization, the user operates the application program on the first terminal, and the first terminal can lengthen the interval of synchronous update data, which can reduce the number and number of synchronization requests, thereby saving network bandwidth and power consumption , reduce the number of server IO connections.
  • the server can consolidate notifications, reduce the number of notifications sent, and reduce server resources and network bandwidth.
  • the second terminal requires high real-time synchronization
  • the user operates the application program on the first terminal, and the first terminal can update data in real time, which can maintain high real-time synchronization and ensure user experience in using the application program.
  • the first terminal receives the user's first operation on the first application program on the first terminal, and in response to the first operation, displays the first interface, and sends the first request to the server, the first request Used to request the establishment of the first session.
  • the second terminal receives the user's second operation on the first application program on the second terminal, and in response to the second operation, sends a second request to the server, where the second request is used to request establishment of the second session.
  • the server establishes the first session according to the first request, establishes the second session according to the second request, and determines the first state of the first session and the second state of the second session according to the first request.
  • the first terminal receives the user's third operation on the first interface, and displays the second interface in response to the third operation, and transmits the data of the first application program to the server according to the real-time policy corresponding to the first state of the first session. .
  • the second terminal transmits the data of the first application program with the server according to the real-time policy corresponding to the second state of the second session, and displays the third interface, and the interface information of the third interface is consistent with or inconsistent with the interface information of the second interface.
  • the real-time policy may include a high real-time policy and a low real-time policy.
  • the real-time policy executed by the first application program is determined by the status of the application programs on other terminals of the user.
  • the first terminal may use a low real-time policy to send update data.
  • the first terminal may use a high real-time policy to send update data. In this way, when the first terminal sends the update data according to the real-time policy, it can not only ensure user data synchronization and real-time requirements, but also minimize resource consumption.
  • the embodiments of the present application are applied to various multi-terminal data synchronization services, such as address book, memo, calendar, bookmark, document, short message, email, photo, third-party application program and other services.
  • the embodiment of the present application is not limited to the above-mentioned services.
  • the embodiment of the present application uses the memorandum service as an example for description.
  • the first terminal is the first mobile phone 120
  • the second terminal is the second mobile phone 160
  • the memos in the first mobile phone 120 and the second mobile phone 160 are synchronized as an example
  • a data synchronization method provided by the embodiment of the present application is described. for details.
  • Figure 4 (1) is a schematic flow diagram of the session establishment phase of a data synchronization method provided by the embodiment of the present application
  • Figure 4 (2) is a schematic flow diagram of the session establishment phase of a data synchronization method provided by the embodiment of the application
  • FIG. 4(3) is a schematic flowchart of a session establishment phase of a data synchronization method provided by an embodiment of the present application.
  • the method may include:
  • the first mobile phone 120 receives a user's first operation on the first memo on the first mobile phone 120 .
  • the first operation may refer to a gesture operation
  • the gesture operation may include a click operation, a press operation, a slide operation, and the like.
  • the click operation may also include a click operation, a double-click operation, and the like.
  • the first operation is used to instruct the first memorandum to start the session establishment function.
  • the first operation may be operating an icon of the first memo, or operating a control on the memo.
  • the first operation is to operate the icon of the first memo.
  • FIG. 7 is a schematic diagram of the desktop of the first mobile phone 120 .
  • the first operation is to operate a control on the first memo.
  • operating the controls on the first memo may include two situations: first, operating controls on the interface of the first memo; second, operating options on the application settings of the first memo.
  • the first is to operate the controls on the interface of the memo.
  • the specific implementation of S4001 may also be: after the user clicks on the memo on the first mobile phone 120, the first mobile phone 120 activates the memo. At this time, the first mobile phone 120 displays a first interface, which may be a starting interface of the memo, and a first control for requesting session establishment is also displayed on the interface.
  • a first interface which may be a starting interface of the memo
  • a first control for requesting session establishment is also displayed on the interface.
  • a first control eg, enable synchronization control
  • the second is to operate the options on the application settings of the first memo.
  • the user may select the option to enable the "function of establishing a session". That is to say, when the user selects the option to enable, the function of establishing a session can be started.
  • the user clicks the icon of the first memo the first memo needs to detect whether the "session establishment function" is enabled. If enabled, execute S4011.
  • S4001 is specifically, the first memo of the first mobile phone receives the user's first operation on the first memo, and the first memo sends the first memo to the conversation module.
  • the state of the memo alternatively, the session module obtains the state of the first memo.
  • the first mobile phone 120 sends a first request for establishing a first session to the server 110, and correspondingly, the server 110 receives the first request sent by the first mobile phone 120.
  • the first session can be understood as a process in which the first mobile phone 120 communicates with the server 110 .
  • the first session in this embodiment of the present application can be understood as a process in which the first mobile phone 120 and the server 110 perform synchronization state negotiation, which may include or cover all data synchronization processes.
  • the first request carries the status of the first memo.
  • the status of the memo may include an unactivated status, a browsing status, an editing status, and the like.
  • the non-starting state and the browsing state are low real-time states, which can be expressed as STATE_LOW;
  • the editing state is high real-time states, which can be expressed as STATE_HIGH.
  • the browsing state of these services is a low real-time state, which can be expressed as STATE_LOW.
  • browsing may refer to browsing a directory, browsing specific content of a certain article, and the like.
  • the editing status of these services is a high real-time status, which can be expressed as STATE_HIGH.
  • the browsing state of the service is a low real-time state, which can be expressed as STATE_LOW.
  • browsing may include browsing pictures, browsing videos, and the like.
  • the editing/copying status of this service is a high real-time status, which can be expressed as STATE_HIGH.
  • the browsing state of the service is a state of low real-time performance, which can be expressed as STATE_LOW.
  • browsing may refer to browsing videos in the application program, browsing parameters in the application program, and the like.
  • the information processing state of this service is a high real-time state, which can be expressed as STATE_HIGH.
  • information processing may refer to detecting user's motion data during the user's motion.
  • the real-time policy parameter may also be carried in the first request. For example:
  • the first mobile phone 120 may acquire the status of the first memo.
  • the state of the first memo may include an inactive state, a browsing state, an editing state, and the like.
  • the first mobile phone 120 configures real-time policy parameters according to the status of the first memorandum. Exemplary, as shown in Figure 4 (3), when the state of the first memo acquired by the conversation module of the first mobile phone 120 is browsing state, the conversation module of the first mobile phone 120 determines the real-time performance of the first memo to data synchronization The requirement is low.
  • the session module of the first mobile phone 120 configures the real-time policy parameter as a low real-time parameter, that is, the program code corresponding to the first request carries the REQ_NORMAL field.
  • the conversation module of the first mobile phone 120 acquires the state of the first memo as the editing state, the conversation module of the first mobile phone 120 determines that the real-time performance of the memo is relatively high for data synchronization.
  • the policy parameter is a high real-time parameter, that is, the program code corresponding to the first request carries the REQ_HIGH field.
  • the first memorandum in response to the first operation, configures real-time policy parameters according to the state of the first memorandum, and carries the real-time policy parameters in the A request is sent to the session module of the first mobile phone.
  • the state of the first memo is the browsing state
  • the first memo configures the real-time policy parameter as a low real-time parameter, and carries the real-time policy parameter in the first request, that is, in the program code corresponding to the first request Carry the REQ_NORMAL field.
  • the first memorandum configures the real-time policy parameter as a high real-time parameter, and carries the real-time policy parameter in the first request, that is, carries the REQ_HIGH field in the program code corresponding to the first request.
  • the first request is not limited to carrying real-time policy parameters or the state of the memo, but may also carry other information, such as user ID, first mobile phone ID, and so on.
  • the embodiments of this application do not make specific limitations.
  • the server 110 establishes a first session according to the first request.
  • the server 110 sends a notification to the first mobile phone 120 that the session creation is completed.
  • the process of the second mobile phone 160 requesting to establish a session with the first mobile phone 120 is the same. Specifically as follows:
  • the second mobile phone 160 receives a second user operation on the second memo on the second mobile phone.
  • the second operation may be the same as the first operation, and reference may be made to relevant descriptions of the above-mentioned first operation, which will not be repeated here.
  • S4002 is the same as that of S4001, which will not be repeated in this embodiment of the present application.
  • the second mobile phone 160 sends to the server 110 a second request for establishing a second session, and correspondingly, the server 110 receives the second request sent by the second mobile phone 160 .
  • the second session can be understood as a process in which the second mobile phone 160 communicates with the server 110 .
  • the second session in the embodiment of the present application can be understood as a process in which the second mobile phone 160 and the server 110 perform synchronization state negotiation, which may include or cover all data synchronization processes.
  • the second request may carry the status of the second memorandum, and may also carry real-time policy parameters.
  • the implementation manner of S4012 is the same as that of S4011, which will not be repeated in this embodiment of the present application.
  • the server 110 establishes a second session according to the second request.
  • the server 110 sends a notification to the second mobile phone 160 that the session creation is completed.
  • the server 110 determines the status of the first session and the second session, specifically as follows:
  • the server 110 determines the first state of the first session according to the first request.
  • the first state may be used to represent the simultaneous and real-time data requirement of the first mobile phone 120 on other terminals of the same user.
  • the above-mentioned first request may carry the status of the first memo on the first mobile phone 120, and may also carry real-time policy parameters.
  • the first request carries the status of the first memo on the first mobile phone 120 .
  • the server 110 can determine that the first state of the first meeting is a high real-time state, which can be expressed as CLIENT_STATE_HIGH. If the first requests sent by the first mobile phone 120 all carry the STATE_LOW field, the server 110 may determine that the first state of the first meeting is a low real-time state, which can be expressed as CLIENT_STATE_LOW.
  • the first request carries real-time policy parameters.
  • the server 110 may determine the first state of the first session according to the real-time policy parameter. For example, if the first request sent by the first mobile phone 120 carries a REQ_HIGH field, the server 110 determines that the first state of the first session is a high real-time state, which can be expressed as CLIENT_STATE_HIGH. If the first request sent by the first mobile phone 120 carries a REQ_LOW field, the server 110 determines that the first state of the first session is a low real-time state, which can be expressed as CLIENT_STATE_LOW.
  • the first mobile phone 120 may also determine the first state of the first session according to the first request.
  • the first request carries the state of the first memo
  • the first mobile phone 120 may also determine the first state of the first session according to the state of the first memo.
  • the state of the first memo is a high real-time state
  • the first mobile phone 120 determines that the first state of the first meeting is a high real-time state
  • the state of the first memorandum is a low real-time state
  • the first mobile phone 120 determines that the first meeting
  • the first state of is a low real-time state.
  • the server 110 determines a second state of the first session according to the second request.
  • the second state may be used to represent the real-time data synchronization requirements of other terminals of the same user on the first mobile phone 120 .
  • the above-mentioned second request is the same as the first request, and may carry the status of the second memo on the second mobile phone 160, and may also carry real-time policy parameters.
  • the following describes in detail the different information carried in the second request:
  • the second request carries the status of the second memo on the second mobile phone 160 .
  • the server 110 determines that the second state of the first session is a high real-time state, which can be expressed as CLOUD_STATE_HIGH. If the second requests sent by the second mobile phone 160 all carry the STATE_LOW field, the server 110 determines that the second state of the first session is a low real-time state, which can be expressed as CLOUD_STATE_LOW.
  • the server 110 configures the real-time policy according to the second state of the first session.
  • the second state of the first session is the high real-time state, and at this time, the server 110 configures the real-time policy as the high real-time policy.
  • the second state of the first session is the low real-time state, and at this time, the server 110 configures the real-time policy as the low real-time policy.
  • the second request carries real-time policy parameters.
  • the server 110 may determine the second state of the first session. For example, if the request sent by the second mobile phone 160 carries a REQ_HIGH field, the server 110 determines that the second state of the first session is a high real-time state, which can be expressed as CLOUD_STATE_HIGH. If the request sent by the second mobile phone 160 carries a REQ_LOW field, the server 110 determines that the second state of the first session is a low real-time state, which can be expressed as CLOUD_STATE_LOW.
  • the server 110 sends the second state of the first session to the first mobile phone 120, and correspondingly, the first mobile phone 120 receives the second state of the first session.
  • the server 110 may carry the second state of the first session on the notification that the session creation is completed, and send it to the first mobile phone 120 together.
  • the server 110 determines the state of the second session in the same manner as determining the state of the first session.
  • the server 110 determines the first state of the second session according to the second request.
  • Method 1 if the second request sent by the second mobile phone 160 carries a STATE_HIGH field, the server 110 determines that the first state of the second session is a high real-time state, which can be expressed as CLIENT_STATE_HIGH. If the second requests sent by the second mobile phone 160 all carry the STATE_LOW field, the server 110 determines that the first state of the second session is a low real-time state, which can be expressed as CLIENT_STATE_LOW.
  • the server 110 may determine the first state of the second session. For example, if the second request sent by the second mobile phone 160 carries a REQ_HIGH field, the server 110 determines that the first state of the second session is a high real-time state, which can be expressed as CLIENT_STATE_HIGH. If the request sent by the second mobile phone 160 carries the REQ_LOW field, the server 110 determines that the first state of the second session is a low real-time state, which can be expressed as CLIENT_STATE_LOW.
  • the second mobile phone 160 may also determine the first state of the second session according to the second request.
  • the second request carries the state of the second memo
  • the second mobile phone 160 may also determine the first state of the second session according to the state of the second memo.
  • the specific implementation manner is similar to the implementation manner of S4040 above, and will not be repeated here.
  • the server 110 determines the second state of the second session according to the first request.
  • Method 1 if the first request sent by the first mobile phone 120 carries a STATE_HIGH field, the server 110 can determine that the second state of the second meeting is a high real-time state, which can be expressed as CLOUD_STATE_HIGH. If the first requests sent by the first mobile phone 120 all carry the STATE_LOW field, the server 110 can determine that the second state of the first meeting is a low real-time state, which can be expressed as CLOUD_STATE_LOW.
  • the server 110 may determine the second state of the second session according to the real-time policy parameter. For example, if the first request sent by the first mobile phone 120 carries a REQ_HIGH field, the server 110 determines that the second state of the second session is a high real-time state, which can be expressed as CLOUD_STATE_HIGH. If the first request sent by the first mobile phone 120 carries a REQ_LOW field, the server 110 determines that the second state of the second session is a low real-time state, which can be expressed as CLOUD_STATE_LOW.
  • the server 110 sends the second state of the second session to the second mobile phone 160, and correspondingly, the second mobile phone 160 receives the second state of the second session.
  • the status of the session returned by the server 110 to the terminal is determined according to the status of the session on other terminals.
  • the state of the session on the terminal is subject to the state of the session returned by the server 110 .
  • the server 110 may create a session (or called a collaborative session) for each terminal, and there may be multiple sessions (such as the first session and the second session) at the same time.
  • the conversations of multiple terminals (such as the first mobile phone 120 and the second mobile phone 160 ) of the same user form a conversation group.
  • FIG. 5 it is a schematic diagram of the management of a conversation group of the same user by the server 110 .
  • each collaborative session may include:
  • User ID Used to identify a user. It can be understood that the user IDs of the conversation groups of the same user are the same.
  • Session ID Used to identify a session. That is to say, the ID of each collaborative session is different, and the session ID is generated when the session is created, and can be used to specify the session to update when the session is updated.
  • Terminal ID used to identify the terminal.
  • the terminal ID is used to associate the terminal.
  • the terminal ID can be used to designate the terminal to receive the push (PUSH) notification.
  • the first state determined according to the behavior of the terminal itself, the first state of the terminal itself is synchronized with the second state of at least one peer end.
  • the data synchronization real-time requirement of the terminal to other terminals is reserved on the server 110 for the server 110 to control the terminal to execute the real-time policy.
  • Second state determined according to the behavior of the peer end, the second state of the terminal itself is synchronized with the first state of at least one peer end.
  • the real-time requirements for data synchronization of the current terminal are met by other terminals. It returns to the terminal, and is used for the synchronization agent to control the terminal to execute the real-time policy.
  • the synchronization agent is used to send or receive data on behalf of an application program (such as a memo).
  • the synchronization proxy may refer to a proxy unit composed of a data module, a session module, and a push module.
  • the change of the first state of the first session of the first mobile phone 120 will affect the second state of the second session of the second mobile phone 160 .
  • the first state of the first session is a low real-time performance state.
  • the first mobile phone 120 receives a user's third operation on the first memo on the first mobile phone 120, and changes the first state of the first session to a high real-time state.
  • the first mobile phone 120 displays the second session as shown in FIG. An interface 301, on which a second control 302 is also displayed, and the second control 302 is a control for starting editing.
  • the first mobile phone 120 receives the user's third operation on the second control. At this time, the first mobile phone 120 determines that the first state of the first session is changed from a low real-time state to a high real-time state.
  • the first mobile phone 120 sends to the server 110 a third request (or called a fifth request) for changing the low real-time state to the high real-time state.
  • the server 110 receives the third request.
  • the third request may carry session state change information.
  • the state of the session is switched from a low real-time state to a high real-time state.
  • the first mobile phone 120 after the user performs a third operation on the second control, in response to the third operation, the first mobile phone 120 obtains that the state of the memo changes from a low real-time state to a high real-time state. At this time, the first mobile phone 120 configures the real-time policy parameter as a high real-time policy parameter, and sends the high real-time policy parameter to the server 110 in the third request.
  • the first mobile phone 120 after the user performs a third operation on the second control, in response to the third operation, the first mobile phone 120 obtains that the state of the memo changes from a low real-time state to a high real-time state. At this time, the first mobile phone 120 switches the low real-time state to the high real-time state and sends it to the server 110 in the third request.
  • the server 110 changes the first state of the first session to a high real-time state according to the third request.
  • the server 110 determines, according to the third request, that the first state of the first session is the high real-time state. At this point, the server 110 changes the first state of the first session from a low real-time state to a high real-time state.
  • the server 110 determines that the second state of the second session is a high real-time state.
  • the server 110 determines that the second state of the second session is the high real-time state according to the third request. At this time, the server 110 changes the second state of the second session to a high real-time state.
  • the server 110 determines that the second state of the second session is a high real-time state
  • the second mobile phone 160 acquires the updated second state of the second session.
  • the specific implementation is as follows:
  • Way 1 The second mobile phone 160 regularly polls the second status of the second session.
  • the second mobile phone 160 sends a fourth request to the server 110 according to a second preset time interval, where the fourth request is used to request to obtain the latest status.
  • the server 110 receives the fourth request.
  • the server 110 determines, according to the fourth request, that the second state of the second session is a high real-time state.
  • the server 110 sends the latest session status to the second mobile phone 160.
  • the second mobile phone 160 receives the latest status.
  • the second mobile phone 160 updates the second state of the second session to a high real-time state.
  • the second mobile phone 160 sends a fourth request to the server 110, where the fourth request is used to obtain the latest status.
  • the server 110 receives the fourth request.
  • the server 110 determines that the second state of the second session remains a high real-time state.
  • the server 110 sends the latest session status to the second mobile phone 160.
  • the second mobile phone 160 receives the latest status.
  • the second mobile phone 160 keeps the second state of the second session and updates it to a high real-time state.
  • Method 2 The server 110 pushes the second state of the second session to the second mobile phone 160.
  • the server 110 sends the second state of the second session to the second mobile phone 160.
  • the server 110 sends the second state of the second session in the high real-time state to the second mobile phone 160 .
  • the above-mentioned change of the first state of the first session of the first mobile phone 120 will affect the second state of the second session of the second mobile phone 160, of course, the first state of the first session of the second mobile phone 160 The change will affect the second state of the first session of the first mobile phone 120.
  • the first state of the second session is a high real-time state.
  • the second mobile phone 160 receives the user's fourth operation on the second memo on the second mobile phone 160 .
  • the second mobile phone 160 sends a sixth request to the server 110 to change the session state.
  • the server 110 receives the sixth request.
  • the server 110 receives the sixth request that carries a high real-time state switched to a low real-time state, and determines that the second state of the first session is a high real-time state according to the request, the first state of the second session is a high real-time status.
  • the first state of the first session and the second state of the second session are the same, both of which are determined by the state of the first memo of the first mobile phone.
  • the second state of the first session is the same as the first state of the first session, both of which are determined by the state of the second memo of the second mobile phone.
  • the first state of the first session of the first terminal and the first state of the second session of the second terminal affect the third session of the third terminal.
  • the second state of the session Exemplarily, when the first state of the session of at least one of the first terminal and the second terminal is a high real-time state, the second state of the third session of the third terminal is a high real-time state; when the first terminal When the first states of the sessions with the second terminal are all low real-time states, the second state of the third session of the third terminal is a low real-time state.
  • the second mobile phone 160 updates the second state of the second session to a high real-time state.
  • data can be synchronized between terminals.
  • the changed data can be synchronized to other terminals.
  • the first state is used to represent the real-time requirement when uploading data
  • the second state is used to represent the real-time requirement when downloading data
  • FIG. 6 (1a) it is a schematic flow chart of the data update phase of a data synchronization method provided by the embodiment of the present application; the method may also include:
  • the first mobile phone 120 receives the user's fifth operation on the first memo on the first mobile phone 120 .
  • the user operates on (1) in FIG. 9 or the second control 302 shown in FIG. 10 .
  • the first mobile phone 120 sends the update data of the memo to the server 110 according to the first state of the first session.
  • the server 110 receives the update data of the memorandum.
  • the interface of the first mobile phone 120 jumps from the interface 301 shown in Figure 10 to Figure 11
  • An edit box 402 and a third control 403 are also displayed on the interface 401 .
  • the user can input editing content in the editing box 402, such as memo content 6, . . . , and so on.
  • the server 110 updates the data of the memorandum.
  • the first state of the first session of the first mobile phone 120 is a high real-time state, and correspondingly, the second The second state of the second session of the mobile phone 160 is a high real-time state.
  • the first mobile phone 120 receives the editing content input by the user in the editing box.
  • the memo of the first mobile phone 120 sends the edited content of the user to the data module as shown in FIG. 6(3).
  • the data module receives the data of the edited content update memorandum of the user.
  • the first mobile phone 120 uploads update data to the server 110 in real time.
  • the server 110 updates the data of the memo.
  • the second mobile phone determines that the data on the server changes.
  • Mode 1 the second mobile phone establishes a TCP/HTTP persistent connection with the server. S60162. The server sends a notification to the second mobile phone through the TCP/HTTP persistent connection according to the second state of the second session.
  • the second state of the second session may be a low real-time state or a high real-time state.
  • the details are as described in the second method, which will not be repeated here.
  • Method 2 S60163.
  • the second mobile phone requests the server to subscribe to the notification.
  • the server pushes a data change notification to the second mobile phone according to the second state of the second session.
  • the data change notification is used to notify the second mobile phone 160 of data transmission changes on the server.
  • Method 3 S60165 and the second mobile phone start timing monitoring. S60166.
  • the second mobile phone inquires about data transmission changes on the server according to the first state of the second session.
  • the second mobile phone sends a data acquisition request to the server according to the first state of the second session.
  • the server receives a data acquisition request.
  • the data acquisition request is used to request the server to send changed data.
  • the server sends updated data to the second mobile phone.
  • the second mobile phone updates the data of the memorandum.
  • the second mobile phone displays the data of the memorandum.
  • the first state of the first session is consistent with the second state of the second session
  • the second state of the first session is consistent with the first state of the second session.
  • the first state of the first session is a low real-time state
  • the second state of the second session is also a low real-time state.
  • FIG. 6(1b) it is a schematic flow chart of the data update phase of a data synchronization method provided by the embodiment of the present application, the method also includes:
  • the first mobile phone 120 receives the user's fifth operation on the first memo on the first mobile phone 120 .
  • the first mobile phone 120 sends the update data of the memo to the server 110 according to the first state of the first session.
  • the server 110 receives the update data of the memorandum.
  • the first mobile phone 120 can upload update data to the server in the following ways, specifically:
  • the data module of the first mobile phone obtains the first state of the first conversation on the conversation module of the first mobile phone, and sends the updated data to the data module of the server according to the real-time policy corresponding to the first state. For example, when the first state of the first session is STATE_LOW, for the synchronization agent, it is not necessary to synchronize data to the server in time.
  • the data module of the server updates the data of the memorandum.
  • S6014 may specifically be implemented as: S60141. If the first state of the first session is a low real-time state, then the first mobile phone 120 determines whether the second preset for sending data is satisfied time interval. If not, the first mobile phone 120 delays sending the update data of the memo to the server 110 ; if satisfied, the first mobile phone 120 sends the update data of the memo to the server 110 .
  • the server 110 updates the data of the memorandum.
  • the second mobile phone determines that the data on the server changes.
  • the data module of the server sends the data change notification to the session module of the server, and the session module of the server sends the data change notification to the server according to the real-time policy corresponding to the second state of the second session.
  • push module the push module of the server sends the data change notification to the push module of the second mobile phone
  • the push module of the second mobile phone sends the data change notification to the conversation module of the second mobile phone
  • the conversation module of the second mobile phone follows the second conversation
  • the real-time policy corresponding to the second state sends the data change notification to the data module.
  • Figure 6(1b) specifically:
  • the server determines whether a third preset time interval for sending a notification is satisfied. If not, execute S62163; if satisfied, execute S63163. S62163. The server delays sending the data change notification. S63163. The server sends a data change notification to the second mobile phone.
  • the second mobile phone sends a data acquisition request to the server according to the second state of the second session.
  • the server receives a data acquisition request.
  • the data acquisition request is used to request the server to send changed data.
  • the server sends updated data to the second mobile phone.
  • the second mobile phone updates the data of the memorandum.
  • the second mobile phone displays the data of the memorandum.
  • the first state of the first session is consistent with the second state of the second session
  • the second state of the first session is consistent with the first state of the second session.
  • the first state of the first session is a high real-time state
  • the second state of the second session is also a high real-time state.
  • FIG. 6(1b) it is a schematic flow chart of the data update phase of a data synchronization method provided by the embodiment of the present application, the method also includes:
  • the first mobile phone 120 receives the user's fifth operation on the first memo on the first mobile phone 120 .
  • the first mobile phone 120 sends the update data of the memo to the server 110 according to the first state of the first session.
  • the server 110 receives the update data of the memorandum.
  • the first mobile phone 120 can upload update data to the server in the following ways, specifically:
  • the data module of the first mobile phone obtains the first state of the first conversation on the conversation module of the first mobile phone, and sends the updated data to the data module of the server according to the real-time policy corresponding to the first state. For example, when the first state of the first session is STATE_HIGH, for the synchronization agent, it is necessary to synchronize data to the server in time.
  • the data module of the server updates the data of the memorandum.
  • S6014 the specific implementation manner of S6014 is: S60142. If the first state of the first session is a high real-time state, the first mobile phone 120 sends the update data of the memorandum to the server 110 in real time.
  • the server 110 updates the data of the memorandum.
  • S6015' is the same as S6015, and the specific implementation can refer to the relevant content above, and will not be repeated here.
  • the second mobile phone determines that the data on the server changes.
  • the data module of the server sends the data change notification to the session module of the server, and the session module of the server sends the data change notification to the server according to the real-time policy corresponding to the second state of the second session.
  • push module the push module of the server sends the data change notification to the push module of the second mobile phone
  • the push module of the second mobile phone sends the data change notification to the conversation module of the second mobile phone
  • the conversation module of the second mobile phone follows the second conversation
  • the real-time policy corresponding to the second state sends the data change notification to the data module.
  • Figure 6(1b) specifically:
  • the server sends the updated data of the memorandum to the second mobile phone in real time.
  • the second mobile phone determines the first state of the second session.
  • the second mobile phone sends a data acquisition request (such as the seventh request) to the server according to the first state of the second session.
  • the server receives a data acquisition request.
  • the data acquisition request is used to request the server to send changed data.
  • the server sends updated data to the second mobile phone.
  • the second mobile phone updates the data of the memorandum.
  • the second mobile phone displays the data of the memorandum.
  • the first state is used to represent the real-time requirement when downloading data
  • the second state is used to represent the real-time requirement when uploading data
  • Figure 6 (2a) is a schematic flow chart of the data update phase of a data synchronization method provided by the embodiment of the present application; the method may also include:
  • the server 110 updates the second state of the first session, and sends the second state of the first session to the first mobile phone 120.
  • the second mobile phone 160 determines the first state of the second session.
  • the first state of the second session is consistent with the second state of the first session, so the server 110 updates the second state of the first session according to the state of the second memo carried in the second request.
  • the first mobile phone 120 sends the update data of the memorandum to the server 110 according to the second state of the first session.
  • the server 110 receives the update data of the memorandum.
  • the server 110 updates the data of the memorandum.
  • the second mobile phone determines that the data on the server changes.
  • Mode 1 the second mobile phone establishes a TCP/HTTP persistent connection with the server. S60162. The server sends a notification to the second mobile phone through the TCP/HTTP long connection according to the first state of the second session.
  • the first state of the second session may be a low real-time state or a high real-time state.
  • the specific relevant description is as follows, which will not be repeated here.
  • Method 2 S60163.
  • the second mobile phone requests the server to subscribe to the notification.
  • the server pushes a data change notification to the second mobile phone according to the first state of the second session.
  • the data change notification is used to notify the second mobile phone 160 of data transmission changes on the server.
  • Method 3 S60165 and the second mobile phone start timing monitoring. S60166.
  • the second mobile phone inquires about data transmission changes on the server according to the first state of the second session.
  • the second mobile phone sends a data acquisition request to the server according to the second state of the second session.
  • the server receives a data acquisition request.
  • the data acquisition request is used to request the server to send changed data.
  • the server sends updated data to the second mobile phone.
  • the second mobile phone updates the data of the memorandum.
  • the second mobile phone displays the data of the memorandum.
  • the first state of the first session is consistent with the second state of the second session
  • the second state of the first session is consistent with the first state of the second session.
  • the second state of the first session is a low real-time state
  • the first state of the second session is also a low real-time state.
  • FIG. 6(2b) it is a schematic flow chart of the data update phase of a data synchronization method provided by the embodiment of the present application, the method also includes:
  • the server 110 updates the second state of the first session, and sends the second state of the first session to the first mobile phone 120.
  • the first mobile phone 120 sends the update data of the memorandum to the server 110 according to the first state of the first session.
  • the server 110 receives the update data of the memorandum.
  • the first mobile phone 120 can upload update data to the server in the following ways, specifically:
  • the data module of the first mobile phone obtains the second state of the first conversation on the conversation module of the first mobile phone, and sends the update data to the data module of the server according to the real-time policy corresponding to the second state. For example, when the second state of the first session is CLOUD_STATE_LOW, for the synchronization agent, it is not necessary to synchronize data to the server in time.
  • the data module of the server updates the data of the memorandum.
  • S6014 may specifically be implemented as: S60141', if the second state of the first session is a low real-time state, then the first mobile phone 120 determines whether the second predetermined requirement for sending data is satisfied. Set time interval. If not, the first mobile phone 120 delays sending the update data of the memo to the server 110 ; if satisfied, the first mobile phone 120 sends the update data of the memo to the server 110 .
  • the server 110 updates the data of the memorandum.
  • the second mobile phone determines that the data on the server changes.
  • the data module of the server sends the data change notification to the session module of the server, and the session module of the server sends the data change notification to the server according to the real-time policy corresponding to the first state of the second session.
  • push module the push module of the server sends the data change notification to the push module of the second mobile phone
  • the push module of the second mobile phone sends the data change notification to the conversation module of the second mobile phone
  • the conversation module of the second mobile phone follows the second conversation
  • the real-time policy corresponding to the first state sends the data change notification to the data module.
  • Figure 6(2b) specifically:
  • the server determines whether the third preset time interval for sending a notification is satisfied. If not, execute S62163'; if satisfied, execute S63163'. S62163', the server delays sending the data change notification. S63163', the server sends the data change notification to the second mobile phone.
  • the second mobile phone determines the first state of the second session.
  • the second mobile phone sends a data acquisition request (such as the seventh request) to the server according to the first state of the second session.
  • the server receives a data acquisition request.
  • the data acquisition request is used to request the server to send changed data.
  • the server sends updated data to the second mobile phone.
  • the second mobile phone updates the data of the memorandum.
  • the second mobile phone displays the data of the memorandum.
  • the first state of the first session is consistent with the second state of the second session
  • the second state of the first session is consistent with the first state of the second session.
  • the second state of the first session is a high real-time state
  • the first state of the second session is also a high real-time state.
  • FIG. 6(2b) it is a schematic flow chart of the data update phase of a data synchronization method provided by the embodiment of the present application, the method also includes:
  • the first mobile phone 120 receives the user's fifth operation on the first memo on the first mobile phone 120 .
  • the first mobile phone 120 sends the update data of the memo to the server 110 according to the first state of the first session.
  • the server 110 receives the update data of the memorandum.
  • the first mobile phone 120 can upload update data to the server in the following ways, specifically:
  • the data module of the first mobile phone obtains the second state of the first conversation on the conversation module of the first mobile phone, and sends the update data to the data module of the server according to the real-time policy corresponding to the second state. For example, when the second state of the first session is CLOUD_STATE_HIGH, for the synchronization agent, it is necessary to synchronize data to the server in time.
  • the data module of the server updates the data of the memorandum.
  • S6014 can be specifically implemented as: S60142', if the second state of the first conversation is a high real-time state, then the first mobile phone 120 sends the update data of the memorandum to the server in real time 110.
  • the server 110 updates the data of the memorandum.
  • S6015' is the same as S6015, and the specific implementation can refer to the relevant content above, and will not be repeated here.
  • the second mobile phone determines that the data on the server changes.
  • the data module of the server sends the data change notification to the session module of the server, and the session module of the server sends the data change notification to the server according to the real-time policy corresponding to the first state of the second session.
  • push module the push module of the server sends the data change notification to the push module of the second mobile phone
  • the push module of the second mobile phone sends the data change notification to the conversation module of the second mobile phone
  • the conversation module of the second mobile phone follows the second conversation
  • the real-time policy corresponding to the first state sends the data change notification to the data module.
  • Figure 6(2b) specifically:
  • the server sends the updated data of the memorandum to the second mobile phone in real time.
  • the second mobile phone determines the first state of the second session.
  • the second mobile phone sends a data acquisition request (such as the seventh request) to the server according to the first state of the second session.
  • the server receives a data acquisition request.
  • the data acquisition request is used to request the server to send changed data.
  • the server sends updated data to the second mobile phone.
  • the second mobile phone updates the data of the memorandum.
  • the second mobile phone displays the data of the memorandum.
  • Fig. 6 (4) is a schematic flow diagram of the deletion session phase of a data synchronization method provided by the embodiment of the present application; as shown in Fig. 6 (4), the method may also include:
  • the first mobile phone 120 receives a sixth user operation on the first memo on the first mobile phone 120 .
  • the sixth operation is used to instruct the first memo to delete the session.
  • the sixth operation may be to operate a control on the memo.
  • operating the controls on the first memo may include two situations:
  • the first type is to operate the controls on the interface of the first memo.
  • a control for deleting the session is also displayed on the interface of the first memo. After the user clicks the control, the first mobile phone sends a session deletion request to the server, and the server deletes the session according to the session deletion request.
  • the second is to operate the options on the application settings of the first memo.
  • the first mobile phone deletes the session.
  • the server deletes the first session according to the eighth request.
  • the operation of deleting the session for the second mobile phone 160 is the same as that of the first mobile phone 120 .
  • the second mobile phone 160 receives the user's seventh operation on the second memo on the second mobile phone 160 .
  • the server deletes the second session according to the ninth request.
  • Scenario 1 Both the first mobile phone and the second mobile phone are in a low real-time state, and the data of the first mobile phone and the second mobile phone will not be synchronized.
  • the interface of the first mobile phone 120 jumps from the interface shown in FIG. 8 to the interface 301 shown in (1) in FIG. 9 .
  • the user can browse the content of the interface 301 or edit the content of the interface 301 .
  • the first mobile phone 120 has relatively low real-time requirements on the second mobile phone 160 .
  • the first state of the first session of the first mobile phone 120 is a low real-time state
  • the second state of the second session of the second mobile phone 160 is a low real-time state.
  • the second mobile phone 160 does not need to synchronize data in real time, that is, the second mobile phone 160 has not acquired the synchronization data, and the interface shown in (2) in FIG. 9 on the second mobile phone 160 is blank.
  • Scenario 2 Both the first mobile phone and the second mobile phone are in high real-time state, and the data of the first mobile phone and the second mobile phone are synchronized.
  • the first mobile phone 120 when the user edits the content of the interface 301 , the first mobile phone 120 has higher requirements on the real-time performance of the second mobile phone 160 . That is to say, the first state of the first session of the first mobile phone 120 is a high real-time state, and the second state of the second session of the second mobile phone 160 is a high real-time state.
  • the second mobile phone 160 needs to synchronize data in real time, that is, the second mobile phone 160 has obtained the synchronous data, and the interface of the second mobile phone 160 jumps from the interface shown in (2) in Figure 9 to that shown in (3) in Figure 9 interface.
  • the interface of the first mobile phone 120 jumps from the interface shown in Figure 10 to the one shown in (1) in Figure 11 interface.
  • the first state of the first session of the first mobile phone 120 is a high real-time state, and correspondingly, the second state of the second mobile phone 160 The second state of the session is a high real-time state.
  • the second mobile phone 160 downloads the update data from the server 110 in real time, that is, the second mobile phone 160 sends a data acquisition request to the server 110 in real time. That is to say, the interface of the second mobile phone 160 is updated from (2) in Figure 9 to (2) in Figure 11 , and the first mobile phone 120 displays the interface of Figure 10 and the second mobile phone 160 displays the interface of (2) in Figure 11 Update data synchronously.
  • the interface of the first mobile phone 120 jumps from the interface shown in FIG. 12 to the interface shown in FIG. 13 .
  • the interface of the first mobile phone 120 jumps from the interface shown in Figure 13 to (1) in Figure 14 Interface 701 is shown.
  • the first state of the first session of the first mobile phone 120 is a high real-time state
  • the second state of the second session of the second mobile phone 160 is a high real-time state.
  • the second mobile phone 160 downloads the update data from the server 110 in real time, that is, the second mobile phone 160 sends a data acquisition request to the server 110 in real time. That is to say, the interface of the second mobile phone 160 is updated from (2) in Figure 11 to (2) in Figure 14, and the first mobile phone 120 displays the interface of (1) in Figure 14 and the second mobile phone 160 displays ( 2) The interface updates data synchronously.
  • Scenario 3 Both the first mobile phone and the second mobile phone are in a low real-time state, and the data of the first mobile phone and the second mobile phone will not be synchronized.
  • the second mobile phone 160 displays (2) in Figure 9 or (2) in Figure 15 2)
  • the interface shown For example, when the user browsed the contents of the interface 801 shown in (1) in Figure 15 of the first mobile phone 120, both the first mobile phone and the second mobile phone were in a low real-time state, and at this moment, the second mobile phone 160 did not need real-time synchronization Data, that is, the second mobile phone 160 has not acquired the synchronization data, and the interface shown in (2) in FIG. 15 on the second mobile phone 160 is displayed as blank.
  • Scenario 4 Both the first mobile phone and the second mobile phone are in high real-time state, and the data of the first mobile phone and the second mobile phone are synchronized.
  • the first state of the second session of the second mobile phone 160 is a high real-time state. That is to say, the second mobile phone 160 needs the first mobile phone 120 to upload data in real time, so as to download the data uploaded by the first mobile phone 120 in real time.
  • the display interface of the second mobile phone 160 jumps to the interface shown in (3) in Figure 15 by the interface shown in (2) among Figure 15, and the interface shown in (1) in Figure 15 of the first mobile phone 120 Synchronize.
  • the second mobile phone 160 when the user edits the "memorandum content 5" shown in the interface shown in (3) in Figure 15 of the second mobile phone 160, at this moment, the first state of the first session of the second mobile phone 160 In a state of high real-time performance, the second mobile phone 160 has higher requirements on the real-time performance of the first mobile phone 120 . That is to say, the second mobile phone 160 needs the first mobile phone 120 to upload data in real time, so as to download the data uploaded by the first mobile phone 120 in real time. At this time, the interface of the second mobile phone 160 jumps from the interface shown in (3) in FIG. 15 to the interface shown in (1) in FIG. 16 .
  • both the first mobile phone and the second mobile phone are in high real-time state, and the data of the second mobile phone will be synchronized to the first mobile phone.
  • the user enters information in the edit box in the interface shown in (1) in Figure 16 of the second mobile phone 160 (such as taking pictures tentatively on June 6, 2021), and clicks the control 405 to complete the editing, at this time, the first mobile phone and the second mobile phone are high real-time status, at this moment, the interface of the first mobile phone 120 jumps to the interface 111 shown in (2) in Figure 16 by the interface of (1) among Fig. 15, and the second mobile phone 160
  • the interface shown in (1) in Fig. 16 is synchronized.
  • both the first mobile phone and the second mobile phone are in high real-time state, and the data of the first mobile phone will be synchronized to the second mobile phone.
  • the user continues to input information (as please participate on time) in the edit box in the interface shown in (2) in Figure 16 of the first mobile phone 120, as shown in (2) in Figure 17, and clicks on the control 406 to complete the edit .
  • both the first mobile phone and the second mobile phone are in a high real-time state, and the interface of the second mobile phone 160 jumps from the interface shown in (1) in Figure 16 to the interface shown in Figure 17 (1), which is the same as that of the second mobile phone 160.
  • the interface shown in (2) in FIG. 17 of a mobile phone 120 is synchronized.
  • the terminal executes any one of the above methods.
  • a system provided in an embodiment of the present application the system executes any one of the above methods.
  • An embodiment of the present application also provides a computer-readable storage medium, including instructions, which, when run on a computer, cause the computer to execute any one of the above methods.
  • the embodiment of the present application also provides a computer program product containing instructions, which, when run on a computer, causes the computer to execute any one of the above methods.
  • the embodiment of the present application also provides a chip, the chip includes a processor and an interface circuit, the interface circuit is coupled to the processor, the processor is used to run computer programs or instructions to implement the above method, and the interface circuit is used to communicate with other modules outside the chip to communicate.
  • words such as “exemplary” or “for example” are used to mean an example, illustration or illustration. Any embodiment or design scheme described as “exemplary” or “for example” in the embodiments of the present application shall not be interpreted as being more preferred or more advantageous than other embodiments or design schemes. Rather, the use of words such as “exemplary” or “such as” is intended to present related concepts in a concrete manner.
  • the disclosed devices and methods may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be Incorporation or may be integrated into another device, or some features may be omitted, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • the unit described as a separate component may or may not be physically separated, and the component displayed as a unit may be one physical unit or multiple physical units, that is, it may be located in one place, or may be distributed to multiple different places . Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
  • the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a readable storage medium.
  • the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the software product is stored in a storage medium Among them, several instructions are included to make a device (which may be a single-chip microcomputer, a chip, etc.) or a processor (processor) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: various media that can store program codes such as U disk, mobile hard disk, read only memory (ROM), random access memory (random access memory, RAM), magnetic disk or optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

La présente invention concerne un procédé de synchronisation de données, un terminal, et un système, le procédé comprenant les étapes suivantes : un premier terminal reçoit une première opération d'un utilisateur sur un premier programme d'application sur un premier terminal ; en réponse à la première opération, le premier terminal affiche une première interface, le contenu de la première interface étant différent d'un contenu de la deuxième interface ; le premier terminal reçoit une troisième opération de l'utilisateur sur la première interface ; en réponse à la troisième opération, le premier terminal téléverse les données du premier programme d'application vers un serveur, et un deuxième terminal télécharge les données du premier programme d'application depuis le serveur et affiche la troisième interface ; et la troisième interface est la même que la première interface. Ainsi, lorsque l'exigence du deuxième terminal pour des performances en temps réel synchrone n'est pas élevée, l'utilisateur utilise le programme d'application sur le premier terminal, et le premier terminal peut allonger l'intervalle pour la mise à jour synchrone des données. Lorsque l'exigence du deuxième terminal pour des performances en temps réel synchrone est élevée, l'utilisateur utilise le programme d'application sur le premier terminal, et le premier terminal peut mettre à jour des données en temps réel, garantissant ainsi l'exigence en temps réel de la synchronisation des données d'utilisateur et réduisant au maximum la consommation de ressources.
PCT/CN2022/107489 2021-07-31 2022-07-22 Procédé de synchronisation de données, terminal, et système WO2023011220A1 (fr)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202110877488.6 2021-07-31
CN202110877488 2021-07-31
CN202210081108.2A CN115695445A (zh) 2021-07-31 2022-01-24 一种数据同步方法、终端和系统
CN202210081108.2 2022-01-24

Publications (1)

Publication Number Publication Date
WO2023011220A1 true WO2023011220A1 (fr) 2023-02-09

Family

ID=85060459

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/107489 WO2023011220A1 (fr) 2021-07-31 2022-07-22 Procédé de synchronisation de données, terminal, et système

Country Status (2)

Country Link
CN (1) CN115695445A (fr)
WO (1) WO2023011220A1 (fr)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120263166A1 (en) * 2011-04-14 2012-10-18 Samsung Electronics Co. Ltd. Synchronization method and apparatus of portable terminal
CN103856558A (zh) * 2014-01-22 2014-06-11 北京京东尚科信息技术有限公司 一种用于终端应用的数据处理方法和装置
CN103973766A (zh) * 2013-02-01 2014-08-06 宏达国际电子股份有限公司 电子装置及其数据同步方法
CN104965637A (zh) * 2015-06-23 2015-10-07 百度在线网络技术(北京)有限公司 一种界面操作的实现方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120263166A1 (en) * 2011-04-14 2012-10-18 Samsung Electronics Co. Ltd. Synchronization method and apparatus of portable terminal
CN103973766A (zh) * 2013-02-01 2014-08-06 宏达国际电子股份有限公司 电子装置及其数据同步方法
CN103856558A (zh) * 2014-01-22 2014-06-11 北京京东尚科信息技术有限公司 一种用于终端应用的数据处理方法和装置
CN104965637A (zh) * 2015-06-23 2015-10-07 百度在线网络技术(北京)有限公司 一种界面操作的实现方法及装置

Also Published As

Publication number Publication date
CN115695445A (zh) 2023-02-03

Similar Documents

Publication Publication Date Title
WO2020224485A1 (fr) Procédé de capture d'écran et dispositif électronique
WO2020253719A1 (fr) Procédé de d'enregistrement d'écran et dispositif électronique
WO2022257977A1 (fr) Procédé de projection d'écran pour dispositif électronique, et dispositif électronique
US11683850B2 (en) Bluetooth reconnection method and related apparatus
EP4084486B1 (fr) Procédé de projection de contenu inter-dispositif et dispositif électronique
WO2020143380A1 (fr) Procédé de transmission de données et dispositif électronique
WO2020224447A1 (fr) Procédé et système pour ajouter un dispositif de maison intelligente à des contacts
WO2021052204A1 (fr) Procédé de découverte de dispositif basé sur un carnet d'adresses, procédé de communication audio et vidéo, et dispositif électronique
EP3923617A1 (fr) Procédé de réduction de la consommation d'énergie d'un terminal mobile et terminal mobile
WO2021031865A1 (fr) Procédé et appareil d'appel
WO2022042770A1 (fr) Procédé de commande d'état de service de communication, dispositif terminal et support de stockage lisible
WO2022042637A1 (fr) Procédé de transmission de données à base de bluetooth et appareil associé
US20240168603A1 (en) Card Display Method, Electronic Device, and Computer-Readable Storage Medium
KR102491006B1 (ko) 데이터 송신 방법 및 전자 기기
WO2020134892A1 (fr) Procédé d'écrêtage de fichiers multimédia, dispositif électronique et serveur
WO2023015963A1 (fr) Procédé de gestion de fichier, dispositif électronique et support de stockage lisible par ordinateur
EP4293997A1 (fr) Procédé d'affichage, dispositif électronique et système
WO2023005900A1 (fr) Procédé de projection d'écran, dispositif électronique et système
WO2021218544A1 (fr) Système de fourniture de connexion sans fil, procédé et appareil électronique
US20240303024A1 (en) Display method, electronic device, and system
KR102524305B1 (ko) 연결 구축 방법 및 단말 장치
WO2022111529A1 (fr) Procédé de débogage de programme d'application et dispositif électronique
WO2022022674A1 (fr) Procédé de disposition d'icône d'application et appareil associé
WO2023011220A1 (fr) Procédé de synchronisation de données, terminal, et système
EP4345590A1 (fr) Système et procédé de synchronisation de tâches, et dispositif

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22851934

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22851934

Country of ref document: EP

Kind code of ref document: A1