CN117527822A - 数据同步方法、电子设备及系统 - Google Patents
数据同步方法、电子设备及系统 Download PDFInfo
- Publication number
- CN117527822A CN117527822A CN202210883769.7A CN202210883769A CN117527822A CN 117527822 A CN117527822 A CN 117527822A CN 202210883769 A CN202210883769 A CN 202210883769A CN 117527822 A CN117527822 A CN 117527822A
- Authority
- CN
- China
- Prior art keywords
- data
- electronic device
- interface
- information
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 168
- 230000004044 response Effects 0.000 claims abstract description 80
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 30
- 230000001360 synchronised effect Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 description 71
- 238000004891 communication Methods 0.000 description 45
- 230000006870 function Effects 0.000 description 24
- 230000000694 effects Effects 0.000 description 22
- 238000007726 management method Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 21
- 239000010410 layer Substances 0.000 description 18
- 238000013523 data management Methods 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 238000010295 mobile communication Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供数据同步方法、电子设备及系统,涉及终端技术领域。本申请中第一电子设备可根据用户操作,向第二电子设备请求获取待显示的第二电子设备中第一应用的界面数据,以减少无效数据的数据同步,降低跨设备数据访问开销。该方法包括:第一电子设备响应于第一操作向第二电子设备发送第一数据请求,以请求第一操作指示显示的第一界面所需数据。第一电子设备接收第二电子设备发送的第一数据并显示第一界面。第一电子设备响应于第二操作向第二电子设备发送第二数据请求,以请求第二操作指示显示的第二界面所需数据。第一电子设备接收第二电子设备发送的第二数据并显示第一界面,第二数据不同于第一数据。
Description
技术领域
本申请实施例涉及终端技术领域,尤其涉及一种数据同步方法、电子设备及系统。
背景技术
在分布式场景中,不同电子设备之间可实现跨设备数据访问。比如,第一电子设备(如平板等)响应于用户操作,跨设备访问第二电子设备中用户操作指示的第一应用的应用数据。之后,第一电子设备可在获取到的应用数据中筛选用户操作指示对应的第一应用的界面数据,以显示相应的界面,如显示应用的首页、应用中某一功能页面等。
但是,电子设备之间跨设备数据访问,用户可能会指示第一电子设备显示不同的界面,因此第一电子设备会请求获取第一应用的全部应用数据。而同步应用的全部应用数据,传输数据量较大,导致功耗较多。并且,同步的全部应用数据中,第一电子设备响应于用户操作需要使用的应用数据可能只占用其中较少的比例,无效数据占比较高。
发明内容
为了解决上述的技术问题,本申请提供了一种数据同步方法、电子设备及系统。本申请提供的技术方案,第一电子设备可根据用户操作,向第二电子设备请求获取待显示的第二电子设备中第一应用的界面数据。这样,有效减少无效数据的数据同步,降低跨设备数据访问开销。
为了实现上述的技术目的,本申请实施例提供了如下技术方案:
第一方面,提供一种数据同步方法。该方法包括:响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,第一数据请求用于请求第一操作指示显示的第一界面所需的数据,第一界面对应于第二电子设备中的第一应用。第一电子设备接收第二电子设备发送的第一数据,第一数据为第二电子设备响应于第一数据请求确定的数据。响应于接收到的第一数据,第一电子设备显示第一界面。响应于用户的第二操作,第一电子设备向第二电子设备发送第二数据请求,数第二据请求用于请求第二操作指示显示的第二界面所需的数据,第二界面对应于第一应用。第一电子设备接收第二电子设备发送的第二数据,第二数据为第二电子设备响应于第二数据请求确定的数据,第二数据不同于第一数据。响应于接收到的第二数据,第一电子设备显示第二界面。
可选的,第一应用包括第二电子设备中的应用程序(APP),或服务(如任务管理器服务、安装包管理服务等)。响应于第一操作,第一电子设备和第二电子设备可同步该第一操作指示显示的界面所需的应用数据或服务数据。
可选的,第一界面包括为第一电子设备响应于用户操作待显示的界面。第一数据包括用户操作指示的待显示的界面的数据以及与待显示的界面关联界面的数据,或者第一数据包括用户操作指示的待显示的界面的数据。
如此,在跨设备数据访问过程中,第一电子设备和第二电子设备之间传输的数据为用于第一电子设备显示待显示界面的数据,而不再是应用的全量数据。有效减少数据传输量,降低电子设备功耗。
根据第一方面,响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,包括:响应于第一操作,第一电子设备确定数据查询条件,数据查询条件用于查询显示第一界面所需的数据。第一电子设备向第二电子设备发送第一数据请求,第一数据请求携带有数据查询条件。
可选的,数据查询条件中可包括待查询数据对应的应用名称、行信息、列信息、水位信息等中的一项或几项。
如此,第二电子设备根据数据查询条件,能够确定第一电子设备请求的界面数据。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:第一电子设备获取本地数据中满足数据查询条件的第三数据,确定第三数据的第一信息;第一数据请求中还携带有第一信息,第一信息包括第三数据的如下一项或几项信息:行信息、列信息、水位信息。
示例性的,第二电子设备在接收到第一数据请求后,能够根据数据查询条件确定第一应用的部分数据。之后,第二电子设备能够根据第一信息,在这部分数据中确定第一电子设备中未存储的第一数据,从而确定将显示第一界面所需的数据中第一电子设备未存储的第一数据发送到第一电子设备。
如此,进一步减少跨设备数据访问过程中,电子设备之间数据的传输量,降低电子设备功耗。
根据第一方面,或者以上第一方面的任意一种实现方式,第一电子设备获取本地数据中满足数据查询条件的第三数据,确定第三数据的第一信息,包括:第一电子设备查询第一存储空间中存储的本地数据中满足数据查询条件的第三数据。第一电子设备将第三数据缓存至第二存储空间后,确定第三数据的第一信息。
可选的,第一存储空间例如为磁盘,第二存储空间例如为共享内存。相比于磁盘,共享内存中数据读写速度较快,将用于显示第一界面的数据缓存至共享内存中后,应用进程可直接在共享内存中获取第一界面的数据,提高数据读写速度,从而提高界面显示效率。
根据第一方面,或者以上第一方面的任意一种实现方式,响应于接收到的第一数据,第一电子设备显示第一界面,包括:第一电子设备通过接收到的第一数据更新第二存储空间中的第三数据。第一电子设备根据第二存储空间中的更新后的数据,显示第一界面。
示例性的,第一电子设备在接收到第一数据后,根据第一数据更新共享内存中已经存储的第一界面对应的数据。之后,第一电子设备可根据共享内存中更新后的数据,显示第一界面。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:第一电子设备根据第一数据,更新本地数据。
示例性的,第一电子设备在接收到第一数据后,根据第一数据更新磁盘中的已经存储的第一应用的数据。这样后续第一电子设备响应于用户指示显示第一应用的界面的操作,可从磁盘中获取到已经更新的第一应用的数据。
第二方面,提供一种数据同步方法。该方法包括:第二电子设备接收第一电子设备发送的第一数据请求,第一数据请求为第一电子设备响应于用户的第一操作确定的用于获取第一操作指示显示的第一界面所需的数据的请求,第一界面对应于第二电子设备中的第一应用。第二电子设备根据第一数据请求,确定第一数据。第二电子设备向第一电子设备发送第一数据,第一数据用于第一电子设备显示第一界面。第二电子设备接收第一电子设备发送的第二数据请求,第二数据请求为第一电子设备响应于用户的第二操作确定的用于获取第二操作指示显示的第二界面所需的数据的请求,第二界面对应于第一应用。第二电子设备根据第二数据请求,确定第二数据,第二数据不同于第一数据。第二电子设备向第一电子设备发送第二数据,第二数据用于第一电子设备显示第二界面。
根据第二方面,第二电子设备根据第一数据请求,确定第一数据,包括:第二电子设备获取第一数据请求中携带的数据查询条件,确定满足数据查询条件的第一数据。
根据第二方面,或者以上第二方面的任意一种实现方式,第二电子设备根据第一数据请求,确定第一数据,包括:第二电子设备获取第一数据请求中携带的数据查询条件和第一信息,第一信息为第一电子设备确定的第一电子设备中满足数据查询条件的第三数据的信息,第一信息包括第三数据的如下一项或几项信息:行信息、列信息、水位信息。第二电子设备确定满足数据查询条件的第四数据。第二电子设备根据第一信息,确定第四数据中需要同步的第一数据。
根据第二方面,或者以上第二方面的任意一种实现方式,第二电子设备根据第一信息,确定第四数据中需要同步的第一数据,包括:第二电子设备根据第一信息,确定第四数据中包括第三数据中没有的第一行数据,确定第一行数据为第一数据。和/或,第二电子设备根据第一信息,确定第四数据中水位高于第三数据的第二行数据,确定第二行数据为第一数据。和/或,第二电子设备根据第一信息,确定第一列数据,第一列数据为第四数据和第三数据中水位相同的第三行数据中,第三数据不包括的列数据,确定第一列数据为第一数据。
第二方面以及第二方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第三方面,提供一种电子设备。该电子设备包括:处理器、显示屏和存储器,存储器和显示屏与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,使得电子设备执行:响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,数第一据请求用于请求第一操作指示显示的第一界面所需的数据,第一界面对应于第二电子设备中的第一应用。第一电子设备接收第二电子设备发送的第一数据,第一数据为第二电子设备响应于第一数据请求确定的数据。响应于接收到的第一数据,第一电子设备显示第一界面。响应于用户的第二操作,第一电子设备向第二电子设备发送第二数据请求,数第二据请求用于请求第二操作指示显示的第二界面所需的数据,第二界面对应于第一应用。第一电子设备接收第二电子设备发送的第二数据,第二数据为第二电子设备响应于第二数据请求确定的数据,第二数据不同于第一数据。响应于接收到的第二数据,第一电子设备显示第二界面。
根据第三方面,响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,包括:响应于第一操作,第一电子设备确定数据查询条件,数据查询条件用于查询显示第一界面所需的数据。第一电子设备向第二电子设备发送第一数据请求,第一数据请求携带有数据查询条件。
根据第三方面,或者以上第三方面的任意一种实现方式,方法还包括:第一电子设备获取本地数据中满足数据查询条件的第三数据,确定第三数据的第一信息;第一数据请求中还携带有第一信息,第一信息包括第三数据的如下一项或几项信息:行信息、列信息、水位信息。
根据第三方面,或者以上第三方面的任意一种实现方式,第一电子设备获取本地数据中满足数据查询条件的第三数据,确定第三数据的第一信息,包括:第一电子设备查询第一存储空间中存储的本地数据中满足数据查询条件的第三数据。第一电子设备将第三数据缓存至第二存储空间后,确定第三数据的第一信息。
根据第三方面,或者以上第三方面的任意一种实现方式,响应于接收到的第一数据,第一电子设备显示第一界面,包括:第一电子设备通过接收到的第一数据更新第二存储空间中的第三数据。第一电子设备根据第二存储空间中的更新后的数据,显示第一界面。
根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机可读指令,还使得电子设备执行如下操作:第一电子设备根据第一数据,更新本地数据。
第三方面以及第三方面中任意一种实现方式所对应的技术效果,可参见上述第三方面及第三方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第四方面,提供一种电子设备。该电子设备包括:处理器和存储器,存储器和处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,使得电子设备执行:第二电子设备接收第一电子设备发送的第一数据请求,第一数据请求为第一电子设备响应于用户的第一操作确定的用于获取第一操作指示显示的第一界面所需的数据的请求,第一界面对应于第二电子设备中的第一应用。第二电子设备根据第一数据请求,确定第一数据。第二电子设备向第一电子设备发送第一数据,第一数据用于第一电子设备显示第一界面。第二电子设备接收第一电子设备发送的第二数据请求,第二数据请求为第一电子设备响应于用户的第二操作确定的用于获取第二操作指示显示的第二界面所需的数据的请求,第二界面对应于第一应用。第二电子设备根据第二数据请求,确定第二数据,第二数据不同于第一数据。第二电子设备向第一电子设备发送第二数据,第二数据用于第一电子设备显示第二界面。
根据第四方面,第二电子设备根据第一数据请求,确定第一数据,包括:第二电子设备获取第一数据请求中携带的数据查询条件,确定满足数据查询条件的第一数据。
根据第四方面,或者以上第四方面的任意一种实现方式,第二电子设备根据第一数据请求,确定第一数据,包括:第二电子设备获取第一数据请求中携带的数据查询条件和第一信息,第一信息为第一电子设备确定的第一电子设备中满足数据查询条件的第三数据的信息,第一信息包括第三数据的如下一项或几项信息:行信息、列信息、水位信息。第二电子设备确定满足数据查询条件的第四数据。第二电子设备根据第一信息,确定第四数据中需要同步的第一数据。
根据第四方面,或者以上第四方面的任意一种实现方式,第二电子设备根据第一信息,确定第四数据中需要同步的第一数据,包括:第二电子设备根据第一信息,确定第四数据中包括第三数据中没有的第一行数据,确定第一行数据为第一数据。和/或,第二电子设备根据第一信息,确定第四数据中水位高于第三数据的第二行数据,确定第二行数据为第一数据。和/或,第二电子设备根据第一信息,确定第一列数据,第一列数据为第四数据和第三数据中水位相同的第三行数据中,第三数据不包括的列数据,确定第一列数据为第一数据。
第四方面以及第四方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第五方面,提供一种数据同步系统,该系统包括:第一电子设备和第二电子设备。其中,第一电子设备,用于响应于用户的第一操作,向第二电子设备发送第一数据请求,第一数据请求用于请求第一操作指示显示的第一界面所需的数据,第一界面对应于第二电子设备中的第一应用。第二电子设备,用于响应于第一数据请求,向第一电子设备发送第一数据。第一电子设备,还用于响应于接收到的第一数据,显示第一界面。第一电子设备,还用于响应于用户的第二操作,向第二电子设备发送第二数据请求,第二数据请求用于请求第二操作指示显示的第二界面所需的数据,第二界面对应于第一应用。第二电子设备,用于响应于第二数据请求,向第一电子设备发送第二数据,第二数据不同于第一数据。第一电子设备,还用于响应于接收到的第二数据,显示第二界面。
根据第五方面,第一电子设备,用于响应于第一操作,确定数据查询条件,数据查询条件用于查询显示第一界面所需的数据,数据请求携带有数据查询条件。
根据第五方面,或者以上第五方面的任意一种实现方式,第一电子设备,还用于获取本地数据中满足数据查询条件的第三数据,确定第三数据的第一信息;第一数据请求中还携带有第一信息,第一信息包括第三数据的如下一项或几项信息:行信息、列信息、水位信息。
根据第五方面,或者以上第五方面的任意一种实现方式,第二电子设备,用于确定满足数据查询条件的第四数据。第二电子设备,用于根据第一信息,确定第四数据中需要同步的第一数据,第一数据不同于第三数据,或第一数据中的部分数据对应于更新后的第三数据。
第五方面以及第五方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第六方面,本申请实施例提供一种电子设备,该电子设备具有实现如上述第一方面及其中任一种可能的实现方式中所述的数据同步方法的功能;或者,该电子设备具有实现如上述第二方面及其中任一种可能的实现方式中所述的数据同步方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应地软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第六方面以及第六方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第七方面,提供一种计算机可读存储介质。计算机可读存储介质存储有计算机程序(也可称为指令或代码),当该计算机程序被电子设备执行时,使得电子设备执行第一方面或第一方面中任意一种实施方式的方法;或者,使得电子设备执行第二方面或第二方面中任意一种实施方式的方法。
第七方面以及第七方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第八方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行第一方面或第一方面中任意一种实施方式的方法;或者,使得电子设备执行第二方面或第二方面中任意一种实施方式的方法。
第八方面以及第八方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第九方面,本申请实施例提供一种电路系统,电路系统包括处理电路,处理电路被配置为执行第一方面或第一方面中任意一种实施方式的方法;或者,处理电路被配置为执行第二方面或第二方面中任意一种实施方式的方法。
第九方面以及第九方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
第十方面,本申请实施例提供一种芯片系统,包括至少一个处理器和至少一个接口电路,至少一个接口电路用于执行收发功能,并将指令发送给至少一个处理器,当至少一个处理器执行指令时,至少一个处理器执行第一方面或第一方面中任意一种实施方式的方法;或者,至少一个处理器执行第二方面或第二方面中任意一种实施方式的方法。
第十方面以及第十方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的界面示意图一;
图2为本申请实施例提供的一种数据同步方法应用的通信系统的示意图;
图3A为本申请实施例提供的第一电子设备或第二电子设备的硬件结构示意图;
图3B为本申请实施例的第一电子设备或第二电子设备的软件结构框图示意图;
图4为本申请实施例提供的界面示意图二;
图5为本申请实施例提供的界面示意图三;
图6为本申请实施例提供的数据同步方法流程示意图一;
图7为本申请实施例提供的数据同步方法流程示意图二;
图8为本申请实施例提供的数据同步方法流程示意图三;
图9A为本申请实施例提供的数据同步场景示意图一;
图9B为本申请实施例提供的数据同步场景示意图二;
图10为本申请实施例提供的数据同步方法流程示意图四;
图11为本申请实施例提供的第一电子设备的结构示意图;
图12为本申请实施例提供的第二电子设备的结构示意图。
具体实施方式
下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
在本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
在一些场景中,不同电子设备之间可建立分布式通信连接,实现跨设备数据访问,在跨设备数据访问的过程中,实现不同电子设备之间的数据同步。
比如,第一电子设备和第二电子设备之间建立投屏连接。第一电子设备可通过投屏连接,接收第二电子设备发送的投屏数据,该投屏数据为第二电子设备中的应用的数据。第一电子设备根据投屏数据,显示相应的应用界面。这样,第一电子设备可实现跨设备访问第二电子设备的数据。
又比如,第一电子设备与第二电子设备建立连接后,可获取到第二电子设备的应用列表。之后,第一电子设备可根据应用列表,显示相应的应用图标。响应于用户对应用图标的操作,第一电子设备可向第二电子设备请求获取该应用图标对应的应用数据,实现跨设备访问第二电子设备中的数据。
示例性的,手机与平板建立通信连接,响应于用户操作,手机显示平板中的备忘录应用的界面。如图1所示,手机显示备忘录应用中的首页界面101。响应于用户沿箭头11所示方向向下滑动的操作,手机可滑动显示相应的备忘录界面。或者,响应于用户点击控件12的操作,手机可显示备忘录内容3对应的备忘录界面。
由于在使用应用的过程中,用户行为不可控。因此,在跨设备访问其他电子设备应用数据的过程中,手机在首次检测到用户指示显示平板中的备忘录应用的操作后,会向平板请求获取备忘录应用的全量数据,将全量数据同步至本地后,再进行本地数据查询。
比如,手机根据获取到的平板的应用列表,显示备忘录图标,响应于用户对备忘录图标的操作,手机向平板请求获取备忘录应用的全量数据。之后,手机再从获取到的备忘录应用的全量数据中,筛选需要显示的备忘录应用的首页需要的界面数据,根据界面数据显示备忘录首页。
可以看出,目前电子设备跨设备数据访问的过程中,电子设备单次同步的数据为应用或服务的全量数据,而响应于用户操作指示所使用的数据只占全量数据中的较小比例,无效数据占比较高,造成电子设备的性能和功耗的损失。
并且,电子设备跨设备访问数据的过程中,会同步应用或服务的全量数据。下一次该电子设备跨设备访问同样的应用或服务的过程中,还是会同步该应用或服务的全量数据,而不会使用本地已经缓存的该应用或服务的数据,导致跨设备访问数据的过程能效比较低。
此外,电子设备跨设备访问数据的过程中,需要先将获取到的应用或服务的全量数据通过输入/输出(input/output,I/O)接口存储到磁盘中,之后再从磁盘中筛选需要的数据,通过I/O接口输出筛选出的数据。在该过程中,电子设备至少需要一次磁盘的写I/O接口操作和一次读I/O接口操作,而磁盘数据读写速度较慢,造成电子设备性能的损耗。
由此,本申请实施例提供一种数据同步方法,第一电子设备在访问第二电子设备中的应用或服务的过程中,可响应于用户操作,向第二电子设备请求获取用户操作指示显示的界面所需的数据。这样,第一电子设备和第二电子设备只需要传输应用或服务的数据中显示界面所需的部分数据。从而降低无效数据的传输,减少数据同步的数据量,提高数据同步效率,降低功耗。
图2为本申请实施例提供的数据同步方法应用的通信系统的示意图。如图2中所示,该通信系统包括第一电子设备100和第二电子设备200。
可选的,第一电子设备100为接收端设备,第二电子设备200为源端设备,第一电子设备100跨设备访问第二电子设备200中的应用或服务的数据,同步所需应用数据或服务数据。比如,第一电子设备100响应于用户操作,跨设备访问第二电子设备200,按需进行数据同步。之后,第一电子设备100根据同步到的数据,显示用户操作指示显示的界面。
可选的,第一电子设备100或第二电子设备200例如可以为手机、平板电脑、笔记本电脑、大屏设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、可穿戴设备、人工智能(artificialintelligence,AI)设备等终端设备,第一电子设备100或第二电子设备200安装的操作系统包括但不限于或者其它操作系统。本申请对第一电子设备100或第二电子设备200的具体类型、所安装的操作系统均不作限制。
在一种实施方式中,第一电子设备100和第二电子设备200之间建立有无线通信连接或有线通信连接(如通过网线连接等)。其中,建立无线通信连接的无线通信技术包括但不限于以下的至少一种:蓝牙(bluetooth,BT)(例如,传统蓝牙或者低功耗(bluetooth lowenergy,BLE)蓝牙),无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),近距离无线通信(near field communication,NFC),紫蜂(Zigbee),调频(frequency modulation,FM),红外(infrared,IR),超宽带(ultrawide band,UWB)技术等。
可选的,第一电子设备100和第二电子设备200也可以通过局域网中的第三方设备建立通信连接,第三方设备例如是路由器、网关、智能设备控制器、服务器、无线访问接入点(access point,AP)设备等。
比如,第一电子设备100和第二电子设备200都支持靠近发现功能。示例性地,第一电子设备100靠近第二电子设备200后,第一电子设备100和第二电子设备200能够互相发现对方,之后建立诸如Wi-Fi端到端(peer to peer,P2P)连接和/或蓝牙连接等无线通信连接。之后,第一电子设备100可响应于用户操作,通过无线通信连接访问第二电子设备200的数据。
又比如,第一电子设备100和第二电子设备200通过局域网,建立无线通信连接。比如,第一电子设备100和第二电子设备200都连接至同一路由器。
再比如,第一电子设备100和第二电子设备200通过蜂窝网络、因特网等,建立无线通信连接。如第二电子设备200通过路由器接入因特网,第一电子设备100通过蜂窝网络接入因特网;进而,第一电子设备100和第二电子设备200建立无线通信连接。
示例性的,图3A示出了第一电子设备100或第二电子设备200的一种结构示意图。
第一电子设备100或第二电子设备200可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,传感器模块180,按键190,马达191,外设模块192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
可以理解的是,本申请实施例示意的结构并不构成对第一电子设备100或第二电子设备200的具体限定。在本申请另一些实施例中,第一电子设备100或第二电子设备200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
比如,在第一电子设备100为PC的情况下,第一电子设备100可以不包括移动通信模块150和SIM卡接口195。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为第一电子设备100或第二电子设备200充电,也可以用于第一电子设备100或第二电子设备200与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对第一电子设备100或第二电子设备200的结构限定。在本申请另一些实施例中,第一电子设备100或第二电子设备200也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
第一电子设备100或第二电子设备200的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。第一电子设备100或第二电子设备200中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在第一电子设备100或第二电子设备200上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
无线通信模块160可以提供应用在第一电子设备100或第二电子设备200上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellitesystem,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near fieldcommunication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,第一电子设备100或第二电子设备200的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得第一电子设备100或第二电子设备200可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packetradio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-divisioncode division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(globalpositioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite basedaugmentation systems,SBAS)。
第一电子设备100或第二电子设备200通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),例如采用有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Mini-led,Micro-led,Micro-oled,量子点发光二极管(quantumdot light emitting diodes,QLED)等生产制造。在一些实施例中,第一电子设备100或第二电子设备200可以包括1个或N个显示屏194,N为大于1的正整数。
在一种实施方式中,第一电子设备100响应于用户指示显示第一应用界面的操作,向第二电子设备200发送数据查询条件和本地数据快照。这样,第二电子设备200根据数据查询条件和本地数据快照,确定数据查询条件对应的数据中第一电子设备100中未存储的数据,将该数据发送到第一电子设备100。之后,第一电子设备100可根据获取到的数据和本地存储数据,在显示屏194上显示用户指示显示的第一应用界面。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,第一电子设备100或第二电子设备200可以包括1个或N个摄像头193,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展第一电子设备100或第二电子设备200的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用(比如声音播放功能,图像播放功能等)等。存储数据区可存储第一电子设备100或第二电子设备200使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行第一电子设备100或第二电子设备200的各种功能应用以及数据处理。
可选的,内部存储器121中包括磁盘和内存。其中,由于内存的读写速度远远高于磁盘的读写速度,因此系统会将读写较为频繁的数据先缓存至内存中,实现高速缓存。
一些示例中,第一电子设备100在确定跨设备访问数据的数据查询条件后,根据数据查询条件将从磁盘中筛选出的数据写入共享内存中,并确定该数据的第一信息。之后,第一电子设备100通过移动通信模块150或无线通信模块160,向第二电子设备200发送数据筛选条件和第一信息,以获取磁盘中未存储的同步数据。第一电子设备100将获取到的同步数据写入共享内存中,那么后续应用或服务的进程可直接从共享内存中读取所需数据,从而有效提高读写速度,减少磁盘数据的读写次数,提高跨设备数据访问效率。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。第一电子设备100或第二电子设备200可以通过音频模块170,例如音乐播放,录音等。音频模块170可以包括扬声器,受话器,麦克风,耳机接口,以及应用处理器等实现音频功能。
传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
触摸传感器,也称“触控器件”。触摸传感器可以设置于显示屏194,由触摸传感器与显示屏194组成触摸屏,也称“触控屏”。触摸传感器用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器也可以设置于第一电子设备100或第二电子设备200的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。第一电子设备100或第二电子设备200可以接收按键输入,产生与第一电子设备100或第二电子设备200的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和第一电子设备100或第二电子设备200的接触和分离。第一电子设备100或第二电子设备200可以支持1个或N个SIM卡接口,N为大于1的正整数。
第一电子设备100或第二电子设备200的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明第一电子设备100或第二电子设备200的软件结构。
图3B是本申请实施例的第一电子设备100或第二电子设备200的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图3B所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
一些示例中,如图3B所示,第二电子设备200中安装有第一应用。第一电子设备100可通过与第二电子设备200之间的通信连接,获取第二电子设备200的应用程序信息,从而确定第二电子设备200安装有第一应用。可选的,第一电子设备100可根据获取到的应用程序信息,显示第二电子设备200中应用的应用图标。响应于用户点击第一应用的应用图标的操作,第一电子设备100向第二电子设备200请求获取第一应用的数据,从而实现跨设备访问第一应用的数据。
可选的,第一电子设备100请求获取的第一应用的数据包括用户点击第一应用的应用图标所指示显示的界面的数据,如第一应用的首页数据。
可选的,第一电子设备100中可安装有第一应用或未安装第一应用。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3B所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,备忘录应用的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供第一电子设备100或第二电子设备200的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
二维图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
以下以第一电子设备100为第一电子设备,第二电子设备200为第二电子设备,以第一电子设备100跨设备访问第二电子设备200的数据为例,对本申请实施例提供的数据同步方法进行说明。
在一种实施方式中,第一电子设备和第二电子设备之间建立有通信连接,第一电子设备可通过通信连接跨设备访问第二电子设备中的数据,实现第一电子设备100和第二电子设备200之间的数据同步。
可选的,第一电子设备和第二电子设备之间的通信连接例如为多屏协同连接,以满足用户通过第一电子设备使用第二电子设备的功能的需求。比如,第一电子设备和第二电子设备中安装多屏协同应用,之后可通过多屏协同应用建立第一电子设备和第二电子设备之间的多屏协同连接。其中,建立多屏协同连接的各个电子设备中,第一电子设备(如接收端设备)可同步第二电子设备(如源端设备)中的应用数据,根据获取到的应用数据,显示第二电子设备中的应用界面,用户可在第一电子设备上使用第二电子设备的应用。
可选的,第一电子设备与第二电子设备建立通信连接后,可获取到第二电子设备的应用列表信息,并根据应用列表信息显示相应的应用图标。之后,第一电子设备可响应于用户对应用图标的操作,向第二电子设备发送应用启动请求。第二电子设备响应于接收到的应用启动请求,后台启动相应的应用,并将相应的应用数据发送到第一电子设备。那么第一电子设备可根据获取到的应用数据显示应用界面。从而实现通过投屏的方式启动第二电子设备中的应用,并且不影响第二电子设备的运行。这样,第一电子设备在不安装第二电子设备应用的情况下,也可根据应用列表信息,确定第二电子设备安装有该应用,从而实现第一电子设备显示该应用界面供用户使用。
在上述示例的跨设备数据访问场景中,第一电子设备需要获取到第二电子设备中的应用数据,从而实现显示第二电子设备中的应用的界面。为避免单次数据同步的数据量过大,第一电子设备可在检测到用户指示显示应用界面的操作后,向第二电子设备请求获取用于显示待显示界面的数据,从而减少数据传输量。
示例性的,手机(如第一电子设备)与平板(如第二电子设备)建立通信连接,用户通过手机使用平板中的备忘录应用(如第一应用),手机需要同步平板中的备忘录数据。如图4中的(a)所示界面401,手机显示平板中的备忘录应用的首页的过程中,检测到用户点击控件41的操作,确定用户指示打开备忘录内容3。那么,手机可确定待显示的界面为备忘录内容3的界面,可向平板请求获取用于显示该界面的数据。
可选的,手机响应于用户操作,生成用于查询显示备忘录内容3对应的界面所需的数据对应的数据查询条件,并将该数据查询条件发送到平板。那么,平板根据接收到的数据查询条件,可确定相应的数据,并将该数据发送到手机。如图4中的(b)所示,手机接收到平板发送的数据后,可显示备忘录内容3对应的界面402。
如此,在跨设备数据访问过程中,第一电子设备和第二电子设备之间传输的数据为用于第一电子设备显示待显示界面的数据,而不再是应用的全量数据。有效减少数据传输量,降低电子设备功耗。
可选的,用户操作指示显示的界面对应的数据,可能包括用于显示待显示界面的数据以及用于显示与该待显示界面相关联的界面的数据。
示例性的,如图4所示场景,备忘录内容3包括的内容较多,手机可能无法在一个界面上显示全部的备忘录内容3包括的内容。如图4中的(b)所示界面402,响应于用户在显示屏上沿箭头43所示方向的滑动操作(即翻页操作),手机可显示如图4中的(c)所示界面403。如附图标记44所示,手机可在界面403上,显示备忘录内容3中剩余的内容。
那么,响应于用户在界面401上用户点击控件41的操作,手机可获取到备忘录内容3包括的全部内容对应的数据。之后,手机可根据显示屏大小等信息,基于获取到的第二电子设备发送的数据,显示界面402。如后续手机检测到用户在界面402上的翻页操作,可直接根据已获取的数据,显示界面403。
或者,应用中已完成数据的切分。响应于用户在界面401上用户点击控件41的操作,手机可向平板请求获取用于显示界面402的数据。如后续手机检测到用户在界面402上的翻页操作,手机可再向平板请求获取用于显示界面403的数据。
需要说明的是,为了便于描述,下文中第一电子设备响应于用户操作,确定的界面所需的数据,包括用户操作指示的界面对应的全部数据。如包括显示当前待显示的界面的数据,还可包括显示与当前待显示的界面相关联的界面的数据。
可选的,第一电子设备如之前已经访问过用户操作指示显示的第二电子设备中的应用,那么第一电子设备本地可能保存有该应用的数据,该数据在本次数据同步过程中可不必再重新同步。那么,第一电子设备可生成本地数据快照。之后,第一电子设备可将数据查询条件和本地数据快照发送到第二电子设备,第二电子设备可根据数据查询条件和本地数据快照,筛选待显示的应用界面对应的数据中第一电子设备未存储的数据,将这一部分数据同步到第一电子设备。从而能够在实现数据同步的基础上,减少单次数据传输数量,提高同步效率,降低功耗。
示例性的,如图4所示中的(a)所示,响应于用户在界面401上用户点击控件41的操作,手机(即第一电子设备)获取到的平板(即第二电子设备)发送的数据仅包括用于显示如图4中的(b)所示的界面402的数据(即当前备忘录内容3对应的内容只包括界面402的显示内容)。
之后,响应于用户在平板上,对备忘录应用中备忘录内容3的编辑操作,新增部分备忘录数据。之后,响应于用户在界面401上用户点击控件41的操作,手机向平板发送携带有界面402对应的本地数据快照的数据请求。那么,平板可根据获取到的本地数据快照,向手机发送备忘录内容3中新增的备忘录数据,而不必再重复发送第一电子设备中已有的数据。
如此,进一步减少跨设备数据访问过程中,电子设备之间数据的传输量,降低电子设备功耗。
在一种实施方式中,第一电子设备和第二电子设备之间跨设备数据访问的过程中,不仅可以实现如上所述的跨设备访问应用数据,也可实现跨设备访问服务数据等,满足第一电子设备和第二电子设备之间的数据同步需求。可选的,跨设备访问的应用数据例如包括应用显示数据、音频数据等多种类型的数据。
比如,第一电子设备跨设备访问第二电子设备中的备忘录应用,同步备忘录应用的界面显示数据,以显示第二电子设备中的备忘录应用界面。或者,第一电子设备跨设备访问第二电子设备中的音乐应用,同步音乐应用的界面显示数据和音频数据,以显示第二电子设备中的音乐应用界面,以及播放音乐。
又比如,第一电子设备跨设备访问第二电子设备中的任务管理器服务、安装包管理服务等服务,以实现同步第一电子设备和第二电子设备之间的服务数据。
示例性的,仍以手机为接收端设备,平板为源端设备,手机显示平板中的应用(如备忘录应用)为例。如图5中的(a)所示界面501,响应于用户在显示屏底部沿箭头51所示方向的上划操作,手机确定用户指示显示多任务界面。多任务界面中通过层叠、堆叠或并排等排列方式来显示已启动的多个应用(任务)对应的卡片。其中,手机跨设备访问平板中的应用,那么在手机的多任务界面上显示的卡片可能包括平板中的应用对应的卡片。因此,手机响应于用户操作启动任务管理器服务后,任务管理器服务不仅需要确定手机中已经启动的应用,还需要与平板中的任务管理器服务进行同步,以确定手机使用的平板中的应用。并且,手机可获得手机在检测到用户指示显示多任务界面的操作前,这部分平板应用对应的显示界面内容,以生成相应的卡片。之后,手机可显示如图5中的(b)所示的多任务界面502。在多任务界面502中,如附图标记52所示,显示有手机使用的平板中的备忘录应用对应的卡片。
如此,在跨设备数据访问过程中,第一电子设备和第二电子设备同步服务数据的过程中,传输的数据为用于第一电子设备显示待显示界面的数据,同样不是服务或应用的全量数据。有效减少数据传输量,降低电子设备功耗。
如下以第一电子设备跨设备访问第二电子设备中的应用为例,对上述数据同步过程进行详细介绍。
需要说明的是,第一电子设备跨设备访问第二电子设备中的应用用于表示第一电子设备跨设备访问第二电子设备中的应用的应用数据。可选的,第一电子设备中可安装有该应用,或未安装该应用。
示例性的,图6为本申请实施例提供的一种数据同步方法的流程示意图。如图6所示,该方法包括如下步骤。
S601、响应于用户操作,第一电子设备向第二电子设备发送数据请求。
其中,用户操作例如为用户对第一应用的操作,第一应用为第二电子设备中的应用。用户操作例如包括启动第一应用的操作(如对第一应用图标的操作、语音启动第一应用的操作等)、在第一应用界面上点击预设控件的操作(如用于指示显示第一应用的功能页面的操作等)、在第一电子设备显示屏上的手势操作等。
在一种实施方式中,第一电子设备和第二电子设备之间建立有通信连接,第一电子设备跨设备访问第二电子设备中的第一应用。第一电子设备在检测到用户对第一应用的操作后,确定第一应用为跨设备访问的第二电子设备中的应用。因此,第一电子设备向第二电子设备发送数据请求,用于请求获取第一应用中的数据。其中,为减少单次数据传输数量,第一电子设备可向第二电子设备请求获取第一应用数据中用于显示用户操作指示显示的界面的数据。
可选的,如图7所示,步骤S601包括步骤S601a和步骤S601b。
S601a、响应于用户操作,第一电子设备确定数据查询条件。
在一种实施方式中,第一电子设备响应于用户对第一应用的操作,可确定显示该操作指示的界面所需的数据对应的数据查询条件,通过数据查询条件获取相应的数据。
可选的,第一电子设备的数据库(如磁盘、内存等)可为关系型数据库等多种类型的数据库。其中,数据库中的数据可通过结构化查询语言(structured query language,SQL)等多种方式进行存储。以关系型数据库为例,在关系型数据库中,数据以行、列对应关系进行存储。其中,一条数据记录对应于一行数据,一条数据记录中不同的字段对应于该行数据不同的列。数据记录每更新一次对应于一个时间戳,通过水位高低比较相应数据记录间时间戳的先后顺序。如水位高,用于表示该条数据记录的时间戳更近,为距离当前时间点更加近的时间点更新的数据;水位低,用于表示该条数据记录的时间戳较远,为距离当前时间点较远的时间点更新的历史数据。那么相应的,数据查询条件中可包括待查询数据对应的应用名称、行信息、列信息、水位信息等中的一项或几项。
示例性的,数据库中存储的数据如以下表1所示的格式进行存储。其中,一条数据记录包括标识(identity,ID)字段、标题字段、修改时间字段、分类字段、内容字段。电子设备通过ID字段,可获取到相应的数据记录。可选的,数据查询条件包括数据记录的ID。
表1
示例性的,以上述图4所示场景为例,如图4中的(a)所示界面401,手机(第一电子设备)显示平板(第二电子设备)中的备忘录应用的首页的过程中,检测到用户点击控件41的操作,确定用户指示打开备忘录内容3。那么,手机可确定待显示的界面为备忘录内容3对应的界面,进而确定显示该界面所需的数据对应的数据查询条件。
比如,如上表1所示,粗实线选中的窗口为显示备忘录应用首页的显示数据对应的数据窗口,如显示备忘录首页需要通过该数据窗口对应的数据查询条件查询相应的显示数据。其中,001-006对应的数据为数据库中分别用于显示界面401所示的备忘录内容1-备忘录内容6的数据。那么,如上所述响应于用户点击界面401上控件41的操作,手机可确定数据查询条件包括查询上表1中双实线选中的数据窗口对应的显示数据。如数据查询条件包括该数据窗口的行、列、水位信息等,用于查询ID为003的数据记录中内容字段的数据。
S601b、第一电子设备向第二电子设备发送数据请求,该数据请求携带有数据查询条件。
在一种实施方式中,第一电子设备在确定数据查询条件后,可向第二电子设备发送携带有数据查询条件的数据请求。相应的,第二电子设备接收第一电子设备发送的数据请求。
通过上述步骤S601a和步骤S601b,第一电子设备可响应于用户操作,向第二电子设备请求获取相应的第一应用数据。
S602、第二电子设备根据数据请求,确定目标数据,该目标数据用于显示用户操作指示显示的界面。
在一种实施方式中,第二电子设备在接收到数据请求后,可获取其中携带的数据查询条件。之后,第二电子设备可根据数据查询条件,确定第一电子设备待查询的数据所对应的应用,确定该应用的数据。之后,第二电子设备可根据数据查询条件,确定应用数据中满足数据查询条件的目标数据。
示例性的,如上述图4所示场景,第二电子设备确定的目标数据为备忘录内容3对应的数据。如上表1所示,目标数据为ID为003的数据记录包括的数据。
S603、第二电子设备向第一电子设备发送目标数据。
在一种实施方式中,第二电子设备在确定目标数据后,将该目标数据发送到第一电子设备。相应的,第一电子设备接收第二电子设备发送的目标数据。
S604、第一电子设备根据目标数据,显示用户操作指示显示的界面。
在一种实施方式中,第一电子设备在接收到目标数据后,可根据目标数据显示用户操作指示显示的界面。
可选的,第一电子设备在接收到目标数据后,可将目标数据缓存至内存中。相比于磁盘,内存中数据读写速度较快,提高数据读写速度,从而提高界面显示效率。
示例性的,如上述图4所示场景,第二电子设备根据获取到的目标数据,可显示如图4中(b)所示界面402。
如此,第一电子设备根据实际需要,在跨设备数据访问过程中,按需进行数据同步,有效减少数据同步过程中的无效数据同步,提升数据同步过程中的能效比。
此外,第一电子设备按需同步数据,在保证数据同步的基础上,有效节省数据同步功耗,提升用户使用体验。
可选的,如图6所示,在步骤S604之后,还可以包括步骤S605,用于更新本地存储数据。
S605、第一电子设备更新本地存储数据。
在一种实施方式中,第一电子设备在接收到目标数据后,可保存接收到的目标数据。第一电子设备在跨设备访问第二电子设备的应用的过程中,可能会多次获取到第一应用的数据(即目标数据)。那么,第一电子设备在接收到目标数据后,也可根据目标数据,更新本地存储的第一应用数据。
示例性的,如上表1所示,第一电子设备中本地存储数据中包括粗实线选中的数据窗口对应的显示数据,第一电子设备接收到的第二电子设备发送的目标数据包括双实线选中的数据窗口对应的显示数据(即目标数据)。那么,第一电子设备可根据获取到目标数据更新本地存储的第一应用数据,如第一电子设备根据获取到的目标数据,更新原ID为003对应的一条数据记录。
在跨设备访问第二电子设备的应用的过程中,第一电子设备可保存相应的应用数据。那么可选的,第一电子设备在数据同步过程中,也可选择不再同步已经保存的部分应用数据,从而进一步减少数据传输量。
示例性的,图8为本申请实施例提供的又一种数据同步方法的流程示意图。如图8所示,该方法包括如下步骤。
S801、响应于用户操作,第一电子设备确定数据查询条件。
可选的,步骤S801的内容可参考上述步骤S601a所述的相关内容,在此不再赘述。
S802、第一电子设备确定本地存储数据中,满足数据查询条件的数据的第一信息。
在一种实施方式中,第一电子设备在此次检测到用户操作之前,可能已经获取过相应的部分应用数据,那么本地磁盘中也会存储有这部分数据。第一电子设备在确定数据查询条件后,可先确定本地存储数据中满足数据查询条件的数据的第一信息。这样后续,第二电子设备在确定需要同步的数据的过程中,可确定不再同步这部分数据中重复的数据,降低数据同步量。可选的,第一信息例如包括第一电子设备本地存储数据中满足数据查询条件的数据的行信息、列信息、水位信息等。
示例性的,如图4中的(a)所示界面401,手机(即第一电子设备)已经显示备忘录应用的首页,即本地存储数据至少包括备忘录首页数据。如上述步骤S601a中关于上表1所述示例的内容,本地存储有粗实线选中的数据窗口对应的显示数据。手机响应于用户点击界面401上所示控件41的操作,确定用户指示显示的界面为备忘录内容3对应的界面,如上表1所示,数据查询条件为双实线选中的数据窗口的信息。那么,可确定本地数据快照为两个数据窗口交集的数据窗口的第一信息。
示例性的,如图9A所示,第一电子设备中本地存储的第一应用数据为数据A,第二电子设备中第一应用的数据为数据B。可以理解的是,数据B为第一应用的最新的全量数据,数据B包括数据A。可选的,在一些示例中,数据A中的部分数据为数据B中部分数据更新前的第一应用数据。如图9A所示,第一电子设备响应于用户操作,确定完成用户操作指示显示的界面所需的数据包括第一电子设备中存储的数据A中部分数据,以及第一电子设备中未存储的部分数据(这部分数据在第二电子设备中存储),即数据查询条件用于查询数据C和数据D。
可选的,如图9B中的(a)所示,第一电子设备的磁盘中已经存储有第一应用的数据A。并且,响应于用户操作,第一应用的进程启动第一电子设备的数据管理进程,并向数据管理进程发送数据查询条件。之后,数据管理进程从磁盘中筛选出满足数据查询条件数据C,并将数据C写入共享内存中。在该过程中,第一电子设备中的数据管理进程可确定数据C的第一信息。
S803、第一电子设备向第二电子设备发送数据请求,该数据请求中携带有数据查询条件和第一信息。
在一种实施方式中,第一电子设备在确定数据查询条件和本地存储数据中满足数据查询条件的数据的第一信息后,可向第二电子设备发送携带有数据查询条件和第一信息的数据请求。相应的,第二电子设备接收第一电子设备发送的数据请求。
S804、第二电子设备根据数据查询条件和第一信息,确定满足数据查询条件的差分数据。
在一种实施方式中,第二电子设备获取到数据查询条件和第一信息后,确定数据查询条件对应的第一应用,并获取第一应用的数据。之后,第二电子设备在第一应用的数据中查询满足数据查询条件的数据。最后,第二电子设备根据第一信息,在查询到的数据中确定差分数据。
比如,第二电子设备确定待显示的界面的显示数据(满足数据查询条件的数据)中,第一电子设备未存储的显示数据(差分数据)。
可选的,第二电子设备通过比较第一信息和查询到的数据的信息,将确定的有效数据打包为差分数据。
比如,第二电子设备根据第一信息,确定数据查询条件查询到的数据中,第一电子设备未保存的某行数据,第二电子设备可将该行数据确定为差分数据(即有效数据)。如上表1所示,第二电子设备确定数据查询条件查询到的数据包括ID为003的这一行数据(即包括ID为003的这一条数据记录),而根据第一信息可确定第一电子设备中未保存该行数据。那么,第一电子设备可将该行数据确定为差分数据。
又比如,第二电子设备根据第一信息,确定数据查询条件查询到的数据中,第一电子设备已保存某行数据,但该行数据水位低于第二电子设备中存储的该行数据的水位,第二电子设备可将该行数据确定为差分数据。如上表1所示,第二电子设备确定数据查询条件查询到的数据包括ID为003的这一行数据,且根据第一信息可确定第一电子设备中已保存该行数据。但是,第二电子设备根据第一信息,确定第一电子设备中保存的ID 003这一行数据的水位低于第二电子设备中保存的ID 003这一行数据的水位。即第二电子设备中保存的ID为003这一行数据,相较于第一电子设备中ID为003这一行数据为更加新的数据,因此此次需要重新同步。那么,第二电子设备可将ID为003这一行数据确定为差分数据。示例性的,如图4所示场景,如第一电子设备中保存的对应于备忘录内容3的备忘录数据包括用于显示界面402的显示数据,第二电子设备中保存的对应于备忘录内容3的备忘录数据包括用于显示界面402和界面403的显示数据(即包括新增的附图标记44对应的备忘录数据)。那么,第二电子设备中保存的对应于备忘录内容3的备忘录数据的水位高于第一电子设备中保存的对应于备忘录内容3的备忘录数据的水位,第二电子设备中保存的对应于备忘录内容3的备忘录数据为更新后的备忘录数据。
再比如,第二电子设备根据第一信息,确定数据查询条件查询到的数据中,第一电子设备已保存某行数据,且该行数据的水位相同,但列不同,第二电子设备可将该行数据中的新增列的数据确定为有效数据。如上表1所示,第二电子设备确定数据查询条件查询到的数据包括ID为003的这一行数据,且根据第一信息可确定第一电子设备中已保存水位相同的该行数据。但是,第二电子设备根据第一信息,确定第一电子设备中未保存ID为003这一行数据中,“内容”字段对应的列数据。那么,第二电子设备可将ID为003这一行数据中“内容”字段对应的列数据确定为有效数据。
可选的,第二电子设备可将前述示例场景中,未包括的其他场景中的数据确定为无效数据,不必打包在差分数据中。可选的,差分数据可为空,即此次第一电子设备和第二电子设备之间不必再传输同步数据。后续第一电子设备根据获取到的差分数据,可确定根据本地存储数据中,满足数据查询条件的数据,显示待显示的应用界面。
示例性的,如上述步骤S601a中关于上表1所示例的内容,第一电子设备本地存储有粗实线选中的数据窗口对应的显示数据,数据查询条件为双实线选中的数据窗口的信息。如上述步骤S802所述,第一信息为粗实线选中的数据窗口和双实线选中的数据窗口之间交集的数据窗口的信息。那么,第二电子设备可确定差分数据为双实线选中的数据窗口中的“内容”数据窗口对应的内容数据。即通过滑窗的方式,确定差分数据。
示例性的,如图9B中的(a)所示,第一电子设备中的数据管理进程确定数据A中满足数据查询条件的数据为数据C。那么,第一电子设备中的数据管理进程将数据查询条件和数据C的第一信息发送到第二电子设备。第二电子设备中的数据管理进程可根据数据查询条件确定用户操作指示跨设备访问的应用对应的数据为磁盘中的数据B,并且确定满足数据查询条件的数据包括数据B中的数据C和数据D。可选的,第二电子设备中的数据管理进程将数据C和数据D缓存至共享内存中。之后,如图9B中的(b)所示,第二电子设备中的数据管理进程可根据数据C的第一信息,确定差分数据为数据D,该数据D即为待第一电子设备同步的数据。
其中,为了方便描述,在图9B所示的场景中,以第一电子设备中存储的数据C为最新的数据,且将第二电子设备查询到的数据切分为数据C和数据D为例,对跨设备数据访问过程中的数据同步过程进行说明。可以理解的是,在实际跨设备数据访问过程中,第二电子设备根据数据查询条件查询到的数据可以包括第一电子设备中的部分数据,或者也可以包括第一电子设备中的部分数据对应的更新后的数据(如数据B包括第一电子设备中的数据C更新后的数据)。
S805、第二电子设备向第一电子设备发送差分数据。
在一种实施方式中,第二电子设备在确定差分数据后,将该差分数据发送到第一电子设备。相应的,第一电子设备接收第二电子设备发送的差分数据。
S806、第一电子设备根据差分数据和本地存储数据,显示用户操作指示显示的界面。
在一种实施方式中,第一电子设备在接收到差分数据后,根据差分数据和本地存储的第一应用数据,确定待显示的第一应用界面的显示数据,并将该显示数据发送到第一应用。第一应用获取到显示数据后,可显示相应的第一应用界面。
示例性的,如图4所示场景,手机获取到平板发送的差分数据后,可将差分数据同步到共享内存中,并记录差分数据对应的偏移窗口信息。之后,备忘录应用根据偏移窗口信息,可在共享内存中确定所需的显示数据,以显示如图4中的(b)所示的备忘录内容3的界面402。
又示例性的,如图9B中的(c)所示,第一电子设备中的数据管理进程获取到第二电子设备发送的差分数据(如数据D)后,数据管理进程将数据D写入到第一电子设备的共享内存中,并确定数据D对应的偏移窗口信息。之后,数据管理进程向第一应用的进程发送数据同步完成信号,该数据同步完成信号中可携带共享内存信息和偏移窗口信息。第一应用的进程根据偏移窗口信息可从共享内存中读取出数据C和数据D。进而第一应用的进程可根据数据C和数据D显示用户操作指示显示的界面。
如此,第一电子设备根据实际需要,在跨设备数据访问过程中,按需进行数据同步,有效减少数据同步过程中的无效数据同步,提升数据同步过程中的能效比。
并且,第一电子设备按需同步数据,在保证数据同步的基础上,有效节省数据同步功耗,提升用户使用体验。
此外,第一电子设备通过共享内存中的数据同步,减少磁盘中数据的读写次数,提高效率,降低第一电子设备的性能损耗。
S807、第一电子设备通过差分数据更新本地数据。
在一种实施方式中,第一电子设备在接收到差分数据后,也可根据差分数据,更新本地存储的第一应用数据。
示例性的,如上表1所示,第一电子设备中本地存储数据中包括粗实线选中的数据窗口对应的显示数据,第一电子设备接收到的第二电子设备发送的差分数据包括双实线选中的“内容”数据窗口对应的显示数据。那么,第一电子设备可根据获取到的“内容”数据窗口对应的显示数据更新本地存储的第一应用的显示数据。比如,第一电子设备新增“内容”数据窗口对应的显示数据。
可选的,第一电子设备更新本地数据,包括根据差分数据新增本地未存储的显示数据,还可包括更新的第一电子设备中已经存储的旧的显示数据。如上表1所示,差分数据还包括双实线选中的“分类”数据窗口对应的数据。那么,第一电子设备在获取到差分数据后,可根据双实线选中的“分类”数据窗口对应的显示数据更新本地存储的原“分类”数据窗口对应的显示数据。
又示例性的,如图9B中的(c)所示,第一电子设备中的数据管理进程在将获取到第二电子设备发送的差分数据D写入共享内存后,还可根据差分数据D更新本地磁盘中存储的数据A,如将数据A更新为数据A’。
其中,本申请实施例不限制上述步骤S806和步骤S807的执行顺序。第一电子设备在获取到差分数据后,可先根据差分数据显示界面,之后再更新本地存储数据(即先执行步骤S806,再步骤S807)。或者,第一电子设备在获取到差分数据后,可先根据差分数据更新本地存储数据,之后再显示界面(即先执行步骤S807,再步骤S806)。或者,第一电子设备获取到差分数据后,在根据差分数据显示界面的过程中,更新本地存储数据(即同步执行步骤S806和步骤S807)。
可选的,第一电子设备中的共享内存的生命周期对应于应用或服务的生命周期,在第一电子设备结束此次服务或应用的进程的运行后,共享内存的生命周期也随之结束。因此,第一电子设备通过同步磁盘中的数据,避免同步数据丢失,以便于下次启动应用或服务时,可从磁盘中读取到相应的数据。
可选的,如图9B中的(a)所示,第一电子设备中的数据管理进程在共享内存生命周期的开始阶段(如启动应用或服务后),先从磁盘中确定满足数据查询条件的数据,再将该数据写入到共享内存中,以完成后续的数据同步过程。
后续,响应于用户操作,第一电子设备中的数据管理进程可直接先确定共享内存中的数据是否满足数据查询条件,如存在已经满足数据查询条件的数据,可直接完成数据读取,提高界面显示执行效率。或者,数据管理进程确定磁盘中和共享内存中均存在满足数据查询条件的数据,可将磁盘中有但共享内存中没有的数据,从磁盘中读取出来,写入到共享内存中,之后数据管理进程再基于共享内存中的数据完成跨设备的数据同步。从而减少磁盘数据的读取量,提高效率。
在一些场景中,在上述步骤S802中,第一电子设备在从磁盘中查询到满足数据查询条件的数据后,也可直接确定这部分数据的第二信息,向第二电子设备发送第二信息和数据查询条件。之后,第一电子设备也可获取到第二电子设备根据第二信息和数据查询条件确定的差分数据。第一电子设备再根据差分数据更新磁盘中的数据,以完成用户操作指示的任务。
如此,第一电子设备同样能够减少跨设备数据访问过程中,第一电子设备和第二电子设备之间传输的数据量,提升数据同步过程中的能效比。
可选的,第一电子设备和第二电子设备跨设备数据访问过程中,其他应用或服务的数据同步的过程,可参考上述各个实施例中示例的应用数据同步过程,本申请实施例对此不再赘述。
可选的,图10为本申请实施例提供的一种数据同步方法流程的示意图。如图10所示,该方法包括如下步骤。
S1001、响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,该第一数据请求用于请求第一操作指示显示的第一界面所需的数据。
其中,第一界面对应于第二电子设备中的第一应用。可选的,第一应用包括第二电子设备中的应用程序(application,APP),或服务(如任务管理器服务、安装包管理服务等)。响应于第一操作,第一电子设备和第二电子设备可同步该第一操作指示显示的第一界面所需的应用数据或服务数据。
其中,第一界面包括为第一电子设备响应于用户操作待显示的界面。第一数据包括用户操作指示的待显示的界面的数据以及与待显示的界面关联界面的数据,或者第一数据包括用户操作指示的待显示的界面的数据。
示例性的,如上述图4所示场景,第一界面为如图4中的(b)所示界面402。第一数据包括备忘录应用3对应的全部数据,如包括用于显示界面402的数据,以及用于显示如图4中的(c)所示界面403的数据。或者,第一数据包括用于显示界面402的数据。
在一种实施方式中,响应于第一操作,第一电子设备确定数据查询条件,该数据查询条件用于查询显示第一界面所需的数据。之后,第一电子设备向第二电子设备发送的第一数据请求中携带有数据查询条件,从而第二电子设备能够根据数据查询条件,确定显示第一界面所需的数据。
可选的,第一电子设备确定数据查询条件后,获取本地数据中满足数据查询条件的第三数据,确定第三数据的第一信息。其中,第一数据请求中还携带有第一信息,第一信息包括第三数据的如下一项或几项信息:行信息、列信息、水位信息。
这样,第二电子设备在获取第一数据请求后,可确定第一电子设备中已经存储的部分用于显示第一界面所需的数据。那么,第二电子设备可选择不再同步这部分数据,进一步减少后续应用数据同步过程中的数据传输量。
可选的,第一电子设备查询第一存储空间中存储的本地数据中满足数据查询条件的第三数据。之后,第一电子设备将第三数据缓存至第二存储空间后,确定第三数据的第一信息。其中,第一存储空间例如为磁盘,第二存储空间例如为共享内存。相比于磁盘,共享内存中数据读写速度较快,将用于显示第一界面的数据缓存至共享内存中后,应用进程可直接在共享内存中获取第一界面的数据,提高数据读写速度,从而提高界面显示效率。
示例性的,如图9B中的(a)所示,第一电子设备的磁盘(即第一存储空间)中已经存储有第一应用的数据A。第一电子设备从磁盘中筛选出满足数据查询条件数据C,并将数据C写入共享内存(即第二存储空间)中。
S1002、第二电子设备根据第一数据请求,确定第一数据。
在一种实施方式中,第二电子设备接收到第一数据请求后,可确定第一数据请求用于请求的数据为第一应用的数据。
可选的,第一数据请求中携带有数据查询条件,第二电子设备在根据数据查询条件可确定第一应用的数据中满足数据查询条件的数据,进而可确定这部分数据确定为第一数据。其中,第一数据为第一应用中的部分数据。这样,后续第二电子设备可向第一电子设备发送第一数据,能够有效减少数据传输量。
可选的,第一数据请求中携带有数据查询条件和第一信息,该第一信息为第一电子设备确定的第一电子设备中满足数据查询条件的第三数据的信息。那么,第二电子设备在确定本地满足数据查询条件的第四数据后,可根据第一信息,确定第四数据中需要同步的第一数据。这样,第二电子设备只需向第一电子设备发送第一电子设备中没有存储的用于显示第一界面的数据,进一步减少数据的传输量。
示例性的,第二电子设备根据第一信息,确定第四数据中需要同步的第一数据,包括:第二电子设备根据第一信息,确定第四数据中包括第三数据中没有的第一行数据,确定第一行数据为第一数据。和/或,第二电子设备根据第一信息,确定第四数据中水位高于第三数据的第二行数据,确定第二行数据为第一数据。和/或,第二电子设备根据第一信息,确定第一列数据,第一列数据为第四数据和第三数据中水位相同的第三行数据中,第三数据不包括的列数据,确定第一列数据为第一数据。
比如,如上表1所示,第二电子设备确定数据查询条件查询到的数据包括ID为003的这一行数据(即包括ID为003的这一条数据记录),而根据第一信息可确定第一电子设备中未保存该行数据。那么,第一电子设备可将该行数据确定为第一数据。
S1003、第二电子设备向第一电子设备发送第一数据。
可选的,第二电子设备在确定第一数据后,向第一电子设备发送第一数据。相应的,第一电子设备接收第二电子设备发送的第一数据。
S1004、第一电子设备响应于第一数据,显示第一界面。
在一种实施方式中,第一电子设备在接收到第一数据后,可根据第一数据显示第一界面。
示例性的,如上述图4所示场景,第一电子设备接收到用户发送的备忘录内容3对应的第一数据后,可根据第一数据显示如图4中的(b)所示界面402(即第一界面)。
可选的,第一电子设备通过接收到的第一数据更新第二存储空间中的第三数据。之后,第一电子设备可根据第二存储空间中的更新后的数据,显示第一界面。
示例性的,第一电子设备在接收到第一数据后,根据第一数据更新共享内存中已经存储的第一界面对应的数据。之后,第一电子设备可根据共享内存中更新后的数据,显示第一界面。
可选的,第一电子设备在接收到第一数据后,还可根据第一数据,更新本地数据。
示例性的,第一电子设备在接收到第一数据后,根据第一数据更新磁盘中的已经存储的第一应用的数据。这样后续第一电子设备响应于用户指示显示第一应用的界面的操作,可从磁盘中获取到已经更新的第一应用的数据。
S1005、响应于用户的第二操作,第一电子设备向第二电子设备发送第二数据请求,该第二数据请求用于请求第二操作指示显示的第二界面所需的数据。
其中,第二界面同样对应于第一应用。也就是说,第一电子设备在显示第一界面后,又响应于用户操作,确定用户指示显示第一应用的其他界面,如第二界面。那么,第一电子设备就需要向第二电子设备再请求获取用于显示第二界面所需的数据。
S1006、第二电子设备根据第二数据请求,确定第二数据。
在一种实施方式中,第二电子设备接收到第二数据请求后,可确定第二数据请求用于请求的数据为第一应用的数据。其中,第二数据不同于第一数据。
可选的,第二数据请求中携带有用于查询第二界面对应的数据的数据查询条件。第二电子设备在接收到第二数据请求后,可根据数据查询条件可确定第一应用的数据中满足数据查询条件的数据,进而可确定这部分数据确定为第二数据。
可选的,第二数据请求中携带有用于查询第二界面对应的数据的数据查询条件以及第一电子设备中满足该数据查询条件的数据的第二信息。第二电子设备在接收到第二数据请求后,可根据该数据查询条件确定部分第一应用的数据,之后再根据第二信息,确定这部分第一应用的数据中,第一电子设备未存储的第二数据。
S1007、第二电子设备向第一电子设备发送第二数据。
可选的,第二电子设备在确定第二数据后,向第一电子设备发送第二数据。相应的,第一电子设备接收第二电子设备发送的第二数据。
S1008、第一电子设备响应于第二数据,显示第二界面。
在一种实施方式中,第一电子设备在接收到第二数据后,可根据第二数据显示第二界面。
可选的,第一电子设备根据第二数据根据本地保存的第一应用的数据。
示例性的,如上述图4所示场景,第一电子设备显示如图4中的(b)所示界面402的过程中,响应于用户操作,返回显示备忘录应用首页,如显示如图4中的(a)所示界面401。之后,第一电子设备检测到用户点击控件45的第二操作,可向第二电子设备发送第二数据请求,该第二数据请求用于请求获取显示备忘录内容5对应的界面所需的数据。第二电子设备响应于第二数据请求向第一电子设备发送该数据,从而第一电子设备可显示备忘录内容5对应的界面。
如此,在跨设备数据访问过程中,第一电子设备和第二电子设备之间传输的数据为用于第一电子设备显示待显示界面的数据,而不再是应用的全量数据。有效减少数据传输量,降低电子设备功耗。
在一些方案中,可以对本申请的多个实施例进行组合,并实施组合后的方案。可选的,各方法实施例的流程中的一些操作任选地被组合,并且/或者一些操作的顺序任选地被改变。并且,各流程的步骤之间的执行顺序仅是示例性的,并不构成对步骤之间执行顺序的限制,各步骤之间还可以是其他执行顺序。并非旨在表明所述执行次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文某个实施例涉及的过程细节同样以类似的方式适用于其他实施例,或者,不同实施例之间可以组合使用。
此外,方法实施例中的某些步骤可等效替换成其他可能的步骤。或者,方法实施例中的某些步骤可以是可选的,在某些使用场景中可以删除。或者,可以在方法实施例中增加其他可能的步骤。
并且,各方法实施例之间可以单独实施,或结合起来实施。
以上结合图4-图10详细说明了本申请实施例提供的数据同步方法。以下结合图11和图12详细说明本申请实施例提供的电子设备。
在一种可能的设计中,图11为本申请实施例提供的第一电子设备的结构示意图。如图11所示,第一电子设备1100可以包括:收发单元1101、处理单元1102以及显示单元1103。第一电子设备1100可用于实现上述方法实施例中涉及的第一电子设备的功能。
可选地,收发单元1101,用于支持第一电子设备1100执行图6中的S601和S603;和/或,用于支持第一电子设备1100执行图7中的S601b;和/或,用于支持第一电子设备1100执行图8中的S803和S805;和/或,用于支持第一电子设备1100执行图10中的S1001、S1003、S1005以及S1007。
可选地,处理单元1102,用于支持第一电子设备1100执行图6中的S605;和/或,用于支持第一电子设备1100执行图7中的S601a;和/或,用于支持第一电子设备1100执行图8中的S801、S802以及S807。
可选地,显示单元1103,用于支持第一电子设备1100显示界面内容;和/或,支持第一电子设备1100执行图6中的S604;和/或,用于支持第一电子设备1100执行图8中的S806;和/或,用于支持第一电子设备1100执行图10中的S1004和S1008。
其中,收发单元可以包括接收单元和发送单元,可以由收发器或收发器相关电路组件实现,可以为收发器或收发模块。第一电子设备1100中的各个单元的操作和/或功能分别为了实现上述方法实施例中所述的数据同步方法的相应流程,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能单元的功能描述,为了简洁,在此不再赘述。
可选地,图11所示的第一电子设备1100还可以包括存储单元(图11中未示出),该存储单元中存储有程序或指令。当收发单元1101、处理单元1102以及显示单元1103执行该程序或指令时,使得图11所示的第一电子设备1100可以执行上述方法实施例中所述的数据同步方法。
图11所示的第一电子设备1100的技术效果可以参考上述方法实施例中所述的数据同步方法的技术效果,此处不再赘述。
除了以第一电子设备1100的形式以外,本申请提供的技术方案也可以为第一电子设备中的功能单元或者芯片,或者与第一电子设备匹配使用的装置。
在一种可能的设计中,图12为本申请实施例提供的第二电子设备的结构示意图。如图12所示,第二电子设备1200可以包括:收发单元1201和处理单元1202。第二电子设备1200可用于实现上述方法实施例中涉及的第二电子设备的功能。
可选地,收发单元1201,用于支持第二电子设备1200执行图6中的S601和S603;和/或,用于支持第二电子设备1200执行图7中的S601b;和/或,用于支持第二电子设备1200执行图8中的S803和S805;和/或,用于支持第二电子设备1200执行图10中的S1001、S1003、S1005以及S1007。
可选地,处理单元1202,用于支持第二电子设备1200执行图6中的S602;和/或,用于支持第二电子设备1200执行图8中的S804;和/或,用于支持第二电子设备1200执行图10中的S1002和S1006。
其中,收发单元可以包括接收单元和发送单元,可以由收发器或收发器相关电路组件实现,可以为收发器或收发模块。第二电子设备1200中的各个单元的操作和/或功能分别为了实现上述方法实施例中所述的数据同步方法的相应流程,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能单元的功能描述,为了简洁,在此不再赘述。
可选地,图12所示的第二电子设备1200还可以包括存储单元(图12中未示出),该存储单元中存储有程序或指令。当收发单元1201和处理单元1202执行该程序或指令时,使得图12所示的第二电子设备1200可以执行上述方法实施例中所述的数据同步方法。
图12所示的第二电子设备1200的技术效果可以参考上述方法实施例中所述的数据同步方法的技术效果,此处不再赘述。
除了以第二电子设备1200的形式以外,本申请提供的技术方案也可以为第二电子设备中的功能单元或者芯片,或者与第二电子设备匹配使用的装置。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请实施例并不限定。示例性地,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性地,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(AP设备plication specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(centralprocessor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controllerunit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的数据同步方法。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的数据同步方法。
另外,本申请实施例还提供一种装置。该装置具体可以是组件或模块,该装置可包括相连的一个或多个处理器和存储器。其中,存储器用于存储计算机程序。当该计算机程序被一个或多个处理器执行时,使得装置执行上述各方法实施例中的数据同步方法。
其中,本申请实施例提供的装置、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法。因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
结合本申请实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应地软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(AP设备plication specific integrated circuit,ASIC)中。
通过以上的实施方式的描述,本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明。实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成;即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的。例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
计算机可读存储介质包括但不限于以下的任意一种:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (18)
1.一种数据同步系统,其特征在于,所述系统包括:第一电子设备和第二电子设备;
所述第一电子设备,用于响应于用户的第一操作,向所述第二电子设备发送第一数据请求,所述第一数据请求用于请求所述第一操作指示显示的第一界面所需的数据,所述第一界面对应于所述第二电子设备中的第一应用;
所述第二电子设备,用于响应于所述第一数据请求,向所述第一电子设备发送第一数据;
所述第一电子设备,还用于响应于接收到的所述第一数据,显示所述第一界面;
所述第一电子设备,还用于响应于用户的第二操作,向所述第二电子设备发送第二数据请求,所述第二数据请求用于请求所述第二操作指示显示的第二界面所需的数据,所述第二界面对应于所述第一应用;
所述第二电子设备,用于响应于所述第二数据请求,向所述第一电子设备发送第二数据,所述第二数据不同于所述第一数据;
所述第一电子设备,还用于响应于接收到的所述第二数据,显示所述第二界面。
2.根据权利要求1所述的系统,其特征在于,
所述第一电子设备,用于响应于所述第一操作,确定数据查询条件,所述数据查询条件用于查询显示所述第一界面所需的数据,所述数据请求携带有所述数据查询条件。
3.根据权利要求2所述的系统,其特征在于,
所述第一电子设备,还用于获取本地数据中满足所述数据查询条件的第三数据,确定所述第三数据的第一信息;所述第一数据请求中还携带有所述第一信息,所述第一信息包括所述第三数据的如下一项或几项信息:行信息、列信息、水位信息。
4.根据权利要求3所述的系统,其特征在于,
所述第二电子设备,用于确定满足所述数据查询条件的第四数据;
所述第二电子设备,用于根据所述第一信息,确定所述第四数据中需要同步的所述第一数据,所述第一数据不同于所述第三数据,或所述第一数据中的部分数据对应于更新后的所述第三数据。
5.一种数据同步方法,其特征在于,所述方法包括:
响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,所述第一数据请求用于请求所述第一操作指示显示的第一界面所需的数据,所述第一界面对应于所述第二电子设备中的第一应用;
所述第一电子设备接收所述第二电子设备发送的第一数据,所述第一数据为所述第二电子设备响应于所述第一数据请求确定的数据;
响应于接收到的所述第一数据,所述第一电子设备显示所述第一界面;
响应于用户的第二操作,所述第一电子设备向所述第二电子设备发送第二数据请求,所述数第二据请求用于请求所述第二操作指示显示的第二界面所需的数据,所述第二界面对应于所述第一应用;
所述第一电子设备接收所述第二电子设备发送的第二数据,所述第二数据为所述第二电子设备响应于所述第二数据请求确定的数据,所述第二数据不同于所述第一数据;
响应于接收到的所述第二数据,所述第一电子设备显示所述第二界面。
6.根据权利要求5所述的方法,其特征在于,所述响应于用户的第一操作,第一电子设备向第二电子设备发送第一数据请求,包括:
响应于所述第一操作,所述第一电子设备确定数据查询条件,所述数据查询条件用于查询显示所述第一界面所需的数据;
所述第一电子设备向所述第二电子设备发送第一数据请求,所述第一数据请求携带有所述数据查询条件。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述第一电子设备获取本地数据中满足所述数据查询条件的第三数据,确定所述第三数据的第一信息;所述第一数据请求中还携带有所述第一信息,所述第一信息包括所述第三数据的如下一项或几项信息:行信息、列信息、水位信息。
8.根据权利要求7所述的方法,其特征在于,所述第一电子设备获取本地数据中满足所述数据查询条件的第三数据,确定所述第三数据的第一信息,包括:
所述第一电子设备查询第一存储空间中存储的所述本地数据中满足所述数据查询条件的所述第三数据;
所述第一电子设备将所述第三数据缓存至第二存储空间后,确定所述第三数据的所述第一信息。
9.根据权利要求8所述的方法,其特征在于,所述响应于接收到的所述第一数据,所述第一电子设备显示所述第一界面,包括:
所述第一电子设备通过接收到的所述第一数据更新所述第二存储空间中的所述第三数据;
所述第一电子设备根据所述第二存储空间中的更新后的数据,显示所述第一界面。
10.根据权利要求5-9任一项所述的方法,其特征在于,所述方法还包括:
所述第一电子设备根据所述第一数据,更新本地数据。
11.一种数据同步方法,其特征在于,所述方法包括:
第二电子设备接收第一电子设备发送的第一数据请求,所述第一数据请求为所述第一电子设备响应于用户的第一操作确定的用于获取所述第一操作指示显示的第一界面所需的数据的请求,所述第一界面对应于所述第二电子设备中的第一应用;
所述第二电子设备根据所述第一数据请求,确定第一数据;
所述第二电子设备向所述第一电子设备发送所述第一数据,所述第一数据用于所述第一电子设备显示所述第一界面;
所述第二电子设备接收所述第一电子设备发送的第二数据请求,所述第二数据请求为所述第一电子设备响应于用户的第二操作确定的用于获取所述第二操作指示显示的第二界面所需的数据的请求,所述第二界面对应于所述第一应用;
所述第二电子设备根据所述第二数据请求,确定第二数据,所述第二数据不同于所述第一数据;
所述第二电子设备向所述第一电子设备发送所述第二数据,所述第二数据用于所述第一电子设备显示所述第二界面。
12.根据权利要求11所述的方法,其特征在于,所述第二电子设备根据所述第一数据请求,确定第一数据,包括:
所述第二电子设备获取所述第一数据请求中携带的数据查询条件,确定满足所述数据查询条件的第一数据。
13.根据权利要求11或12所述的方法,其特征在于,所述第二电子设备根据所述第一数据请求,确定第一数据,包括:
所述第二电子设备获取所述第一数据请求中携带的数据查询条件和第一信息,所述第一信息为所述第一电子设备确定的所述第一电子设备中满足所述数据查询条件的第三数据的信息,所述第一信息包括所述第三数据的如下一项或几项信息:行信息、列信息、水位信息;
所述第二电子设备确定满足所述数据查询条件的第四数据;
所述第二电子设备根据第一信息,确定所述第四数据中需要同步的所述第一数据。
14.根据权利要求13所述的方法,其特征在于,所述第二电子设备根据第一信息,确定所述第四数据中需要同步的所述第一数据,包括:
所述第二电子设备根据所述第一信息,确定所述第四数据中包括所述第三数据中没有的第一行数据,确定所述第一行数据为所述第一数据;
和/或,
所述第二电子设备根据所述第一信息,确定所述第四数据中水位高于所述第三数据的第二行数据,确定所述第二行数据为所述第一数据;
和/或,
所述第二电子设备根据所述第一信息,确定第一列数据,所述第一列数据为所述第四数据和所述第三数据中水位相同的第三行数据中,所述第三数据不包括的列数据,确定所述第一列数据为所述第一数据。
15.一种电子设备,其特征在于,包括:处理器、显示屏和存储器,所述存储器和所述显示屏与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,使得所述电子设备执行如权利要求5-10中任意一项所述的方法。
16.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,使得所述电子设备执行如权利要求11-14中任意一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在电子设备上运行时,使得所述电子设备执行如权利要求5-10中任意一项所述的方法;或者,使得所述电子设备执行如权利要求11-14中任意一项所述的方法。
18.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求5-10中任意一项所述的方法;或者,使得所述计算机执行如权利要求11-14中任意一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210883769.7A CN117527822A (zh) | 2022-07-26 | 2022-07-26 | 数据同步方法、电子设备及系统 |
PCT/CN2023/107206 WO2024022119A1 (zh) | 2022-07-26 | 2023-07-13 | 数据同步方法、电子设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210883769.7A CN117527822A (zh) | 2022-07-26 | 2022-07-26 | 数据同步方法、电子设备及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117527822A true CN117527822A (zh) | 2024-02-06 |
Family
ID=89705345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210883769.7A Pending CN117527822A (zh) | 2022-07-26 | 2022-07-26 | 数据同步方法、电子设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117527822A (zh) |
WO (1) | WO2024022119A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3663903B1 (en) * | 2017-08-23 | 2021-07-14 | Huawei Technologies Co., Ltd. | Display method and device |
CN112351412A (zh) * | 2019-08-06 | 2021-02-09 | 华为技术有限公司 | 一种内容接续方法、系统及电子设备 |
CN115756270B (zh) * | 2020-05-29 | 2024-03-26 | 华为技术有限公司 | 一种内容分享的方法、装置及系统 |
CN114296948A (zh) * | 2020-09-21 | 2022-04-08 | 荣耀终端有限公司 | 一种跨设备调用应用的方法及电子设备 |
CN112486363B (zh) * | 2020-10-30 | 2023-12-19 | 华为技术有限公司 | 一种跨设备的内容分享方法、电子设备及系统 |
CN114490719A (zh) * | 2022-02-16 | 2022-05-13 | 平安科技(深圳)有限公司 | 一种数据查询方法、装置、电子设备以及存储介质 |
-
2022
- 2022-07-26 CN CN202210883769.7A patent/CN117527822A/zh active Pending
-
2023
- 2023-07-13 WO PCT/CN2023/107206 patent/WO2024022119A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024022119A1 (zh) | 2024-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022089207A1 (zh) | 一种跨设备应用交互方法、电子设备与服务器 | |
CN114461239B (zh) | 软件升级系统和软件升级方法 | |
CN113254409B (zh) | 文件共享方法、系统及相关设备 | |
CN114356258A (zh) | 电子设备及其投屏方法和介质 | |
CN115514882B (zh) | 一种分布式拍摄方法,电子设备及介质 | |
WO2022252805A1 (zh) | 显示方法及电子设备 | |
CN116136826B (zh) | 内存访问方法、芯片、电子设备及计算机可读存储介质 | |
CN114610419B (zh) | 添加widget的方法、装置及计算机可读存储介质 | |
CN115981573A (zh) | 数据管理方法、电子设备及计算机可读写存储介质 | |
CN117527822A (zh) | 数据同步方法、电子设备及系统 | |
CN113835802A (zh) | 设备交互方法、系统、设备及计算机可读存储介质 | |
CN115221255A (zh) | 地图数据更新方法、装置及系统 | |
CN115543496A (zh) | 消息处理方法及相关装置 | |
CN117729561B (zh) | 系统升级方法、终端及存储介质 | |
CN117061266B (zh) | 智能家居设备的控制方法和控制装置 | |
WO2023066036A1 (zh) | 一种跨设备文件显示方法、设备及系统 | |
WO2023142696A1 (zh) | 缩略图存储方法及电子设备 | |
WO2023061298A1 (zh) | 一种图片备份系统、方法与设备 | |
CN117009023B (zh) | 显示通知信息的方法及相关装置 | |
CN117724825B (zh) | 一种界面显示方法及电子设备 | |
CN118227222A (zh) | 应用管理方法、服务器、电子设备及系统 | |
CN117812087A (zh) | 数据同步方法及电子设备 | |
CN116069224A (zh) | 输入控制方法及电子设备 | |
CN118802951A (zh) | 数据同步方法、电子设备及系统 | |
CN117632534A (zh) | 一种进程间通信方法与电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |