CN116361255A - 数据同步方法、电子设备和计算机可读存储介质 - Google Patents
数据同步方法、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN116361255A CN116361255A CN202211596683.2A CN202211596683A CN116361255A CN 116361255 A CN116361255 A CN 116361255A CN 202211596683 A CN202211596683 A CN 202211596683A CN 116361255 A CN116361255 A CN 116361255A
- Authority
- CN
- China
- Prior art keywords
- data
- synchronized
- electronic device
- channel
- channel identifier
- 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 188
- 230000001360 synchronised effect Effects 0.000 claims abstract description 400
- 230000005540 biological transmission Effects 0.000 claims description 87
- 238000004891 communication Methods 0.000 claims description 40
- 230000006854 communication Effects 0.000 claims description 40
- 230000009471 action Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 13
- 239000000758 substrate Substances 0.000 claims 1
- 230000007246 mechanism Effects 0.000 abstract description 8
- 230000000875 corresponding effect Effects 0.000 description 190
- 230000008569 process Effects 0.000 description 67
- 230000006870 function Effects 0.000 description 59
- 238000007726 management method Methods 0.000 description 46
- 239000010410 layer Substances 0.000 description 26
- 238000010586 diagram Methods 0.000 description 23
- 230000003993 interaction Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 17
- 210000004027 cell Anatomy 0.000 description 15
- 230000000694 effects Effects 0.000 description 12
- 238000010295 mobile communication Methods 0.000 description 12
- 230000005236 sound signal Effects 0.000 description 10
- 210000000988 bone and bone Anatomy 0.000 description 9
- 238000011161 development Methods 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000006378 damage Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000003416 augmentation Effects 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000010985 leather Substances 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
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002138 osteoinductive effect Effects 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- 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
-
- 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/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请实施例公开了一种数据同步方法、电子设备和计算机可读存储介质,该方法包括:获取第一电子设备上的第一应用程序的第一待同步数据;确定第一通道标识,第一通道标识是第二电子设备为本设备上的第二应用程序分配的标识,其中,每个第一通道标识对应一个第二电子设备;确定第一通道标识对应的连接通道,该连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第一通道标识对应一个连接通道;通过第一通道标识对应的连接通道,将第一待同步数据传输至第二电子设备,以指示第二电子设备将第一待同步数据同步至第二应用程序。本申请实施例不用依赖于云端服务器和账号登录机制,实现了近场环境下跨设备的应用数据同步。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据同步方法、电子设备和计算机可读存储介质。
背景技术
目前,跨设备应用数据同步一般是基于云端服务器的。
基于云端服务器实现数据同步的方案中,各个电子设备均需要安装同一款应用程序,并接入到互联网。另外,各个电子设备还需要通过登录平台账号或者应用程序账号,连接至云端服务器。基于此,电子设备可以将自身变化的应用数据发送至云端服务器,由云端服务器将应用数据变动同步至其他电子设备。同理,当其他电子设备发送数据变动时,电子设备可以接收云端服务器发送的同步数据。换句话说,将云端服务器作为数据交换的中转站,电子设备通过账号登录和互联网连接至云端服务器,可以实现应用数据在多个电子设备之间的同步。
但是,该跨设备应用数据同步方案需要依赖于云端服务器和账号登录机制,在没有云端服务器或者没有登录账号时,多个电子设备之间无法实现数据同步。
发明内容
本申请提供一种数据同步方法、电子设备和计算机可读存储介质,以解决现有跨设备应用数据同步需要依赖于云端服务器和账号登录机制的问题。
第一方面,本申请实施例提供一种数据同步方法,应用于第一电子设备,该方法包括可以:获取第一电子设备中的第一应用程序的第一待同步数据;确定第一通道标识,第一通道标识是与第一电子设备通信连接的第二电子设备为本设备的第二应用程序分配的标识,每个第一通道标识对应一个第二电子设备;确定第一通道标识对应的连接通道,该连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第一通道标识对应一个连接通道;通过第一通道标识对应的连接通道,将第一待同步数据传输至第二电子设备,以指示第二电子设备将第一待同步数据同步至第二应用程序。
本申请实施例通过为第二电子设备上的第二应用程序分配第一通道标识,第一电子设备可以通过第一通道标识确定该第二应用程序的连接通道,并通过该连接通道将第一应用程序的数据同步至第二应用程序,不用依赖于云端服务器和账号登录机制,实现近场环境下跨设备的应用数据同步。
具体来说,当有多个第二电子设备,每个第二电子设备上的第二应用程序均对应一个第二通道标识,即每个第二电子设备上的第二应用程序均有一个对应的连接通道。第一电子设备可以通过每个第二应用程序的连接通道,将第一应用程序的数据同步至多个第二应用程序上。该连接通道可以作为实时数据同步通道,将第一电子设备上的第一应用程序的数据同步至一个或多个第二电子设备上的第二应用程序。
作为示例而非限定,第一电子设备为手机,第二电子设备包括平板和智慧大屏。此时,手机可以作为主设备,平板和智慧大屏可以作为从设备。平板和智慧大屏分别为本设备上的第二应用程序分配第一通道标识,并根据第一通道标识注册至主设备即手机。从设备注册之后,主设备上则记录有每个从设备的第一通道标识和对应的连接通道。当主设备需要把第一应用程序的数据同步至各个从设备上的第二应用程序时,主设备可以先根据需要同步的从设备确定出第一通道标识,然后通过该第一通道标识对应的连接通道,将第一应用程序的数据同步至各个从设备上的第二应用程序。这样,手机、平板和智慧大屏之间的数据同步不需要依赖于云端服务器和账号登录机制。在近场环境下,手机和平板、手机和智慧大屏之间的连接通道可以为但不限于Wi-Fi点对点连接通道、蓝牙连接通道或者Wi-Fi STA连接通道。
在第一方面的一些可能的实现方式中,在获取第一电子设备中的第一应用程序的待同步数据之前,还包括:
为第一应用程序分配第二通道标识;将第二通道标识广播至至少一个第二电子设备,第二通道标识用于指示第二电子设备与第一电子设备建立连接通道,记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识;接收一个或多个第二电子设备发送的第一通道标识;建立每个第一通道标识和对应的连接通道的对应关系。
在该实现方式中,第一电子设备为本设备上的第一应用程序分配第二通道标识,并将该第二通道标识告知一个或多个第二电子设备。第二电子设备在获取到第一电子设备的第二通道标识之后,通过该第二通道标识可以与第一电子设备建立连接通道。还有,每个第二电子设备可以为自身的第二应用程序分配第一通道标识,并通过所建立的连接通道将第一通道标识传输至第一电子设备。这样,第一电子设备则可以得知第二电子设备的第一通道标识,以及第一通道标识对应的连接通道,后续第一电子设备如果需要将数据同步至某个第二电子设备上的第二应用程序,则可以通过该第二电子设备的第一通道标识确定出连接通道,并使用该连接通道将数据同步至该第二电子设备上的第二应用程序。
需要指出的是,不仅第一电子设备上记录有每个第二电子设备的第一通道标识,以及每个第一通道标识对应的连接通道,第二电子设备上也可以记录有第一电子设备的第二通道标识,以及该第二通道标识对应的连接通道。这样,第一电子设备可以通过第一通道标识将数据同步至第二电子设备,第二电子设备也可以通过第二通道标识将数据同步至第一电子设备。
在第一方面的一些可能的实现方式中,第一通道标识包括第二电子设备的标识信息和第一应用程序的标识信息;第二通道标识包括第一电子设备的标识信息和第一应用程序的标识信息。
上述第一电子设备的标识信息和第二电子设备的标识信息可以确保唯一性,用于区分电子设备。而第一应用程序的标识信息和第二应用程序的标识信息可以用于区分应用,且可以区分多用户下的相同应用。
需要说明的是,第一电子设备上第一应用程序的数据可以同步至一个或多个第二电子设备上的第二应用程序,一个或多个第二电子设备上第二应用程序的数据也可以同步至第一电子设备上的第一应用程序。故在第一方面的一些可能的实现方式中,该方法还包括:
接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据;将第二待同步数据同步至第一应用程序。
在该实现方式中,第二电子设备根据预先存储的第一电子设备的第二通道标识,确定出该第二通道标识对应的连接通道后,使用该连接通道将需要同步的数据传输至第一电子设备,然后,第一电子设备将接收到的需要同步的数据同步至本设备的第一应用程序。
作为示例而非限定,第一电子设备为手机,第二电子设备包括平板和智慧大屏。此时,手机可以作为主设备,平板和智慧大屏可以作为从设备。此时,主设备可以根据通道标识将数据同步至从设备。从设备也可以根据通道标识将数据同步至主设备。具体来说,平板和智慧大屏上均记录有手机的第二通道标识,以及该第二通道标识对应的连接通道。当平板和智慧大屏需要将数据同步至手机时,平板和智慧大屏可以先根据需要同步的第一电子设备,确定出该第一电子设备对应的第二通道标识,然后使用该第二通道标识对应的连接通道将数据同步至第一电子设备。
在第一方面的一些可能的实现方式中,该方法还包括:接收第二电子设备通过第二通道标识对应的连接通道发送的指示信息,指示信息用于指示将第二待同步数据传输至其它第二电子设备,其它第二电子设备是多个第二电子设备中除了发送第二待同步数据的第二电子设备之外的电子设备;
在接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据之后,还包括:
确定其它第二电子设备的第一通道标识;确定其它第二电子设备的第一通道标识对应的连接通道;通过其它第二电子设备的第一通道标识对应的连接通道,将第二待同步数据传输至其它第二电子设备,以指示其它第二电子设备将第二待同步数据同步至本设备的第二应用程序。
在该实现方式中,一个或多个第二电子设备除了可以将数据同步至第一电子设备之外,还可以将数据同步至其它第二电子设备。
需要说明的是,用于指示将第二待同步数据传输至其它第二电子设备的指示信息可以是携带于第二待同步数据中,也可以不携带在第二待同步数据中。
作为示例而非限定,第一电子设备为手机,第二电子设备包括平板和智慧大屏。此时,手机可以作为主设备,平板和智慧大屏可以作为从设备。此时,从设备不仅可以根据通道标识将数据同步至主设备,也可以将数据同步至其它从设备。具体来说,平板可以根据第二通道标识,将第二待同步数据同步至手机,并且可以指示手机将第二待同步数据同步至智慧大屏。手机上记录有智慧大屏对应的第一通道标识和对应的连接通道,基于此,当手机收到平板的指示信息之后,可以将第二待同步数据同步至智慧大屏。
在第一方面的一些可能的实现方式中,在接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据之前,该方法还包括:
确定是否允许接收第二待同步数据;若允许接收第二待同步数据,进入接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据的步骤。若不允许接收第二待同步数据,则记录日志信息。
在第一方面的一些可能的实现方式中,确定是否允许接收第二待同步数据,包括:
确定第二待同步数据的第一目标数据类型;确定第一目标数据类型对应的第一接收开关是否处于开启状态;若第一接收开关处于开启状态,确定允许接收第二待同步数据;若第一接收开关处于关闭状态,确定不允许接收第二待同步数据;其中,每种数据类型对应一个接收开关。
在第一方面的一些可能的实现方式中,在确定第一通道标识之前,该方法还包括:
确定是否允许发送第一待同步数据;若允许发送第一待同步数据,进入确定第一通道标识的步骤。
在第一方面的一些可能的实现方式中,确定是否允许发送第一待同步数据,包括:
确定第一待同步数据的第二目标数据类型;确定第二目标数据类型对应的第一发送开关是否处于开启状态;若第一发送开关处于开启状态,确定允许发送第一待同步数据;若第一发送开关处于关闭状态,确定不允许发送第一待同步数据;其中,每种数据类型对应一个发送开关。
在第一方面的一些可能的实现方式中,数据类型包括消息、对象、大字节、文件和流中的至少一种。
在第一方面的一些可能的实现方式中,该方法还包括:
获取第一同步开关的设置指令,第一同步开关包括第一接收开关和第一发送开关;根据设置指令中数据类型、同步动作和开关设置值,对第一同步开关进行设置,同步动作包括数据发送和数据接收。
需要说明的是,通过为每种数据类型提供数据发送开关和数据接收开关,可以提高应用程序对数据同步操作的便携性。
第二方面,本申请实施例提供一种数据同步方法,应用于第二电子设备,该方法包括:
通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,第一待同步数据是第一应用程序的数据;将第一待同步数据同步至第二应用程序,第二电子设备包括第二应用程序。
在第二方面的一些可能的实现方式中,在通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据之前,该方法还包括:
接收第一电子设备广播的第二通道标识,每个第二通道标识对应一个第一电子设备;根据第二通道标识与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
在第二方面的一些可能的实现方式中,在通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据之前,还包括:
确定是否允许接收第一待同步数据;若允许接收第一待同步数据,进入通过第二通道标识对应的连接通道接收第一电子设备发送的第一待同步数据的步骤。
在第二方面的一些可能的实现方式中,确定是否允许接收第一待同步数据,包括:
确定第一待同步数据的第三目标数据类型;确定第三目标数据类型对应的第二接收开关是否处于开启状态;若第二接收开关处于开启状态,确定允许接收第一待同步数据;若第二接收开关处于关闭状态,确定不允许接收第一待同步数据;其中,每种数据类型对应一个接收开关。
在第二方面的一些可能的实现方式中,该方法还包括:
获取第二应用程序的第二待同步数据;通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备,以指示第一电子设备将第二待同步数据同步至第一应用程序。
在第二方面的一些可能的实现方式中,在通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备之前,该方法还包括:
确定是否允许发送第二待同步数据;若允许发送第二待同步数据,进入通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备的步骤。
在第二方面的一些可能的实现方式中,确定是否允许发送第二待同步数据,包括:
确定第二待同步数据的第四目标数据类型;确定第四目标数据类型的第二发送开关是否处于开启状态;若第二发送开关处于开启状态,确定允许发送第二待同步数据;若第二发送开关处于关闭状态,确定不允许发送第二待同步数据;其中,每种数据类型对应一个发送开关。
在第二方面的一些可能的实现方式中,该方法还包括:
获取第二同步开关的设置指令,第二同步开关包括第二接收开关和第二发送开关;根据设置指令中数据类型、同步动作和开关设置值,对第二同步开关进行设置,同步动作包括数据发送和数据接收。
在第二方面的一些可能的实现方式中,第一通道标识包括第二电子设备的标识信息和第一应用程序的标识信息;第二通道标识包括第一电子设备的标识信息和第一应用程序的标识信息。
在第二方面的一些可能的实现方式中,数据类型包括消息、对象、大字节、文件和流中的至少一种。
第三方面,本申请实施例提供一种数据同步方法,应用于第二电子设备,该方法包括:
获取第二应用程序的第三待同步数据,第二电子设备包括第二应用程序;确定第二通道标识,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,每个第二通道标识对应一个第一电子设备;确定第二通道标识对应的连接通道,连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第二通道标识对应一个连接通道;通过第二通道标识对应的连接通道,将第三待同步数据传输至第一电子设备,以指示第一电子设备将第三待同步数据同步至第一应用程序。
需要说明的是,上述第三待同步数据是指第二电子设备的第二应用程序需要同步至第一电子设备的第一应用程序的数据。
在第三方面的一些可能的实现方式中,在获取第二应用程序的第三待同步数据之前,还包括:
接收第一电子设备广播的第二通道标识;根据第二通道标识,与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
在第三方面的一些可能的实现方式中,该方法还包括:
发送用于指示将第三待同步数据传输至其它第二电子设备的指示信息至第一电子设备,其它第二电子设备是多个第二电子设备中除了发送第三待同步数据的第二电子设备之外的电子设备。
第四方面,本申请实施例提供一种数据同步方法,应用于第一电子设备,该方法包括:
通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据,第一通道标识是第二电子设备为第二应用程序分配的标识,第二电子设备包括第二应用程序,第三待同步数据是二应用程序的数据;将第三待同步数据同步至第一应用程序,第一电子设备包括第一应用程序。
可以理解的是,第四方面的数据同步方法是与第三方面的数据同步方法相对应的,第三方面示出的是第二电子设备一侧的流程,而第四方面示出的是第一电子设备一侧的流程。
上述第三方面和第四方面的数据同步方法中,在完成初始化通道标识和从设备向主设备注册的过程之后,从设备先向主设备同步数据,然后主设备再向从设备同步数据。即第二电子设备先向第一电子设备同步数据,第一电子设备再向第二电子设备同步数据。而第一方面和第二方面的数据同步方法,在完成初始化通道标识和从设备向主设备注册的过程之后,第一电子设备先向第二电子设备同步数据,第二电子设备再向第一电子设备同步数据。
在第四方面的一些可能的实现方式中,在通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据之前,该方法还包括:
为第一应用程序分配第二通道标识;将第二通道标识广播至一个或多个第二电子设备,第二通道标识用于指示第二电子设备与第一电子设备建立连接通道,记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识;接收一个或多个第二电子设备发送的第一通道标识;建立每个第一通道标识和对应的连接通道的对应关系。
第五方面,本申请实施例提高一种数据同步装置,应用于第一电子设备,该装置可以包括:
第一获取模块,用于获取第一应用程序的第一待同步数据,第一电子设备包括第一应用程序;
第一确定模块,用于确定第一通道标识,第一通道标识是第二电子设备为第二应用程序分配的标识,第二电子设备包括第二应用程序,每个第一通道标识对应一个第二电子设备;
第一通道确定模块,用于确定第一通道标识对应的连接通道,连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第一通道标识对应一个连接通道;
第一同步模块,用于通过第一通道标识对应的连接通道,将第一待同步数据传输至第二电子设备,以指示第二电子设备将第一待同步数据同步至第二应用程序。
在第五方面的一些可能的实现方式中,该装置还包括:
第一通道标识分配模块,用于为第一应用程序分配第二通道标识;将第二通道标识广播至一个或多个第二电子设备,第二通道标识用于指示第二电子设备与第一电子设备建立连接通道,记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识;接收一个或多个第二电子设备发送的第一通道标识;建立每个第一通道标识和对应的连接通道的对应关系。
在第五方面的一些可能的实现方式中,第一通道标识包括第二电子设备的标识信息和第一应用程序的标识信息;第二通道标识包括第一电子设备的标识信息和第一应用程序的标识信息。
在第五方面的一些可能的实现方式中,该装置还包括:
第二同步模块,用于接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据;将第二待同步数据同步至第一应用程序。
在第五方面的一些可能的实现方式中,该装置还包括:
指示信息接收模块,用于接收第二电子设备通过第二通道标识对应的连接通道发送的指示信息,指示信息用于指示将第二待同步数据传输至其它第二电子设备,其它第二电子设备是多个第二电子设备中除了发送第二待同步数据的第二电子设备之外的电子设备;
第三同步模块,用于确定其它第二电子设备的第一通道标识;确定其它第二电子设备的第一通道标识对应的连接通道;通过其它第二电子设备的第一通道标识对应的连接通道,将第二待同步数据传输至其它第二电子设备,以指示其它第二电子设备将第二待同步数据同步至本设备的第二应用程序。
在第五方面的一些可能的实现方式中,该装置还包括:
第一接收判断模块,用于确定是否允许接收第二待同步数据;若允许接收第二待同步数据,进入接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据的步骤。
在第五方面的一些可能的实现方式中,该第一接收判断模块具体用于:确定第二待同步数据的第一目标数据类型;确定第一目标数据类型对应的第一接收开关是否处于开启状态;若第一接收开关处于开启状态,确定允许接收第二待同步数据;若第一接收开关处于关闭状态,确定不允许接收第二待同步数据;其中,每种数据类型对应一个接收开关。
在第五方面的一些可能的实现方式中,该装置还包括第一发送判断模块,用于确定是否允许发送第一待同步数据;若允许发送第一待同步数据,进入确定第一通道标识的步骤。
在第五方面的一些可能的实现方式中,该第一发送判断模块具体用于:确定第一待同步数据的第二目标数据类型;确定第二目标数据类型对应的第一发送开关是否处于开启状态;若第一发送开关处于开启状态,确定允许发送第一待同步数据;若第一发送开关处于关闭状态,确定不允许发送第一待同步数据;其中,每种数据类型对应一个发送开关。
在第五方面的一些可能的实现方式中,数据类型包括消息、对象、大字节、文件和流中的至少一种。
在第五方面的一些可能的实现方式中,该装置还包括第一同步开关设置模块,用于获取第一同步开关的设置指令,第一同步开关包括第一接收开关和第一发送开关;根据设置指令中数据类型、同步动作和开关设置值,对第一同步开关进行设置,同步动作包括数据发送和数据接收。
上述数据同步装置具有实现上述第一方面的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
第六方面,本申请实施例提供一种数据同步装置,应用于第二电子设备,该装置包括:
第一接收模块,用于通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,第一待同步数据是第一应用程序的数据;
第四同步模块,用于将第一待同步数据同步至第二应用程序,第二电子设备包括第二应用程序。
在第六方面的一些可能的实现方式中,该装置还包括:
第二通道标识分配模块,用于接收第一电子设备广播的第二通道标识,每个第二通道标识对应一个第一电子设备;根据第二通道标识与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
在第六方面的一些可能的实现方式中,该装置还包括:
第二接收判断模块,用于确定是否允许接收第一待同步数据;若允许接收第一待同步数据,进入通过第二通道标识对应的连接通道接收第一电子设备发送的第一待同步数据的步骤。
在第六方面的一些可能的实现方式中,该第二接收判断模块具体用于:
确定第一待同步数据的第三目标数据类型;确定第三目标数据类型对应的第二接收开关是否处于开启状态;若第二接收开关处于开启状态,确定允许接收第一待同步数据;若第二接收开关处于关闭状态,确定不允许接收第一待同步数据;其中,每种数据类型对应一个接收开关。
在第六方面的一些可能的实现方式中,该装置还包括:
第五同步模块,用于获取第二应用程序的第二待同步数据;通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备,以指示第一电子设备将第二待同步数据同步至第一应用程序。
在第六方面的一些可能的实现方式中,该装置还包括:
第二发送判断模块,用于确定是否允许发送第二待同步数据;若允许发送第二待同步数据,进入通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备的步骤。
在第六方面的一些可能的实现方式中,第二发送判断模块具体用于:
确定第二待同步数据的第四目标数据类型;确定第四目标数据类型的第二发送开关是否处于开启状态;若第二发送开关处于开启状态,确定允许发送第二待同步数据;若第二发送开关处于关闭状态,确定不允许发送第二待同步数据;其中,每种数据类型对应一个发送开关。
在第六方面的一些可能的实现方式中,该装置还包括:
第二同步开关设置模块,用于获取第二同步开关的设置指令,第二同步开关包括第二接收开关和第二发送开关;根据设置指令中数据类型、同步动作和开关设置值,对第二同步开关进行设置,同步动作包括数据发送和数据接收。
在第六方面的一些可能的实现方式中,第一通道标识包括第二电子设备的标识信息和第一应用程序的标识信息;第二通道标识包括第一电子设备的标识信息和第一应用程序的标识信息。
在第六方面的一些可能的实现方式中,数据类型包括消息、对象、大字节、文件和流中的至少一种。
上述数据同步装置具有实现上述第二方面的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
第七方面,本申请实施例提供一种数据同步装置,应用于第二电子设备,该装置包括:
第二获取模块,用于获取第二应用程序的第三待同步数据,第二电子设备包括第二应用程序;
第二确定模块,用于确定第二通道标识,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,每个第二通道标识对应一个第一电子设备;
第二通道确定模块,用于确定第二通道标识对应的连接通道,连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第二通道标识对应一个连接通道;
第六同步模块,用于通过第二通道标识对应的连接通道,将第三待同步数据传输至第一电子设备,以指示第一电子设备将第三待同步数据同步至第一应用程序。
在第七方面的一些可能的实现方式中,该装置还可以包括:
接收第一电子设备广播的第二通道标识;
第三通道标识分配模块,用于根据第二通道标识,与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
在第七方面的一些可能的实现方式中,该装置还包括:
指示信息发送模块,用于发送用于指示将第三待同步数据传输至其它第二电子设备的指示信息至第一电子设备,其它第二电子设备是多个第二电子设备中除了发送第三待同步数据的第二电子设备之外的电子设备。
上述数据同步装置具有实现上述第三方面的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
第八方面,本申请实施例提供一种数据同步装置,应用于第一电子设备,该装置包括:
第二接收模块,用于通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据,第一通道标识是第二电子设备为第二应用程序分配的标识,第二电子设备包括第二应用程序,第三待同步数据是二应用程序的数据;
第七同步模块,用于将第三待同步数据同步至第一应用程序,第一电子设备包括第一应用程序。
在第八方面的一些可能的实现方式中,该装置还包括:
第四通道标识分配模块,用于为第一应用程序分配第二通道标识;将第二通道标识广播至一个或多个第二电子设备,第二通道标识用于指示第二电子设备与第一电子设备建立连接通道,记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识;接收一个或多个第二电子设备发送的第一通道标识;建立每个第一通道标识和对应的连接通道的对应关系。
上述数据同步装置具有实现上述第四方面的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
第九方面,本申请实施例提供一种电子设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上述第一方面或者第二方面或者第三方面或者第四方面任一项的方法。
第十方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面或者第二方面或者第三方面或者第四方面任一项的方法。
第十一方面,本申请实施例提供一种芯片系统,所述芯片系统包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现如上述第一方面或者第二方面或者第三方面或者第四方面任一项所述的方法。所述芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
第十二方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第一方面或者第二方面或者第三方面或者第四方面中任一项所述的方法。
可以理解的是,上述第二方面至第十二方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
图1为本申请实施例提供的电子设备100的硬件架构示意图;
图2为本申请实施例提供的电子设备100的软件架构示意图;
图3为本申请实施例提供的数据同步方法的一种流程示意框图;
图4为本申请实施例提供的初始化过程的流程示意框图;
图5为本申请实施例提供的从设备向主设备注册过程示意图;
图6为本申请实施例提供的主设备向从设备同步数据的过程示意图;
图7为本申请实施例提供的从设备向主设备以及其它从设备同步数据的示意图;
图8为本申请实施例提供的数据同步交互过程示意图;
图9为本申请实施例提供的在多个设备上进行文档会议的场景示意图;
图10为本申请实施例提供的多设备文档会议交互过程示意图;
图11为本申请实施例提供的多设备上多人游戏的系统架构示意图;
图12为本申请实施例提供的多人游戏的数据交互过程示意图;
图13为本申请实施例提供的数据同步装置的结构框图;
图14为本申请实施例提供的数据同步装置的结构框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。
本申请实施例可以根据为应用程序分配的通道标识,实现近场环境下跨设备的应用数据同步。也就是说,本申请实施例可以不依赖于云端服务器和账号登录机制,实现近场环境下的多个电子设备之间的数据同步。例如,手机、平板和智慧大屏之间的数据同步,手机和手机之间的数据同步。
在本申请实施例中,多个电子设备处于近场环境下。换句话说,多个电子设备之间的连接通道可以是短距通信通道。例如,蓝牙通信、Wi-Fi点对点通信和Wi-Fi station等。基于预先为应用程序分配的通道标识,使用电子设备之间的连接通道,实现多个电子设备之间的数据同步。其不需要电子设备联网,或者说,电子设备不需要接入到互联网中。当然,也不需要电子设备登录到平台账号或者应用账号等。
本申请实施例涉及的电子设备的类型可以是任意的。电子设备可以包括但不限于手机、平板电脑、智慧大屏(也可称为智能电视)和可穿戴式设备等。
作为示例而非限定,如图1所示,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。
在介绍完电子设备的硬件架构之后,下面将对该电子设备的软件系统架构进行介绍。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构为例,示例性说明电子设备100的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一些应用程序包,例如,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。示例性地,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
在本申请实施例中,电子设备的软件系统架构可以如图2所示。
如图2所示,应用程序层包括应用程序21,应用程序框架层可以包括数据同步接口模块22和数据同步管理模块23。数据同步接口模块22可以包括数据发送接口221、同步初始化接口222、同步开关接口223和同步销毁接口224。数据同步管理模块23可以包括数据发送管理单元231、连接通道管理单元232和数据接收管理单元233。该软件系统架构还包括底层近场传输模块24,示例性地,该底层近场传输模块24对近场通信连接通道进行管理,该近场通信连接通道可以包括但不限于Wi-Fi点对点、Wi-Fi STA和蓝牙等。
底层近场传输模块24集成在底层,应用程序可以不用感知。通过该底层近场传输模块24可以对电子设备建立的Wi-Fi点对点、Wi-Fi STA和蓝牙等通信方式进行统一管理。此外,该底层近场传输模块还可以根据电子设备和应用程序,为应用程序分配通道标识符。应用程序传输数据时使用通道标识符即可,可以不用关注底层的IP地址、蓝牙地址和socket对象等传输信息。
数据同步接口模块22可以供应用程序21调用。应用程序21可以通过调用同步初始化接口222向底层近场传输模块24进行设备注册。具体来说,应用程序调用同步初始化接口则表明需要将当前应用注册到数据同步框架中,该数据同步框架可以包括数据同步接口模块、数据同步管理模块和底层进场传输模块。应用程序调用同步初始化接口之后,底层近场传输模块24可以为该应用程序分配一个通道标识。该通道标识可以包括两部分,一部分是设备标识,另一部分是应用程序标识。设备标识可以用于区分电子设备,应用程序标识用于区分应用程序。
一般情况下,最先调用同步初始化接口的设备可以称为主设备,后续调用同步初始化接口的设备可以称为从设备。例如,近场环境下包括手机、平板和智慧大屏三个电子设备,手机如果最先调用本设备的同步初始化接口,手机则作为主设备,平板和智慧大屏作为从设备。
主设备上的应用程序通过调用同步初始化接口之后,可以得到为该应用程序分配的通道标识。主设备可以将该应用程序的通道标识广播至周边的一个或多个电子设备,以告知周边的电子设备自身的相关信息。如果周边的电子设备想要接收该主设备的同步数据,或者想要将数据同步至该主设备,可以记录主设备的通道标识,并根据主设备广播的通道标识中的设备标识等相关信息,和主设备建立连接通道,并记录主设备广播的通道标识和连接通道之间的对应关系。
此外,从设备上的应用程序也可以调用本设备的同步初始化接口,获得本设备的底层近场传输模块分配的通道标识。通过主设备和从设备之间的连接通道,从设备可以将本设备的应用程序的通道标识传输至主设备。主设备接收到从设备传输的通道标识之后,可以记录每个从设备的通道标识,以及每个从设备的通道标识对应的连接通道。
主设备和从设备通过先后调用同步初始化接口222,可以获得为应用程序分配的通道标识,建立主设备和从设备之间的连接通道。另外,主设备和从设备通过数据交互,各自记录有设备的通道标识和对应的连接通道。即主设备上记录有各个从设备发送的通道标识,以及该通道标识对应的连接通道,而从设备上记录有主设备发送的通道标识,以及该通道标识对应的连接通道。
主设备调用同步初始化接口222,获得底层近场传输模块24分配的通道标识,并将该通道标识广播至周边的电子设备的过程可以称为初始分配通道标识的过程。而从设备接收到主设备广播的通道标识后,与主设备建立连接通道,并为本设备的应用程序分配通道标识,以及将所分配的通道标识传输至主设备,主设备再记录各个从设备的通道标识和对应的连接通道的过程可以称为从设备向主设备注册的过程。
完成初始分配通道标识和从设备向主设备注册这两个过程之后,主设备和从设备之间可以基于通道标识进行数据同步。
当主设备需要将数据同步至从设备时,主设备可以先确定出需要同步的数据,再根据需要同步的从设备来确定出通道标识,然后,调用数据发送接口221,按照从设备的通道标识,将需要同步的数据传输至从设备。具体地,主设备可以从记录的信息中确定出每个从设备的通道标识对应的连接通道,然后使用该连接通道将需要同步的数据传输至对应的从设备。在该过程中,应用程序可以无需感知组网环境中哪些设备上的哪些应用需要进行数据同步,只需要填入希望同步的数据即可,然后由数据同步接口模块、数据同步管理模块和底层近场传输模块,希望同步的数据同步至对应的从设备的应用程序。
同理,如果从设备需要将数据同步至主设备时,从设备也可以根据自身记录的主设备的通道标识,以及该通道标识对应的连接通道,通过本设备的数据同步接口模块、数据同步管理模块和底层近场传输模块,实现将数据同步至主设备的应用程序。
主设备和从设备可以通过同步初始化接口222中的数据通知回调函数,实现数据接收功能。也就是说,如果电子设备接收到其它设备同步的数据后,数据通知回调函会被触发,使得本设备的应用程序进行对其它设备同步的数据进行响应。
在数据同步之后,电子设备可以通过调用同步销毁接口224,将对应的应用程序从同步框架中反注册,即不再进行该应用程序的数据同步操作。换句话说,如果应用程序调用同步销毁接口224,则表明该应用程序希望从数据同步框架中去注册,后续不再将数据同步到其它设备,或者将其它设备上的数据变化刷新到本设备。同步销毁接口224和同步初始化接口222是相对的,数据同步初始化接口222是在数据同步之前进行注册,而同步销毁接口224是在数据同步之后进行反注册。
同步开关接口223可以用于对各类型数据的发送或者接收进行开关控制。各类型的数据发送功能和接收功能默认打开。根据应用需求,可以将对应类型数据的发送开关或者接收开关进行关闭。
数据同步管理模块23可以用于内部链接通道的查询,数据的发送和接收等。连接通道管理单元223可以用于对已建立的连接通道进行管理,具体地,其可以记录当前设备的所有已建立的连接通道和对应的通道标识。如果该设备为主设备,连接通道管理单元223中可以记录有所有从设备的通道标识。如果该设备为从设备,连接通道管理单元223中可以记录有主设备的通道标识。数据发送管理单元231可以用于为数据发送动作分配线程,将数据传递的一次性数据或者流式数据向其它设备传递。数据接收管理单元233可以用于为数据接收动作分配线程,将接收到的数据进行缓冲管理,数据接收完毕后将数据提供给应用程序进行读取和后续操作。
图2中除了示出本申请实施例的电子设备的软件系统架构,另外,图2中的设备A、设备B和设备C之间分别通过本设备的底层近场传输模块和其它设备进行数据交互,而在各个设备中,应用程序、数据同步接口模块、数据同步管理模块和底层传输模块之间进行数据交互。
在介绍完本申请实施例中电子设备的硬件架构和软件架构之后,下面将对数据同步过程进行介绍。
参见图3,图3为本申请实施例提供的数据同步方法的一种流程示意框图,该方法可以应用于第一电子设备,该方法可以包括以下步骤:
步骤S301、第一电子设备获取第一应用程序的第一待同步数据,第一电子设备包括第一应用程序。
需要说明的是,上述第一待同步数据是需要同步至第二电子设备上的第二应用程序的数据,该数据是第一应用程序的数据。第一电子设备需要将数据同步至第二电子设备的第二应用程序时,则可以先确定出哪些数据是需要同步的数据。
该第一待同步数据的数据类型可以是任意的,作为示例而非限定,数据类型可以包括但不限于:消息、对象、大字节、文件和流等。消息可以是指单个暂态的控制指令,对象可以是指持续变化的实例,大字节可以是指长度较大的字节数组,文件可以是指本地某个位置的具体文件,流可以是指后续间断写入的数据流。
上述第一电子设备可以作为主设备,第二电子设备相应地为从设备。第一电子设备(主设备)将第一应用程序的第一待同步数据同步至第二电子设备(从设备)的第二应用程序。
第一电子设备上安装有第一应用程序,第二电子设备上安装有第二应用程序。第一应用程序和第二应用程序可以是同一款应用程序,例如,第一应用程序和第二应用程序均为华为畅连通话;也可以是不同款的应用程序,例如,第一应用程序为华为畅连通话,第二应用程序为华为视频。
步骤S302、第一电子设备确定第一通道标识,第一通道标识是第二电子设备为第二应用程序分配的标识,该第二电子设备包括第二应用程序,每个第一通道标识对应一个第二电子设备。
具体地,第一电子设备确定出需要同步的第一待同步数据之后,可以再确定需要同步至哪些第二电子设备,并获取需要数据同步的第二电子设备的第一通道标识。
需要说明的是,上述第一通道标识可以包括第二电子设备的设备标识和第二应用程序的应用程序标识,设备标识用于区分设备,应用程序标识用于区分应用程序。
具体应用中,第一电子设备上的数据同步管理模块23内可以记载有所有从设备的通道标识,以及每个通道标识对应的连接通道。例如,第一通道标识A对应连接通道A,第二通道标识B对应连接通道B。从数据同步管理模块23中可以确定出需要数据同步的第二电子设备的第一通道标识。
第一电子设备上的第一应用程序需要同步数据时,第一应用程序可以先调用本设备的同步初始化接口222,以获取到本设备的底层近场传输模块24为其分配的第二通道标识。该第二通道标识包括第一电子设备的设备标识和第一应用程序的应用程序标识。然后,第一电子设备将该第二通道标识广播至周边的第二电子设备。
第二电子设备接收第一电子设备广播的第二通道标识之后,可以根据该第二通道标识与第一电子设备建立连接通道。另外,第二电子设备的第二应用程序也会调用本设备的同步初始化接口222,以获得本设备的底层近场传输模块24为其分配的第一通道标识。然后,通过所建立的连接通道,将第一通道标识传输至第一电子设备。还有,第二电子设备也可以记录第一电子设备广播的第二通道标识,以及该第二通道标识对应的连接通道。
第一电子设备在获取到各个第二电子设备传输的第一通道标识之后,会记录各个第二电子设备对应的第一通道标识,以及每个第一通道标识对应的连接通道。
通过上述过程,第一电子设备的第一应用程序为自身分配了第二通道标识,第二电子设备向第一电子设备注册。
步骤S303、第一电子设备确定第一通道标识对应的连接通道,该连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第一通道标识对应一个连接通道。
具体地,第一电子设备在确定出第一通道标识之后,可以基于第一通道标识和连接通道之间的对应关系,确定出该第一通道标识对应的连接通道。该连接通道是预先建立的通信通道,该连接通道可以为但不限于Wi-Fi点对点、Wi-Fi STA和蓝牙等。
可以理解的是,如果有多个第二电子设备,每个第二电子设备均可以由一个连接通道与第一电子设备连接。每个第二电子设备和第一电子设备之间的连接通道类型可以相同,也可以不同。例如,第一电子设备为手机,第二电子设备包括平板和智慧大屏,手机和平板之间连接通道为蓝牙通道,手机和智慧大屏之间的连接通道为Wi-Fi点对点通道。
步骤S304、第一电子设备通过第一通道标识对应的连接通道,将第一待同步数据传输至第二电子设备,以指示第二电子设备将第一待同步数据同步至第二应用程序。
具体应用中,第一电子设备使用确定出来的连接通道,将第一待同步数据传输至第二电子设备。第二电子设备的近场传输模块24接收到第一待同步数据之后,可以通过本设备的数据接收管理单元233将收到的第一待同步数据缓冲管理,并提供给本设备的第二应用程序读取,以将第一待同步数据同步至本设备的第二应用程序。
可以理解的是,如果有多个第二电子设备,每个第二电子设备均可以将第一待同步数据同步至本设备的第二应用程序。需要指出的是,多个第二电子设备上的第二应用程序可以是同一款应用,也可以不是同一款应用。
由上可见,本申请实施例通过为应用程序分配通道标识后,基于通道标识实现了近场环境下跨设备的应用数据同步。不需要电子设备接入互联网,不需要电子设备登录平台账号或者应用账号等,也需要依赖于云端服务器作为数据交互的中转站。此外,本申请实施例的数据同步方案并不限于两两设备之间的同步,也能实现三台及以上的电子设备之间的数据同步。还可以实现应用程序使用过程中产生的动态局部数据的同步。
在进行数据同步之前,第一电子设备需要进行初始分配通道标识,第二电子设备需要注册到第一电子设备。
也就是说,在一些实施例中,参见图4示出的本申请实施例提供的初始化过程的流程示意框图,在上述获取第一应用程序的待同步数据之前,图3对应的方法还可以包括以下步骤:
步骤S401、第一电子设备为第一应用程序分配第二通道标识。
具体应用中,第一电子设备和第二电子设备上的近场传输模块可以向其他设备传输设备信息的同步请求,以及响应其他设备的同步请求。如果第一电子设备上第一应用程序想要向第二电子设备的第二应用程序同步数据,则调用本设备的同步初始化接口222,同步初始化接口222调用数据同步管理模块23,进行连接通道初始化处理。数据同步管理模块23再将底层通道初始化请求发给底层近场传输模块24,本设备的底层近场传输模块24按照设备信息和应用信息,为第一应用程序分配第二通道标识。
需要说明的是,第一电子设备在调用同步初始化接口,以为第一应用程序分配第二通道标识之前,第一电子设备可以向其它设备传输信息同步请求,并且,其它设备会回应第一电子设备的同步请求,向第一电子设备返回传输信息回应消息。
步骤S402、第一电子设备将第二通道标识广播至一个或多个第二电子设备。
具体应用中,第一电子设备的底层近场传输模块24按照设备信息和应用信息,为第一应用程序分配第二通道标识之后,本设备的底层近场传输模块24将该第二通道标识广播至第二电子设备上的底层近场传输模块,以将第二通道标识广播至第二电子设备。
步骤S403、第二电子设备与第一电子设备建立连接通道。
步骤S404、第二电子设备记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识。
步骤S405、第一电子设备接收一个或多个第二电子设备发送的第一通道标识。
步骤S406、第一电子设备建立每个第一通道标识和对应的连接通道的对应关系。
具体应用中,第二电子设备获取到第一电子设备广播的第二通道标识之后,可以基于该第二通道标识向第一电子设备注册。第二电子设备完成初始化注册之后,第一电子设备上记录有每个第二电子设备的第一通道标识,以及每个第一通道标识对应的连接通道。后续过程中,第一电子设备的第一应用程序在需要进行数据同步时,可以基于第二电子设备的第一通道标识,确定出连接通道,并使用该连接通道将第一待同步数据同步至第二电子设备的第二应用程序。
根据调用同步初始化接口222的先后顺序,第一电子设备为主设备,第二电子设备为从设备。为了更好地介绍从设备向主设备注册的过程,下面将结合图5进行介绍说明。
参见图5,为本申请实施例提供的从设备向主设备注册过程示意图。如图5所示,其包括设备1、设备2和设备3,设备1为手机,设备2为手机,设备3为电视、平板或者手机等。设备1上有应用A,设备2上有应用A,设备3上有应用A1。
设备1为主设备,设备1的应用A可以包括数据同步接口和数据同步服务,数据同步接口可以为图2中的数据同步接口模块22,数据同步服务可以包括图2中数据同步管理模块23和底层近场传输模块24。设备2和设备3中的应用均包括数据同步接口和数据同步代理,数据同步代理可以包括图2中的数据同步管理模块23和底层近场传输模块24。
基于图5,从设备向主设备注册的过程可以包括:步骤1、各个设备为本设备的应用分配通道标识。该通道标识包括设备标识和应用标识。步骤2、设备1首先调用本设备的同步初始化接口222,进行数据同步通道初始化,完成服务端注册,设备1作为数据同步时的主设备。步骤3、设备2和设备3作为数据同步时的从设备,通过调用数据同步通道初始化函数完成服务端的注册。该服务端可以是指设备1中的数据同步服务。
在图5中,设备1和设备2、设备1和设备3之间的连接通道可以是Wi-Fi点对点、Wi-Fi STA或蓝牙等。
通过图5,主设备和各个从设备则建立了连接通道,并且,主设备上记录有各个从设备的通道标识,以及各个从设备的通道标识和连接通道的对应关系。
从设备注册到主设备之后,主设备和从设备之间即可基于通道标识进行数据同步。在数据同步过程中,主设备可以向从设备同步数据,即主设备可以将自身的应用程序数据同步至各个从设备;从设备也可以向主设备同步数据,即从设备可以将自身的应用程序数据同步至主设备。
主设备向从设备同步数据的过程可以如图3对应的过程,为了更好地介绍该过程,下面结合图6示出的主设备向从设备同步数据的过程示意图进行介绍。
如图6所示,其包括主设备、从设备1和从设备2,主设备和从设备上均包括应用程序,主设备上包括数据同步接口和数据同步服务,从设备上包括数据同步接口和数据同步代理。
基于图6,主设备向从设备同步数据的过程可以包括:步骤1、主设备调用数据发送接口。步骤2、主设备上的数据同步服务访问已注册连接通道列表,获取待同步的所有通道标识对应的连接通道。步骤3、主设备通过连接通道向各个从设备发送数据。步骤4、从设备通过连接通道接收主设备的同步数据。步骤5、各个从设备调用数据同步初始化接口内提供的数据通知回调函数完成数据同步和后续业务处理。
在介绍完主设备向从设备同步数据的过程,下面将介绍从设备向主设备同步数据的过程。
在一些实施例中,上述图3对应的数据同步方法还可以包括:第一电子设备接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据;第一电子设备将第二待同步数据同步至第一应用程序。
具体应用中,第二电子设备如果需要将本设备的第二应用程序的数据同步至第一电子设备上的第一应用程序,可以调用本设备的数据发送接口,确定出第一电子设备的第二通道标识,使用该第二通道标识对应的连接通道将第二待同步数据发送至第一电子设备。第一电子设备可以调用数据通知回调函数实现将第二待同步数据同步至本设备的第一应用程序。
可以理解的是,上述第二待同步数据是指需要同步的第二应用程序的数据。该第二待同步数据的数据类型可以是任意的。
第二电子设备除了将第二待同步数据同步至第一电子设备,也可以将第二待同步数据同步至其他第二电子设备。也就是说,在一些实施例中,上述图3对应的数据同步方法还可以包括:第一电子设备接收第二电子设备通过第二通道标识对应的连接通道发送的指示信息,该指示信息用于指示将第二待同步数据传输至其它第二电子设备,其它第二电子设备是多个第二电子设备中除了发送第二待同步数据的第二电子设备之外的电子设备。
需要说明的是,上述指示信息可以携带在第二待同步数据中,也可以不携带在第二待同步数据中。其它第二电子设备是指除了发送该第二待同步数据的第二电子设备之外的设备,例如,第二电子设备包括手机、平板和智能电视,手机需要将第二待同步数据同步至第一电子设备和其它第二电子设备,此时,其它第二电子设备是指平板和智能电视。
此时,第一电子设备在接收到第二待同步数据之后,还需要将第二待同步数据发送至其它第二电子设备。第一电子设备将第二待同步数据发送至其它第二电子设备的过程可以包括:确定其它第二电子设备的第一通道标识;确定其它第二电子设备的第一通道标识对应的连接通道;通过其它第二电子设备的第一通道标识对应的连接通道,将第二待同步数据传输至其它第二电子设备,以指示其它第二电子设备将第二待同步数据同步至本设备的第二应用程序。
可以理解的是,第一电子设备可以根据指示信息携带的其它第二电子设备信息,确定出需要数据同步的其它第二电子设备。然后,再基于本地所记录的各个第二电子设备的第一通道标识,确定其它第二电子设备的第一通道标识,再基于通道标识确定连接通道。最后,使用各个其它第二电子设备对应的连接通道,将第二待同步数据发送至其它第二电子设备。
为了更好地介绍从设备向主设备以及其它从设备同步数据的过程,下面结合图7示出的本申请实施例提供的从设备向主设备以及其它从设备同步数据的示意图进行介绍说明。
如图7所示,其包括主设备、从设备1和从设备2。主设备和从设备上均包括应用程序。主设备上包括数据同步接口和数据同步服务,从设备上包括数据同步接口和数据同步代理。
基于图7,该过程可以包括:步骤1、从设备2调用数据发送接口。步骤2、从设备2上的数据同步代理向与主设备的连接通道发送数据。步骤3、主设备接收从设备2的同步数据。步骤4、主设备通过数据同步服务调用数据通知回调函数完成数据同步和后续业务处理。若从设备2要求将数据同步至其它从设备,则进入步骤5~7,否则本次同步流程结束。步骤5、主设备向从设备3的连接通道发送同步数据。步骤6、从设备2通过连接通道接收主设备的同步数据。步骤7、从设备3调用数据同步服务内的数据通知回调函数完成数据同步和后续业务处理。
在一些实施例中,各个电子设备还可以设置通过数据同步开关对每类数据的发送或者接收进行管理。数据同步开关包括数据发送开关和数据接收开关,且每种数据类型有其各自的数据发送开关和数据接收开关,相同数据类型的数据发送开关和数据接收开关是相互独立的。通过数据发送开关或数据接收开关的关闭和开启控制数据的接收和发送。
一般情况下,每种数据类型对应的数据发送开关和数据接收开关默认处于开启状态。如果需要不接收某种类型的数据,或者不发送某种数据类型的数据,则可以关闭该数据类型对应的数据发送开关或者数据接收开关。各个设备上的应用程序可以通过数据同步开关,精确地对每类数据的发送或者接收进行控制。
首先,可以先对数据同步开关进行设置,以实现根据发送或者接收的需求,将数据同步开关设置为对应的状态。具体应用中,第一电子设备可以先获取第一同步开关的设置指令,该第一同步开关包括第一接收开关和第一发送开关。然后,第二电子设备根据设置指令中数据类型、同步动作和开关设置值,对第一同步开关进行设置,该同步动作包括数据发送和数据接收。
具体地,第一电子设备上的应用程序可以调用同步开发设置接口,设置数据类型、同步动作和开关设置值。然后,第一电子设备比对每个数据类型的同步动作开关和开发设置值是否与当前状态下的数值相同。如果不相同,则将对应数据类型的对应动作开关的数值更新为所设置的开关设置值。
需要说明的是,数据类型可以包括但不限于消息、对象、大字节、文件及流。同步动作可以包括数据发送和数据接收。开发设置值可以包括True和False。当某种类型的数据的同步开关的开发设置为True时,则表征该同步开关处于开启状态,反之,当某种类型的数据的同步开关的开发设置值为False时,则表明该同步开关处于关闭状态。
通过设置指令可以设置各种类型的数据的同步开关的状态。例如,对于消息类数据来说,其对应有数据发送开关和数据接收开关,如果消息类数据的数据发送开关的开发设置值为True,则表明消息类数据的数据发送开关处于开启状态,该设备可以发送消息类数据。反之,如果消息类的数据发送开关的开发设置值为False,则表明消息类数据的数据发送开关处于关闭状态,该设备不可以发送消息类数据。
需要指出的是,通过设置数据同步开关来控制每类数据的发送和接收,可以提高应用程序对数据同步操作的便捷性。
基于此,第一电子设备在发送第一待同步数据之前,可以先确定是否允许发送第一待同步数据;若允许发送第一待同步数据,则进入第一待同步数据发送流程,即可以进入确定第一通道标识的步骤。若不允许发送第一待同步数据,则可以记录相应的日志信息。
而第一电子设备可以通过第一待同步数据的数据类型对应的数据发送开关的状态,确定是否允许发送第一待同步数据。具体地,第一电子设备确定第一待同步数据的第二目标数据类型;然后,第一电子设备确定第二目标数据类型对应的第一发送开关是否处于开启状态;若第一发送开关处于开启状态,确定允许发送第一待同步数据;若第一发送开关处于关闭状态,确定不允许发送第一待同步数据;其中,每种数据类型对应一个数据发送开关。
例如,第一电子设备确定出第一待同步数据为文件类数据,然后,再确定文件类数据的数据发送开关是否为True,如果是,则确定文件类数据的发送开关(即第一发送开关)处于开启状态,允许发送文件类数据。反之,如果文件类数据的数据发送开关为False,则确定文件类数据的发送开关处于关闭状态,不允许发送文件类数据。
需要说明的是,第一电子设备在数据发送时可以查询数据发送开关,以确定是否能发送该类型的数据。具体应用中,第一电子设备可以在调用数据发送接口时查询数据发送开关。另外,如果数据发送开关处于关闭状态,可以记录相应的日志信息。
第一电子设备在数据发送时查询数据发送开关,在接收数据也可以查询数据接收开关,以确定是否能接收对应类型的数据。
也就是说,第一电子设备在接收第二电子设备的第二待同步数据之前,第一电子设备还可以确定是否允许接收第二待同步数据;若允许接收第二待同步数据,进入接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据的步骤。若不允许接收第二待同步数据,则可以记录相应的日志信息。
具体应用中,第一电子设备可以先确定第二待同步数据的第一目标数据类型;再确定第一目标数据类型对应的第一接收开关是否处于开启状态,若第一接收开关处于开启状态,确定允许接收第二待同步数据,若第一接收开关处于关闭状态,确定不允许接收第二待同步数据,以确定是否允许接收第二待同步数据。其中,每种数据类型对应一个接收开关。
例如,第二待同步数据的数据类型为流,第一电子设备在接收第二待同步数据时查询数据流对应的数据接收开关状态。如果流类数据对应的数据接收开关为True,则表明该数据接收开关处于开启状态,允许接收流类数据。反之,如果流类数据对应的数据接收开关为False,则表明该数据接收开关处于关闭状态,不允许接收流类数据。
上文图3对应的实施例主要示出了第一电子设备一侧的相关流程,下面将介绍与图3对应的第二电子设备一侧的相关流程。
相对应于图3示出的第一电子设备的流程,第二电子设备一侧的相关流程可以包括:通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,第一待同步数据是第一应用程序的数据;将第一待同步数据同步至第二应用程序,第二电子设备包括第二应用程序。
需要说明的是,在第二电子设备一侧,记录有第一电子设备的第二通道标识,以及第二通道标识对应的连接通道。
相对应于上述图4示出的第一电子设备的流程,第二电子设备一侧的相关流程可以包括:接收第一电子设备广播的第二通道标识,每个第二通道标识对应一个第一电子设备;根据第二通道标识与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
具体地,第二电子设备上的近场传输模块可以向其他设备传输设备信息的同步请求,以及响应其他设备的同步请求。果第二电子设备可以调用本设备的同步初始化接口222,同步初始化接口222调用数据同步管理模块23,进行连接通道初始化处理。数据同步管理模块23再将底层通道初始化请求发给底层近场传输模块24,本设备的底层近场传输模块24按照设备信息和应用信息,为本设备的第二应用程序分配第一通道标识。
第二电子设备可以接收第一电子设备同步的第一待同步数据,也可以将第二待同步数据同步至第一电子设备。具体应用中,第二电子设备可以先获取第二应用程序的第二待同步数据;然后,通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备,以指示第一电子设备将第二待同步数据同步至第一应用程序。
可以理解的是,如果第二电子设备想要将第二待同步数据同步至其它第二电子设备,可以向第一电子设备发送第二待同步数据的时候,发送一个指示信息,用于指示第一电子设备将第二待同步数据传输至其它第二电子设备。该指示信息携带有其它第二电子设备的相关信息。
第二电子设备上也设置有数据同步开关,以对每类数据的发送或者接收进行管理。
具体来说,第二电子设备在接收第一电子设备发送的第一待同步数据之前,可以先确定是否允许接收第一待同步数据;若允许接收第一待同步数据,进入通过第二通道标识对应的连接通道接收第一电子设备发送的第一待同步数据的步骤。若不允许接收第一待同步数据,则记录相应的日志信息。
具体应用中,第二电子设备可以先确定第一待同步数据的第三目标数据类型;再确定第三目标数据类型对应的第二接收开关是否处于开启状态,若第二接收开关处于开启状态,确定允许接收第一待同步数据,若第二接收开关处于关闭状态,确定不允许接收第一待同步数据;其中,每种数据类型对应一个接收开关。
同理,第二电子设备在发送第二待同步数据的时候,也可以查询对应的数据发送开关,确定是否允许发送该类型的数据。也就是说,第二电子设备在发送第二待同步数据之前,可以先确定是否允许发送第二待同步数据;若允许发送第二待同步数据,进入通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备的步骤。若不允许发送,则记录相应的日志信息。
具体应用中,第二电子设备可以先确定第二待同步数据的第四目标数据类型;再确定第四目标数据类型的第二发送开关是否处于开启状态,若第二发送开关处于开启状态,确定允许发送第二待同步数据,若第二发送开关处于关闭状态,确定不允许发送第二待同步数据;其中,每种数据类型对应一个发送开关。
可以理解的是,第二电子设备上的数据发送开关和数据接收开关也可以通过设置质量进行设置。具体来说,第二电子设备可以先获取第二同步开关的设置指令,第二同步开关包括第二接收开关和第二发送开关;再根据设置指令中数据类型、同步动作和开关设置值,对第二同步开关进行设置,同步动作包括数据发送和数据接收。
需要说明的是,第二电子设备的数据同步开关的相关内容与第一电子设备的数据同步开关的类型,具体介绍请参见上文第一电子设备的数据同步开关的介绍,在此不再赘述。
在介绍完第一电子设备一侧和第二电子设备一侧的相关流程之后,下面将结合图8对第一电子设备和第二电子设备的交互过程进行介绍。
参见图8示出的本申请实施例提供的数据同步交互过程示意图,该过程可以包括:
步骤S801、第一电子设备为本设备的第一应用程序分配第二通道标识。
步骤S802、第一电子设备将第二通道标识广播至一个或多个第二电子设备。
步骤S803、第二电子设备根据第二通道标识与第一电子设备建立连接通道。
步骤S804、第二电子设备为本设备的第二应用程序分配第一通道标识。
步骤S805、第二电子设备通过所建立的连接通道,将第一通道标识传输至第一电子设备。
步骤S806、第一电子设备记录第一通道标识和连接通道的对应关系。
步骤S807、第一电子设备获取本设备的第一应用程序的第一待同步数据。
步骤S808、第一电子设备确定需要同步的第一通道标识,并根据第一通道标识和连接通道的对应关系,确定出需要同步的第一通道标识对应的连接通道。
步骤S809、第一电子设备通过对应的连接通道将第一待同步数据传输至第二电子设备。
步骤S810、第二电子设备将第一待同步数据同步至本设备的第二应用程序。
步骤S811、第二电子设备获取本设备的第二应用程序的第二待同步数据。
步骤S812、第二电子设备确定需要同步的第二通道标识,并根据第二通道标识和连接通道的对应关系,确定出对应的连接通道。
步骤S813、第二电子设备使用对应的连接通道将第二待同步数据传输至第一电子设备。
步骤S814、第一电子设备将第二待同步数据同步至本设备的第一应用程序。
需要说明的是,图8示出数据同步过程中主设备和从设备的数据交互过程。步骤S801~S806是主设备初始化分配通道标识和从设备向主设备注册的过程,步骤S807~S811是主设备将数据同步至从设备的过程,步骤S812~S815是从设备将数据同步至主设备的过程。
还需要说明的是,完成初始化分配通道标识和从设备向主设备注册的过程之后,主设备可以先向从设备同步数据,然后从设备再向主设备同步数据。当然,在其它一些实施例中,从设备也可以先向主设备或者其它从设备同步数据,然后主设备再向从设备同步数据。
换句话说,初始化分配通道标识和从设备向主设备注册的过程之后,主设备将数据同步至从设备的过程和从设备将数据同步至主设备的过程的先后顺序可以是任意的。当然,这两个过程也可以同时进行。
在其它一些实施例中,图8中的流程还可以包括第一电子设备查询数据同步开关和第二电子设备查询同步开关的过程,也可以包括第二电子设备将数据同步至其它电子设备的过程。
需要说明的是,图8与上文各个实施例的相同或者相似之处,可以参见上文对应内容,在此不再赘述。
在一些实施例中,在完成初始化分配通道标识和从设备向主设备注册等过程之后,数据同步过程中的主设备先向从设备同步数据,然后从设备再向主设备同步数据。当然,从设备也可以先向主设备同步数据,然后主设备再向从设备同步数据。即第二电子设备先向第一电子设备同步数据,第一电子设备再向第二电子设备同步数据。
也就是说,本申请实施例还可以提供一种数据同步方法,应用于第二电子设备,该方法包括:获取第二应用程序的第三待同步数据,第二电子设备包括第二应用程序;确定第二通道标识,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,每个第二通道标识对应一个第一电子设备;确定第二通道标识对应的连接通道,连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第二通道标识对应一个连接通道;通过第二通道标识对应的连接通道,将第三待同步数据传输至第一电子设备,以指示第一电子设备将第三待同步数据同步至第一应用程序。
需要说明的是,上述第三待同步数据是指第二电子设备的第二应用程序需要同步至第一电子设备的第一应用程序的数据。
相对应地,在第一电子设备一侧,该方法可以包括:通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据,第一通道标识是第二电子设备为第二应用程序分配的标识,第二电子设备包括第二应用程序,第三待同步数据是二应用程序的数据;将第三待同步数据同步至第一应用程序,第一电子设备包括第一应用程序。
需要说明的是,在该实施例中,还可以包括初始化分配通道标识、从设备向主设备注册、数据同步开关等过程,这些过程可以与上文实施例中的类似,具体介绍可以参见上文,在此不再赘述。
本申请实施例提供的数据同步方法可以应用于各种场景,例如,多设备协同场景。作为示例而非限定,下面将示例性介绍两种可能的应用场景。
在多个设备上进行文档会议的场景
参见图9示出的本申请实施例提供的在多个设备上进行文档会议的场景示意图,如图9所示,该场景可以包括手机91、手机92和手机93。手机91作为数据同步过程中的主设备,手机92和手机93作为数据同步过程中的从设备。手机91、手机92和手机93上均安装有文档应用程序。
在文档会议过程中,手机91、手机92和手机93均运行文档应用程序。手机91作为会议主席设备,手机92和手机93作为与会者设备。会议主席侧的用户可以进行浏览文档,对文档进行翻页和放大等操作,也可以对文档进行批注、修改、标记等操作。手机91上的数据会实时同步至手机92和手机93中,使得手机91、手机92和手机93的文档显示效果同步。具体地,手机91在用户操作后立即显示操作后的界面,同时,手机91也会将文档和操作数据同步至手机92和手机93,手机92和手机93接收到操作数据和文档后,会将相应的数据同步至本设备上正在运行的文档应用程序,并显示渲染的文档,实现手机91、手机92和手机93的文档显示同步。
参见图10示出的本申请实施例提供的多设备文档会议交互过程示意图,如图10所示,会议主席设备101和与会者设备102上均包括文档应用程序。会议主席设备101可以为手机91,与会者设备102可以是一个或多个,其可以包括手机92和手机93。
会议主席设备101先进行同步通道初始化,以为本设备上的文档应用程序分配第二通道标识。然后,会议主席设备101将第二通道标识广播至与会者设备102。与会者设备102可以根据第二通道标识和会议主席设备建立近场连接通道。另外,与会者设备102也会进行同步通道初始化,以为本设备上的文档应用程序分配第一通道标识。与会者设备102获取到文档应用程序的第一通道标识之后,可以将第一通道标识通过所建立的连接通道传输至会议主席设备101,以注册到主设备。
然后,会议主席设备101可以将文档发送至与会者设备102。具体地,会议主席设备101先确定与会者设备102的第一通道标识,然后使用第一通道标识对应的连接通道将文档发送至与会者设备102。该文档是会议主席设备101需要同步至与会者设备102的数据。
与会者设备102在接收到会议主席设备101同步的文档之后,本设备的文档应用程序会读取该文档,并渲染显示该文档。此时,会议主席设备101和与会者设备102所显示的文档界面相同。
会议主席设备101的用户可以操作文档,例如,批注、翻页、放大等。会议主席设备101上的文档应用程序可以获取到操作指令,并根据与会者设备102的第一通道标识,将操作指令发送至各个与会者设备102。与会者设备102接收到会议主席设备102发送的操作指令数据之后,本设备的文档应用程序会读取到该操作指令,并按照操作指令更新本设备的文档应用程序界面。例如,如果会议主席设备101的文档应用程序翻页了,与会者设备102会根据翻页指令执行翻页操作。
由上可见,通过本申请实施例提供的数据同步方案,不依赖于云端服务器和账号登录机制,实现了会议主席设备101和与会者设备102文档同步显示的效果。另外,通过本申请实施例提供的数据同步方案,还可以实现近场环境下的应用文档动态数据的同步,使得与会者设备和会议主席设备上的文档界面同步显示。
需要说明的是,在多设备文档会议场景下,除了可以同步操作指令之外,主设备也可以将更新之后的页面数据同步至从设备。另外,从设备的用户也可以对文档进行批注、翻页等操作,再通过数据同步,也可以实现从设备和主设备上的文档显示界面同步的效果。也就是说,主设备上的应用程序可以将数据同步至从设备上的应用程序,从设备上的应用程序也可以将数据同步至主设备上的应用程序。
基于多设备的多人游戏场景
参见图11示出的本申请实施例提供的多设备上多人游戏的系统架构示意图,如图11所示,其包括手机111、手机112和大屏设备113。大屏设备113可以是电视或者平板等显示屏面积较大的设备。大屏设备113可以作为数据同步过程中的主设备,手机111、手机112则作为数据同步过程中的从设备。大屏设备113上运行有游戏服务应用程序,而手机111和手机112上运行有游戏控制应用程序。游戏服务应用程序可以协同游戏控制应用程序何时加入到游戏,游戏控制应用程序可以将用户的控制动作(例如,上下左右移动等)同步至游戏服务器端,游戏服务应用程序可以按照所接收的控制指令,完成游戏内人物的操作,从而实现多人游戏互动的效果。
参见图12示出的本申请实施例提供的多人游戏的数据交互过程示意图,如图12所示,其包括游戏主设备121和游戏从设备122,游戏主设备121为图11中的大屏设备113,游戏从设备122可以包括一个或多个,游戏从设备122可以包括图11中的手机111和手机112。游戏主设备121上运行有游戏服务应用程序,游戏从设备122上运行有游戏控制应用程序。
游戏主设备121可以先进行同步通道初始化,以为本设备上的游戏服务应用程序分配第二通道标识。然后,游戏主设备121将第二通道标识广播至游戏从设备122。游戏从设备122可以根据第二通道标识和游戏主设备121建立连接通道,该连接通道可以为但不限于蓝牙通道、Wi-Fi点对点等。另外,游戏从设备122还会为本设备的游戏控制应用程序分配第一通道标识。游戏从设备122通过所建立的连接通道,将第一通道标识传输至游戏主设备121,以注册到游戏主设备121。
完成初始化注册等过程之后,游戏主设备121可以根据已注册的从设备和对应的连接通道,向游戏从设备122发送游戏开始指令。游戏从设备122通过对应的连接通道接收到游戏开始指令之后,则可以显示对应的操作界面。玩家向游戏从设备121输入控制操作,游戏从设备121上的游戏控制应用程序获取到玩家的操作指令之后,可以通过游戏主设备121的第二通道标识对应的连接通道,将玩家的操作指令传输至游戏主设备121。游戏主设备121接收到玩家的操作指令之后,按照玩家的操作指令刷新游戏界面。
由上可见,通过本申请实施例提供的数据同步方案,可以实现近场环境下通过游戏主设备和游戏从设备进行多人协同控制游戏的效果。另外,相较于传统的多人游戏需要依赖于云端服务器的环境,或者游戏控制端只能是特定的设备(例如手柄),本实施例通过数据同步方案,实现了近场环境下的游戏动态数据的同步,不需要依赖于云端服务器和账号登录机制。另外,还扩展了充当游戏控制端的设备类型,可以有效地利用不同设备的显示屏、传感器等器件完成用户游戏控制指令的录入。
对应于上文图3对应实施例的数据同步方法,图13示出了本申请实施例提供的数据同步装置的结构框图,该数据同步装置可以应用于第一电子设备。为了便于说明,仅示出了与本申请实施例相关的部分。
如图13所示,该数据同步装置可以包括:
第一获取模块131,用于获取第一应用程序的第一待同步数据,第一电子设备包括第一应用程序。
第一确定模块132,用于确定第一通道标识,第一通道标识是第二电子设备为第二应用程序分配的标识,第二电子设备包括第二应用程序,每个第一通道标识对应一个第二电子设备。
第一通道确定模块133,用于确定第一通道标识对应的连接通道,连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第一通道标识对应一个连接通道。
第一同步模块134,用于通过第一通道标识对应的连接通道,将第一待同步数据传输至第二电子设备,以指示第二电子设备将第一待同步数据同步至第二应用程序。
在一些实施例中,该装置还可以包括:第一通道标识分配模块,用于为第一应用程序分配第二通道标识;将第二通道标识广播至一个或多个第二电子设备,第二通道标识用于指示第二电子设备与第一电子设备建立连接通道,记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识;接收一个或多个第二电子设备发送的第一通道标识;建立每个第一通道标识和对应的连接通道的对应关系。
在一些实施例中,第一通道标识包括第二电子设备的标识信息和第一应用程序的标识信息;第二通道标识包括第一电子设备的标识信息和第一应用程序的标识信息。
在一些实施例中,该装置还可以包括:第二同步模块,用于接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据;将第二待同步数据同步至第一应用程序。
在一些实施例中,该装置还可以包括:指示信息接收模块,用于接收第二电子设备通过第二通道标识对应的连接通道发送的指示信息,指示信息用于指示将第二待同步数据传输至其它第二电子设备,其它第二电子设备是多个第二电子设备中除了发送第二待同步数据的第二电子设备之外的电子设备;第三同步模块,用于确定其它第二电子设备的第一通道标识;确定其它第二电子设备的第一通道标识对应的连接通道;通过其它第二电子设备的第一通道标识对应的连接通道,将第二待同步数据传输至其它第二电子设备,以指示其它第二电子设备将第二待同步数据同步至本设备的第二应用程序。
在一些实施例中,该装置还可以包括:第一接收判断模块,用于确定是否允许接收第二待同步数据;若允许接收第二待同步数据,进入接收第二电子设备通过第二通道标识对应的连接通道发送的第二应用程序的第二待同步数据的步骤。
在一些实施例中,该第一接收判断模块具体用于:确定第二待同步数据的第一目标数据类型;确定第一目标数据类型对应的第一接收开关是否处于开启状态;若第一接收开关处于开启状态,确定允许接收第二待同步数据;若第一接收开关处于关闭状态,确定不允许接收第二待同步数据;其中,每种数据类型对应一个接收开关。
在一些实施例中,该装置还可以包括第一发送判断模块,用于确定是否允许发送第一待同步数据;若允许发送第一待同步数据,进入确定第一通道标识的步骤。
在一些实施例中,该第一发送判断模块具体用于:确定第一待同步数据的第二目标数据类型;确定第二目标数据类型对应的第一发送开关是否处于开启状态;若第一发送开关处于开启状态,确定允许发送第一待同步数据;若第一发送开关处于关闭状态,确定不允许发送第一待同步数据;其中,每种数据类型对应一个发送开关。
在一些实施例中,数据类型包括消息、对象、大字节、文件和流中的至少一种。
在一些实施例中,该装置还包括第一同步开关设置模块,用于获取第一同步开关的设置指令,第一同步开关包括第一接收开关和第一发送开关;根据设置指令中数据类型、同步动作和开关设置值,对第一同步开关进行设置,同步动作包括数据发送和数据接收。
上述数据同步装置具有实现上述图3对应实施例的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
对应于上文实施例的数据同步方法,图13示出了本申请实施例提供的数据同步装置的结构框图,该数据同步装置可以应用于第二电子设备。为了便于说明,仅示出了与本申请实施例相关的部分。
如图13所示,该数据同步装置可以包括:
第一接收模块135,用于通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,第一待同步数据是第一应用程序的数据;
第四同步模块136,用于将第一待同步数据同步至第二应用程序,第二电子设备包括第二应用程序。
在一些实施例中,该装置还可以包括:第二通道标识分配模块,用于接收第一电子设备广播的第二通道标识,每个第二通道标识对应一个第一电子设备;根据第二通道标识与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
在一些实施例中,该装置还可以包括:第二接收判断模块,用于确定是否允许接收第一待同步数据;若允许接收第一待同步数据,进入通过第二通道标识对应的连接通道接收第一电子设备发送的第一待同步数据的步骤。
在一些实施例中,该第二接收判断模块具体用于:确定第一待同步数据的第三目标数据类型;确定第三目标数据类型对应的第二接收开关是否处于开启状态;若第二接收开关处于开启状态,确定允许接收第一待同步数据;若第二接收开关处于关闭状态,确定不允许接收第一待同步数据;其中,每种数据类型对应一个接收开关。
在一些实施例中,该装置还可以包括:第五同步模块,用于获取第二应用程序的第二待同步数据;通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备,以指示第一电子设备将第二待同步数据同步至第一应用程序。
在一些实施例中,该装置还可以包括:第二发送判断模块,用于确定是否允许发送第二待同步数据;若允许发送第二待同步数据,进入通过第二通道标识对应的连接通道,将第二待同步数据传输至第一电子设备的步骤。
在一些实施例中,该第二发送判断模块具体用于:确定第二待同步数据的第四目标数据类型;确定第四目标数据类型的第二发送开关是否处于开启状态;若第二发送开关处于开启状态,确定允许发送第二待同步数据;若第二发送开关处于关闭状态,确定不允许发送第二待同步数据;其中,每种数据类型对应一个发送开关。
在一些实施例中,该装置还可以包括:第二同步开关设置模块,用于获取第二同步开关的设置指令,第二同步开关包括第二接收开关和第二发送开关;根据设置指令中数据类型、同步动作和开关设置值,对第二同步开关进行设置,同步动作包括数据发送和数据接收。
在一些实施例中,第一通道标识包括第二电子设备的标识信息和第一应用程序的标识信息;第二通道标识包括第一电子设备的标识信息和第一应用程序的标识信息。
在一些实施例中,数据类型包括消息、对象、大字节、文件和流中的至少一种。
上述数据同步装置具有实现上文对应实施例的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
需要说明的是,上述装置/模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
对应于上文实施例的数据同步方法,图14示出了本申请实施例提供的数据同步装置的结构框图,该数据同步装置可以应用于第二电子设备。为了便于说明,仅示出了与本申请实施例相关的部分。
如图14所示,该数据同步装置可以包括:
第二获取模块141,用于获取第二应用程序的第三待同步数据,第二电子设备包括第二应用程序。
第二确定模块142,用于确定第二通道标识,第二通道标识是第一电子设备为第一应用程序分配的标识,第一电子设备包括第一应用程序,每个第二通道标识对应一个第一电子设备。
第二通道确定模块143,用于确定第二通道标识对应的连接通道,连接通道是第一电子设备和第二电子设备之间已建立的连接通道,每个第二通道标识对应一个连接通道。
第六同步模块144,用于通过第二通道标识对应的连接通道,将第三待同步数据传输至第一电子设备,以指示第一电子设备将第三待同步数据同步至第一应用程序。
在一些实施例中,该装置还可以包括:接收第一电子设备广播的第二通道标识;第三通道标识分配模块,用于根据第二通道标识,与第一电子设备建立连接通道;为第二应用程序分配第一通道标识;通过根据第二通道标识建立的连接通道,将第一通道标识传输至第一电子设备。
在一些实施例中,该装置还包括:指示信息发送模块,用于发送用于指示将第三待同步数据传输至其它第二电子设备的指示信息至第一电子设备,其它第二电子设备是多个第二电子设备中除了发送第三待同步数据的第二电子设备之外的电子设备。
上述数据同步装置具有实现上述对应实施例的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
需要说明的是,上述装置/模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
对应于上文实施例的数据同步方法,图14示出了本申请实施例提供的数据同步装置的结构框图,该数据同步装置可以应用于第一电子设备。为了便于说明,仅示出了与本申请实施例相关的部分。
如图14所示,该装置可以包括:
第二接收模块145,用于通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据,第一通道标识是第二电子设备为第二应用程序分配的标识,第二电子设备包括第二应用程序,第三待同步数据是二应用程序的数据;
第七同步模块146,用于将第三待同步数据同步至第一应用程序,第一电子设备包括第一应用程序。
在一些实施例中,该装置还包括:第四通道标识分配模块,用于为第一应用程序分配第二通道标识;将第二通道标识广播至一个或多个第二电子设备,第二通道标识用于指示第二电子设备与第一电子设备建立连接通道,记录第二通道标识和连接通道的对应关系,为第二应用程序分配第一通道标识;接收一个或多个第二电子设备发送的第一通道标识;建立每个第一通道标识和对应的连接通道的对应关系。
上述数据同步装置具有实现上述对应实施例的数据同步方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
需要说明的是,上述装置/模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例还提供一种芯片系统,所述芯片系统包括处理器,所述处理器与存储器耦合,所述处理器执行存储器中存储的计算机程序,以实现如上述方法实施例中所述的方法。所述芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。此外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
最后应说明的是:以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (29)
1.一种数据同步方法,其特征在于,应用于第一电子设备,所述方法包括:
获取所述第一电子设备中的第一应用程序的第一待同步数据;
确定第一通道标识,所述第一通道标识包括所述第二电子设备的标识信息和所述第一应用程序的标识信息,所述第一通道标识是与所述第一电子设备通信连接的第二电子设备为所述第二电子设备中的第二应用程序分配的标识,其中,每个第一通道标识对应一个第二电子设备,;
确定所述第一通道标识对应的连接通道,所述连接通道是所述第一电子设备和所述第二电子设备之间已建立的连接通道,每个第一通道标识对应一个连接通道;
通过所述第一通道标识对应的连接通道,将所述第一待同步数据传输至所述第二电子设备,以指示所述第二电子设备将所述第一待同步数据同步至所述第二应用程序。
2.根据权利要求1所述的方法,其特征在于,在获取所述第一电子设备中的第一应用程序的待同步数据之前,还包括:
为所述第一应用程序分配第二通道标识;
将所述第二通道标识广播至至少一个所述第二电子设备,所述第二通道标识用于指示所述第二电子设备与所述第一电子设备建立连接通道,记录所述第二通道标识和连接通道的对应关系,为所述第二应用程序分配所述第一通道标识;
接收一个或多个所述第二电子设备发送的所述第一通道标识;
建立每个所述第一通道标识和对应的连接通道的对应关系。
3.根据权利要求2所述的方法,其特征在于,
所述第二通道标识包括所述第一电子设备的标识信息和所述第一应用程序的标识信息。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述第二电子设备通过所述第二通道标识对应的连接通道发送的所述第二应用程序的第二待同步数据;
将所述第二待同步数据同步至第一应用程序。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收所述第二电子设备通过所述第二通道标识对应的连接通道发送的指示信息,所述指示信息用于指示将所述第二待同步数据传输至其它第二电子设备,所述其它第二电子设备是多个第二电子设备中除了发送所述第二待同步数据的第二电子设备之外的电子设备;
在接收所述第二电子设备通过所述第二通道标识对应的连接通道发送的所述第二应用程序的第二待同步数据之后,还包括:
确定所述其它第二电子设备的第一通道标识;
确定所述其它第二电子设备的第一通道标识对应的连接通道;
通过所述其它第二电子设备的第一通道标识对应的连接通道,将所述第二待同步数据传输至所述其它第二电子设备,以指示所述其它第二电子设备将所述第二待同步数据同步至本设备的第二应用程序。
6.根据权利要求2所述的方法,其特征在于,在接收所述第二电子设备通过所述第二通道标识对应的连接通道发送的所述第二应用程序的第二待同步数据之前,还包括:
确定是否允许接收所述第二待同步数据;
若允许接收所述第二待同步数据,进入接收所述第二电子设备通过所述第二通道标识对应的连接通道发送的所述第二应用程序的第二待同步数据的步骤。
7.根据权利要求6所述的方法,其特征在于,确定是否允许接收所述第二待同步数据,包括:
确定所述第二待同步数据的第一目标数据类型;
确定所述第一目标数据类型对应的第一接收开关是否处于开启状态;
若所述第一接收开关处于开启状态,确定允许接收所述第二待同步数据;
若所述第一接收开关处于关闭状态,确定不允许接收所述第二待同步数据;
其中,每种数据类型对应一个接收开关。
8.根据权利要求1所述的方法,其特征在于,在确定第一通道标识之前,还包括:
确定是否允许发送所述第一待同步数据;
若允许发送所述第一待同步数据,进入确定第一通道标识的步骤。
9.根据权利要求8所述的方法,其特征在于,确定是否允许发送所述第一待同步数据,包括:
确定所述第一待同步数据的第二目标数据类型;
确定所述第二目标数据类型对应的第一发送开关是否处于开启状态;
若所述第一发送开关处于开启状态,确定允许发送所述第一待同步数据;
若所述第一发送开关处于关闭状态,确定不允许发送所述第一待同步数据;
其中,每种数据类型对应一个发送开关。
10.根据权利要求9所述的方法,其特征在于,所述数据类型包括消息、对象、大字节、文件和流中的至少一种。
11.根据权利要求1至10任一项所述的方法,其特征在于,所述方法还包括:
获取第一同步开关的设置指令,所述第一同步开关包括第一接收开关和第一发送开关;
根据所述设置指令中数据类型、同步动作和开关设置值,对所述第一同步开关进行设置,所述同步动作包括数据发送和数据接收。
12.一种数据同步方法,其特征在于,应用于第二电子设备,所述方法包括:
通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据,所述第二通道标识是所述第一电子设备为第一应用程序分配的标识,所述第一电子设备包括所述第一应用程序,所述第一待同步数据是所述第一应用程序的数据,所述第二通道标识包括第一电子设备的标识信息和所述第一应用程序的标识信息;
将所述第一待同步数据同步至第二应用程序,所述第二电子设备包括所述第二应用程序。
13.根据权利要求12所述的方法,其特征在于,在通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据之前,所述方法还包括:
接收所述第一电子设备广播的所述第二通道标识,每个所述第二通道标识对应一个所述第一电子设备;
根据所述第二通道标识与所述第一电子设备建立连接通道;
为第二应用程序分配第一通道标识;
通过根据所述第二通道标识建立的连接通道,将所述第一通道标识传输至所述第一电子设备。
14.根据权利要求12所述的方法,其特征在于,在通过第二通道标识对应的连接通道,接收第一电子设备发送的第一待同步数据之前,还包括:
确定是否允许接收所述第一待同步数据;
若允许接收所述第一待同步数据,进入通过第二通道标识对应的连接通道接收第一电子设备发送的第一待同步数据的步骤。
15.根据权利要求14所述的方法,其特征在于,确定是否允许接收所述第一待同步数据,包括:
确定所述第一待同步数据的第三目标数据类型;
确定所述第三目标数据类型对应的第二接收开关是否处于开启状态;
若所述第二接收开关处于开启状态,确定允许接收所述第一待同步数据;
若所述第二接收开关处于关闭状态,确定不允许接收所述第一待同步数据;
其中,每种数据类型对应一个接收开关。
16.根据权利要求12所述的方法,其特征在于,所述方法还包括:
获取所述第二应用程序的第二待同步数据;
通过所述第二通道标识对应的连接通道,将所述第二待同步数据传输至第一电子设备,以指示所述第一电子设备将所述第二待同步数据同步至所述第一应用程序。
17.根据权利要求16所述的方法,其特征在于,在通过所述第二通道标识对应的连接通道,将所述第二待同步数据传输至第一电子设备之前,所述方法还包括:
确定是否允许发送所述第二待同步数据;
若允许发送所述第二待同步数据,进入通过所述第二通道标识对应的连接通道,将所述第二待同步数据传输至第一电子设备的步骤。
18.根据权利要求17所述的方法,其特征在于,确定是否允许发送所述第二待同步数据,包括:
确定所述第二待同步数据的第四目标数据类型;
确定所述第四目标数据类型的第二发送开关是否处于开启状态;
若所述第二发送开关处于开启状态,确定允许发送所述第二待同步数据;
若所述第二发送开关处于关闭状态,确定不允许发送所述第二待同步数据;
其中,每种数据类型对应一个发送开关。
19.根据权利要求12至18任一项所述的方法,其特征在于,所述方法还包括:
获取第二同步开关的设置指令,所述第二同步开关包括第二接收开关和第二发送开关;
根据所述设置指令中数据类型、同步动作和开关设置值,对所述第二同步开关进行设置,所述同步动作包括数据发送和数据接收。
20.根据权利要求13所述的方法,其特征在于,所述第一通道标识包括所述第二电子设备的标识信息和所述第一应用程序的标识信息;
所述第二通道标识包括所述第一电子设备的标识信息和所述第一应用程序的标识信息。
21.根据权利要求19所述的方法,其特征在于,所述数据类型包括消息、对象、大字节、文件和流中的至少一种。
22.一种数据同步方法,其特征在于,应用于第二电子设备,所述方法包括:
获取所述第二电子设备中的第二应用程序的第三待同步数据;
确定第二通道标识,所述第二通道标识是与所述第二电子设备通信连接的第一电子设备为第一应用程序分配的标识,所述第一电子设备包括所述第一应用程序,每个第二通道标识对应一个第一电子设备;
确定所述第二通道标识对应的连接通道,所述连接通道是所述第一电子设备和所述第二电子设备之间已建立的连接通道,每个第二通道标识对应一个连接通道;
通过所述第二通道标识对应的连接通道,将所述第三待同步数据传输至所述第一电子设备,以指示所述第一电子设备将所述第三待同步数据同步至所述第一应用程序。
23.根据权利要求22所述的方法,其特征在于,在获取所述第二电子设备中的第二应用程序的第三待同步数据之前,还包括:
接收所述第一电子设备广播的所述第二通道标识;
根据所述第二通道标识,与所述第一电子设备建立连接通道;
为所述第二应用程序分配第一通道标识;
通过根据所述第二通道标识建立的连接通道,将所述第一通道标识传输至所述第一电子设备。
24.根据权利要求22所述的方法,其特征在于,所述方法还包括:
发送用于指示将所述第三待同步数据传输至其它第二电子设备的指示信息至所述第一电子设备,所述其它第二电子设备是多个第二电子设备中除了发送所述第三待同步数据的第二电子设备之外的电子设备。
25.一种数据同步方法,其特征在于,应用于第一电子设备,所述方法包括:
通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据,所述第一通道标识是所述第二电子设备为第二应用程序分配的标识,所述第二电子设备包括所述第二应用程序,所述第三待同步数据是所述二应用程序的数据;
将所述第三待同步数据同步至第一应用程序,所述第一电子设备包括所述第一应用程序。
26.根据权利要求25所述的同步方法,其特征在于,在通过第一通道标识对应的连接通道,接收第二电子设备发送的第三待同步数据之前,所述方法还包括:
为所述第一应用程序分配第二通道标识;
将所述第二通道标识广播至一个或多个所述第二电子设备,所述第二通道标识用于指示所述第二电子设备与所述第一电子设备建立连接通道,记录所述第二通道标识和连接通道的对应关系,为所述第二应用程序分配所述第一通道标识;
接收一个或多个所述第二电子设备发送的所述第一通道标识;
建立每个所述第一通道标识和对应的连接通道的对应关系。
27.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至11或者12至21或者22至24或者25至26任一项所述的方法。
28.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11或者12至21或者22至24或者25至26任一项所述的方法。
29.一种计算机程序产品,其特征在于,包括计算机可读指令,当所述计算机可读指令被电子设备执行时使得所述电子设备实现如权利要求1至11或者12至21或者22至24或者25至26任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211596683.2A CN116361255A (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211596683.2A CN116361255A (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
CN202010575004.8A CN113923230B (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010575004.8A Division CN113923230B (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116361255A true CN116361255A (zh) | 2023-06-30 |
Family
ID=79231218
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010575004.8A Active CN113923230B (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
CN202211596683.2A Pending CN116361255A (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010575004.8A Active CN113923230B (zh) | 2020-06-22 | 2020-06-22 | 数据同步方法、电子设备和计算机可读存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230247093A1 (zh) |
EP (1) | EP4156625A4 (zh) |
CN (2) | CN113923230B (zh) |
WO (1) | WO2021258809A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114095558B (zh) * | 2022-01-24 | 2022-04-22 | 深圳市朗琴音响技术有限公司 | 智能音箱的通信切换方法及装置 |
CN114466028B (zh) * | 2022-02-16 | 2024-05-17 | 京东科技信息技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
CN114615521B (zh) * | 2022-03-10 | 2024-02-23 | 网易(杭州)网络有限公司 | 视频处理方法和装置、计算机可读存储介质、电子设备 |
CN115277580B (zh) * | 2022-07-25 | 2024-02-13 | Oppo广东移动通信有限公司 | 数据传输方法、装置、电子设备、业务系统及存储介质 |
CN117675495A (zh) * | 2022-08-22 | 2024-03-08 | 荣耀终端有限公司 | 一种数据同步方法、电子设备及介质 |
CN117956062A (zh) * | 2022-10-31 | 2024-04-30 | Oppo广东移动通信有限公司 | 服务流转方法、装置及存储介质 |
CN116701526B (zh) * | 2022-12-05 | 2024-06-21 | 荣耀终端有限公司 | 数据同步的方法及电子设备 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2841669B1 (fr) * | 2002-06-27 | 2006-01-06 | St Microelectronics Sa | Procede de transmission de paquets de donnees entre deux unites esclaves et une unite maitre comprenant deux processeurs |
CN101753178A (zh) * | 2008-12-16 | 2010-06-23 | 北京三星通信技术研究有限公司 | 蓝牙通信设备 |
US10098154B2 (en) * | 2010-07-08 | 2018-10-09 | Qualcomm Incorporated | Method and apparatus for detection and resolution of resource collision in a peer-to-peer network |
CN104092715B (zh) * | 2013-11-28 | 2016-10-19 | 腾讯科技(深圳)有限公司 | 一种同步应用程序的方法、服务器及系统 |
US9251109B2 (en) * | 2013-12-20 | 2016-02-02 | EXILANT Technologies Private Limited | Communication with accessories |
CN103716390A (zh) * | 2013-12-25 | 2014-04-09 | 广西大学 | 一种数据分享方法及终端 |
US10554745B2 (en) * | 2014-01-14 | 2020-02-04 | Lg Electronics Inc. | Method and apparatus for managing connection between broadcasting reception device and another device which are connected through network |
CN105468640B (zh) * | 2014-09-09 | 2019-04-23 | 联想(北京)有限公司 | 一种信息处理方法及装置 |
US9936044B2 (en) * | 2014-12-18 | 2018-04-03 | Excalibur Ip, Llc | Inferring user identity across multiple applications and user devices |
CN105808042B (zh) * | 2014-12-30 | 2019-04-23 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN104794008B (zh) * | 2015-04-28 | 2021-06-15 | 北京数字天域科技有限责任公司 | 一种应用程序同步的方法、装置和系统 |
CN105100249B (zh) * | 2015-07-30 | 2019-08-06 | 北京奇虎科技有限公司 | 图片传输控制系统及其所涉各端的安全保护、传输方法 |
CN105933393A (zh) * | 2016-04-12 | 2016-09-07 | 乐视控股(北京)有限公司 | 一种局域网内数据同步方法及其装置、用户终端 |
CN106487911A (zh) * | 2016-10-25 | 2017-03-08 | 广东欧珀移动通信有限公司 | 一种数据同步方法、装置和系统 |
CN107580374B (zh) * | 2017-08-14 | 2019-11-19 | 拉卡拉支付股份有限公司 | 一种蓝牙通信资源的调度方法、设备及存储介质 |
-
2020
- 2020-06-22 CN CN202010575004.8A patent/CN113923230B/zh active Active
- 2020-06-22 CN CN202211596683.2A patent/CN116361255A/zh active Pending
-
2021
- 2021-04-06 EP EP21828916.3A patent/EP4156625A4/en active Pending
- 2021-04-06 WO PCT/CN2021/085557 patent/WO2021258809A1/zh unknown
- 2021-04-06 US US18/002,743 patent/US20230247093A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN113923230B (zh) | 2022-12-13 |
EP4156625A4 (en) | 2023-10-18 |
CN113923230A (zh) | 2022-01-11 |
EP4156625A1 (en) | 2023-03-29 |
WO2021258809A1 (zh) | 2021-12-30 |
US20230247093A1 (en) | 2023-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113923230B (zh) | 数据同步方法、电子设备和计算机可读存储介质 | |
CN113542839B (zh) | 电子设备的投屏方法和电子设备 | |
EP4084486B1 (en) | Cross-device content projection method, and electronic device | |
CN111405681B (zh) | Wi-Fi Aware的建链方法、系统、电子设备和存储介质 | |
CN111628916B (zh) | 一种智能音箱与电子设备协作的方法及电子设备 | |
CN115599566A (zh) | 通知消息处理方法、设备、系统及计算机可读存储介质 | |
CN114079893B (zh) | 蓝牙通信方法、终端设备及计算机可读存储介质 | |
WO2021052204A1 (zh) | 基于通讯录的设备发现方法、音视频通信方法及电子设备 | |
CN113973398B (zh) | 无线网络连接方法、电子设备及芯片系统 | |
WO2021031865A1 (zh) | 通话方法及装置 | |
CN116233300A (zh) | 控制通信服务状态的方法、终端设备和可读存储介质 | |
CN113472477B (zh) | 无线通信系统及方法 | |
CN113126948B (zh) | 一种音频播放方法及相关设备 | |
WO2022170854A1 (zh) | 视频通话的方法与相关设备 | |
CN115460445B (zh) | 电子设备的投屏方法和电子设备 | |
CN114125805B (zh) | 蓝牙回连方法及终端设备 | |
CN111801931B (zh) | 通话发生srvcc切换时,接通和挂断电话的方法 | |
WO2023025059A1 (zh) | 一种通信系统及通信方法 | |
WO2024093795A1 (zh) | 一种设备替换的配置方法及装置 | |
CN117295040A (zh) | 一种消息发送方法、电子设备及通信系统 | |
CN117255400A (zh) | 应用组件交互方法及相关设备 | |
CN116560535A (zh) | 应用组件管理方法及相关设备 | |
CN117177228A (zh) | 一种设备注册方法、系统和设备 | |
CN117991954A (zh) | 设备输入方法、系统、电子设备及存储介质 | |
CN115703006A (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 |