CN108197273A - 一种多用户数据同步的方法及装置 - Google Patents
一种多用户数据同步的方法及装置 Download PDFInfo
- Publication number
- CN108197273A CN108197273A CN201810014743.2A CN201810014743A CN108197273A CN 108197273 A CN108197273 A CN 108197273A CN 201810014743 A CN201810014743 A CN 201810014743A CN 108197273 A CN108197273 A CN 108197273A
- Authority
- CN
- China
- Prior art keywords
- data
- user
- updated
- space
- database
- 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.)
- Granted
Links
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种多用户数据同步的方法及装置,该方法包括通过第一用户空间的目标应用获取待更新数据和待更新数据的操作标识,在确定多用户空间开启时获取第二用户空间的UserID,将待更新数据和操作标识打包为第一信息,并将第一信息记录到第一数据库中,根据待更新数据和操作标识,更新第一用户空间的第二数据库。第二用户空间的目标应用在确定当前用户的UserID为第二用户空间的UserID时,监听、读取并解包第一数据库中变化的第一信息,根据解包得到的待更新的数据以及操作标识更新第二用户空间的第二数据库,可以解决多用户框架多开方案中各个用户空间数据不同步的问题。
Description
技术领域
本发明涉及终端技术领域,具体的涉及一种多用户数据同步的方法及装置。
背景技术
随着Android(安卓)的发展,一些社交类软件迅速普及,用户广泛。实际生活中,人们经常拥有两个甚至两个以上的微信、QQ等应用账号,而微信、QQ等应用程序本身是不支持多开的。因此各个第三方机构以及手机终端厂商各自开发了自己的支持微信、QQ等应用的多开的框架技术。其中一种优势比较大的方案是基于Android自带的多用户框架实现的应用多开方案。此方案的优点在于完美兼容性好,而且本身应用空间的数据都是隔离的,数据安全性高。
在此方案框架基础上,由于主用户空间的应用和分身用户空间的分身应用使用了不同的数据库文件,这样就导致两份数据库各自维护,数据无法统一。例如,使用相机拍照生成图像文件A.jpg,文件生成后,相机通过调用MediaProvider(媒体提供者)本体提供的数据库插入接口,将A.jpg插入到MediaProvider对应的mp.db中。而后,在图库主体中,图库查询mp.db数据库,即可看到A.jpg的信息。然而在分身用户空间内,图库分身开启后图库开启分身后,图库分身中,查询的数据库为MediaProvider分身对应的数据库mp2.db,该数据库并没有发生任何变化,此时图库分身中无法看到A.jpg这个图片。这样就造成了主用户下新增文件后,主用户的MediaProvider数据更新,但是分身用户空间的MediaProvider并不知晓发生的变化,因此当应用分身使用MediaProvider获取文件信息时,根本无法得知该文件的情况,存在数据不能同步到的问题。
发明内容
本发明实施例提供一种多用户数据同步的方法及装置,用以解决多用户框架多开方案中各个用户空间数据不同步的问题。
本发明实施例提供一种多用户数据同步的方法,包括:
第一用户空间的目标应用获取待更新数据以及所述待更新数据的操作标识;
所述第一用户空间的目标应用在确定多用户空间开启时获取第二用户空间的用户身份标识(User Identifier,UserID);所述多用户空间至少包括第一用户空间和第二用户空间;
所述第一用户空间的目标应用将所述待更新数据和所述待更新数据的操作标识打包,得到第一信息,并将所述第一信息记录到第一数据库中,以使所述第二用户空间的目标应用根据所述第一信息更新所述第二用户空间的第二数据库;
所述第一用户空间的目标应用根据所述待更新数据以及所述待更新数据的操作标识,更新所述第一用户空间中的第二数据库。
可选的,所述第一用户空间的目标应用在确定未开启多用户空间时,根据所述待更新数据以及待更新数据的操作标识直接更新所述第一用户空间中的第二数据库。
可选的,所述第一用户空间的目标应用将所述待更新数据和待更新数据的操作标识打包,包括:
所述第一用户空间的目标应用获取所述待更新数据的名称以及所述待更新数据所在路径;
所述第一用户空间的目标应用将所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识按照预设格式打包。
相应的,本发明实施例还提供了一种多用户数据同步的方法,包括:
第二用户空间的目标应用在确定当前用户的用户身份标识UserID为所述第二用户空间的UserID时,监听第一数据库的信息变化并读取所述第一数据库中发生变化的第一信息;所述第一信息为第一用户空间对待更新数据以及所述待更新数据的操作标识进行打包后记录到所述第一数据库中的;
所述第二用户空间的目标应用对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识;
所述第二用户空间的目标应用根据所述待更新的数据以及待更新数据的操作标识更新所述第二用户空间的第二数据库。
可选的,所述第二用户空间的目标应用对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识,包括:
所述第二用户空间的目标应用按照预设格式对所述第一信息进行解包,得到所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识;
所述第二用户空间的目标应用根据所述待更新数据的名称以及所述待更新数据所在路径,得到所述待更新数据。
相应的,本发明实施例还提供了一种多用户数据同步的装置,包括:
获取模块,用于获取待更新数据以及所述待更新数据的操作标识;以及在确定多用户空间开启时获取第二用户空间的用户身份标识UserID;所述多用户空间至少包括第一用户空间和第二用户空间;
打包模块,用于将所述待更新数据和所述待更新数据的操作标识打包,得到第一信息,并将所述第一信息记录到第一数据库中,以使所述第二用户空间的目标应用根据所述第一信息更新所述第二用户空间的第二数据库;
更新模块,用于根据所述待更新数据以及所述待更新数据的操作标识,更新所述第一用户空间中的第二数据库。
可选的,所述获取模块还用于:
在确定未开启多用户空间时,根据所述待更新数据以及待更新数据的操作标识直接更新所述第一用户空间中的第二数据库。
可选的,所述打包模块还用于:
获取所述待更新数据的名称以及所述待更新数据所在路径;
将所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识按照预设格式打包。
相应的,本发明实施例还提供了一种多用户数据同步的装置,包括:
监听模块,用于在确定当前用户的用户身份标识UserID为第二用户空间的UserID时,监听第一数据库的信息变化并读取所述第一数据库中发生变化的第一信息;所述第一信息为第一用户空间对待更新数据以及所述待更新数据的操作标识进行打包后记录到所述第一数据库中的;
解包模块,用于对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识;
更新模块,用于根据所述待更新的数据以及待更新数据的操作标识更新所述第二用户空间的第二数据库。
可选的,所述解包模块还用于:
按照预设格式对所述第一信息进行解包,得到所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识;
根据所述待更新数据的名称以及所述待更新数据所在路径,得到所述待更新数据。
本发明实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述多用户数据同步的方法。
本发明实施例还提供了一种计算机存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述多用户数据同步的方法。
本发明实施例表明,通过第一用户空间的目标应用获取待更新数据和待更新数据的操作标识,在确定多用户空间开启时获取第二用户空间的UserID,将待更新数据和操作标识打包,得到第一信息,并根据第二用户空间的UserID,将第一信息记录到第二用户空间的第一数据库中,根据待更新数据和操作标识,更新第一用户空间中的第二数据库,第二用户空间的目标应用在确定当前用户的UserID为第二用户空间的UserID时,监听、读取并解包第二用户空间的第一数据库中变化的第一信息,根据得到的待更新的数据以及操作标识更新第二用户空间的第二数据库,可以解决多用户框架多开方案中各个用户空间数据不同步的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种多用户数据更新状态的示意图;
图2为本发明实施例提供的一种多用户数据同步方法的流程示意图;
图3为本发明实施例提供的另一种多用户数据同步方法的流程示意图;
图4为本发明实施例提供的一种多用户数据同步状态示意图;
图5为本发明实施例提供的一种多用户数据同步装置的示意图;
图6为本发明实施例提供的另一种多用户数据同步装置的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例是终端设备中多用户框架下的多开应用方案的数据同步方法。多用户框架下,默认有一个主用户及主用户的用户空间,主用户可以创建新增用户,这些新增用户就是分身用户。主用户的用户空间和分身用户的用户空间是相互隔离的,主用户无法访问分身用户的用户空间,同样,分身用户的用户空间也无法访问主用户的用户空间。主用户的用户空间中的应用程序称为本体应用,可以将主用户的用户空间的部分应用安装到分身用户的用户空间,这些在分身用户的用户空间中的运行的应用称为分身应用。在主用户的用户空间运行本体应用,在分身用户的用户空间运行分身应用,这样就实现了同一个终端设备同时运行多个相同的应用,实现应用多开功能。基于多用户框架机制,每个用户都有各自独立的用户空间,分身应用的数据也存储于分身空间中,分身应用在不同的用户空间有不同的数据库。由于每个用户空间是独立且隔离的,所以各个用户空间的数据变化只会对各用户空间内部的数据库更新,而不会通知其他用户空间的数据库。如图1所示,第一用户空间的数据发生变化时,第一用户空间的目标应用会在第二数据库会进行更新,第一用户空间的目标应用后续查询第二数据库时可以查询到新变化的数据。然而,第一用户空间的数据变化不同通知第二用户空间,第二用户空间的第二数据库也不会更新。因此,在第二用户空间的目标应用访问第二用户空间的第二数据库时,查询不到任何更新数据。
在本发明实施例中,终端设备可以指向用户提供语音和/或数据连通性的设备(device),包括无线终端或有线终端。无线终端可以是具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备,经无线接入网与一个或多个核心网进行通信的移动终端。例如,无线终端可以是移动电话(或称为“蜂窝”电话)和具有移动终端的计算机。又如,无线终端也可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。再如,无线终端可以为移动站(英文为:mobile station)、接入点(英文为:access point)、或用户设备(英文为:user equipment,简称UE)的一部分。
为了解决上述问题,图2示例性的示出了本发明实施例提供的一种多用户数据同步方法的流程,该流程可以由通过一种多用户的数据同步的装置执行,该装置可以是终端设备,也可以位于终端设备内。
如图2所示,具体流程如下,
步骤S201,第一用户空间的目标应用获取待更新数据以及待更新数据的操作标识。
在本发明实施例中,该第一用户空间可以是主用户空间也可以是分身用户空间,例如,该第一用户空间为主用户空间时,第二用户空间为分身用户空间,第一用户空间为分身用户空间时,第二用户空间为主用户空间。待更新数据可以是任意终端可以识别并使用的数据,如文本信息、照片、视频等,待更新数据包含待更新数据的名称和待更新数据所在的路径。待更新数据的操作标识可以是增加、删除、修改、查找等操作所对应的标识。
举例来说,位于第一用户空间的相机拍照生成照片A.JPG保存在了第一用户空间,那么我们需要对第一用户空间的应用MediaProvider的数据库mp.db进行插入操作,记录新增加的照片信息。所以,该第一用户空间的目标应用为MediaProvider,该待更新数据就是A.JPG,该待更新数据的操作标识就是插入操作对应的标识,即“insert”。
需要说明的是,为了便于描述,下面将以MediaProvider为目标应用的例子来描述本发明实施例提供的多用户数据同步的流程。
步骤S202,第一用户空间的目标应用在确定多用户空间开启时获取第二用户空间的UserID;
具体的,多用户空间可以至少包括第一用户空间和第二用户空间。如果多用户空间未开启,第一用户空间的MediaProvider可以根据待更新的数据和该待更新数据的操作标识直接对第一用户空间的第二数据库进行更新。该第二数据库为MediaProvider对应的数据库。例如,目标应用MediaProvider对应的数据库mp.db就是第二数据库。在本发明实施例中第二数据库为各用户空间中应用对应的数据库,也就是说,每个应用在每个用户空间中都有自己对应的数据库。
举例来说,第一用户空间的目标应用MediaProvider读取应用多开的标记位,当标记位表示为多用户开启时,第一用户空间的目标应用MediaProvider读取第二用户空间的UserID。当标记位表示多用户未开启时,第一用户空间的目标应用MediaProvider直接对第一用户空间的第二数据库进行更新。比如,用“0”表示多用户未开启,“1”表示多用户开启,第二用户空间的UserID为“881”。当读取标记位是“0”时,这表示当前状态并没有开启多用户,此时,可以直接根据待更新图片A.JPG以及操作标识“insert”将图片信息更新到MediaProvider的数据库mp.db中,也就是在mp.db中插入照片A.JPG的信息。这里插入的信息也包含照片A.JPG的完整的路径,如“/sdcard/DCIM/Camera/A.jpg”。
步骤S203,第一用户空间的目标应用将待更新数据和待更新数据的操作标识打包,得到第一信息,并将第一信息记录到第一数据库中。
在本发明实施例中,第一数据库可以为终端中位于系统底层的数据库,为全局数据库,多用户框架下,任何用户空间都可以对该第一数据库进行读写操作,并可以监控该全局数据库的数据变化信息。可选的,该第一数据库也可以是位于各用户空间中的数据库,与第二数据库有区别,每个用户空间只有一个第一数据库,但是可以有多个第二数据库。这种情况下,每个用户空间都可以访问其它用户空间的第一数据库,在访问时,只要有其它用户空间的UserID,就可以根据该其它用户空间的UserID访问其它用户空间的第一数据库。
可选的,在对待更新数据和待更新数据的操作标识进行打包时,具体可以为第一用户空间的目标应用MediaProvider根据该待更新数据来获取待更新数据的名称以及待更新数据所在路径,然后将待更新数据的名称、待更新数据所在路径和待更新数据的操作标识按照预设格式打包。预设格式可以依据经验进行设置,可以是通过间隔字符等用于间隔语句的字符或其它数据来间隔语句的格式。
将待更新的数据和操作标识按照预设格式打包处理就是将待更新数据的路径、名称、操作标识合并组成第一信息。第一信息内包含规定的间隔字符用以区分操作标识以及路径和名称。举例来说,待更新数据名称为“A.JPG”,操作标识为“insert”,所在路径为“/sdcard/DCIM/Camera/”。那么打包规则是“路径\名称;操作标识”,第一信息则为“/sdcard/DCIM/Camera/A.jpg;insert”。此处“;”为间隔字符,间隔字符也可以是任意其他的字符,例如“&”、“%”、“#”、“-”等,当然也可以是这些字符的组合。操作标识也可以是删除、查找、修改等对应的标识,对应的第一信息分别为/sdcard/DCIM/Camera/A.jpg;delete”、/sdcard/DCIM/Camera/A.jpg;search”、/sdcard/DCIM/Camera/A.jpg;modify”。通过将第一信息记录到第一数据库中,可以使得第二用户空间的目标应用可以根据该第一信息更新该第二用户空间的第二数据库。
第一用户空间的目标应用目标可以调用系统接口将第一信息记录到第一数据库中。举例来说,第一用户空间的MediaProvider可以通过调用系统接口Settings.putStringForUser(用户添加字符串设置类)将第一信息记录到mediasettings数据库。mediasettings数据就即为第一数据库。那么可以使用下面语句对mediasettings数据库进行更新:
Settings.putStringForUser(
“mediasettings”,
“/sdcard/DCIM/Camera/A.jpg;insert”,
)。
又例如,各个用户空间都有一个第一数据库时,第一用户空间的MediaProvider可以通过调用系统接口Settings.putStringForUser将第一信息记录到第二用户空间的mediasettings数据库。如果第二用户空间的UserID为“881”,那么可以使用下面语句对mediasettings数据库进行更新:
Settings.putStringForUser(
“mediasettings”,
“/sdcard/DCIM/Camera/A.jpg;insert”,
“881”
)。
同样,对于其他用户空间,如第三用户空间UserID为“882”,也可以通过以上方法对位于第三用户空间的mediasettings数据库进行更新。这样第一用户空间的应用MediaProvider通过调用Settings.putStringForUser接口实现了对第一用户空间以外的如第二、第三用户空间的第一数据库mediasettings数据库进行操作,此步骤完成后,第二、第三用户空间的MediaProvider可以收到mediasettings的事件变化消息。
步骤S204,第一用户空间的目标应用根据所述待更新数据以及所述待更新数据的操作标识,更新所述第一用户空间中的第二数据库。
在本实施例中,第一用户空间的目标应用MediaProvider将照片A.JPG插入到位于第一用户空间的mp.db数据库中。
通过以上步骤,将第一用户空间中变化的数据更新到了第二数据库上,也更新到了第一数据库上,其他用户空间的目标应用通过监听第一数据库中的信息变化完成所在用户空间的第二数据库的更新。下面就本发明的另一个实施例进行详细说明。如图3所示的一种多用户数据同步方法的流程,该流程具体包括:
步骤S301,第二用户空间的目标应用在确定当前用户的UserID为所述第二用户空间的UserID时,监听第一数据库的信息变化并读取所述第一数据库中发生变化的第一信息。
通过上述实施例可知,该第一信息为第一用户空间对待更新数据以及待更新数据的操作标识进行打包后记录到所述第一数据库中的。
多用户开启后,当前的用户可能是第一用户也可能是第二用户、第三用户,应用MediaProvider读取当前用户的UserID。若当前用户的UserID与第二用户空间的UserID相同,则说明当前用户为第二用户,开始注册mediasettings数据库的监听。当监听到mediasettings数据库变化时,读取数据库发生变化的第一信息。该第一信息即为上述实施例S203中第一用户空间的目标应用将待更新的数据和操作标识按照预设格式打包后的信息。
举例来说,第一数据库为全局数据库时,可以直接监听mediasettings数据库。第一数据库为各个用户空间内的数据库事,例如,第二用户空间的UserID为“881”,目标应用MediaProvider读取当前用户的UserID,在确定当前用户的UserID为“881”时启动对第二用户空间的mediasettings数据库的监听。由于完成步骤S203之后,位于第二用户空间的MediaProvider可以监听mediasettings数据库发生的变化,并读取发生变化的第一信息“/sdcard/DCIM/Camera/A.jpg;insert”。
步骤S302,所述第二用户空间的目标应用对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识。
具体的,第二用户空间的目标应用按照预设格式对该第一信息进行解包,得到待更新数据的名称、待更新数据所在路径和待更新数据的操作标识,然后根据待更新数据的名称以及待更新数据所在路径,得到待更新数据。
举例来说,第一信息为“/sdcard/DCIM/Camera/A.jpg;insert”,应用MediaProvider按照打包时的预设格式对第一信息进行解包,也就是截取第一信息中位于“;”之后的信息作为操作标识,本实施例中操作标识为“insert”。第一信息中位于“;”之前的为待更新数据,包含待更新数据所在路径/sdcard/DCIM/Camera/以及待更新数据的名称A.JPG。
步骤S303,所述第二用户空间的目标应用根据所述待更新的数据以及待更新数据的操作标识更新所述第二用户空间的第二数据库。
根据解包后得到的待更新数据以及待更新数据的操作标识对第二用户空间的第二数据库进行更新。在本实施例中,第二用户空间的目标应用MediaProvider根据解包后得到的待更新数据“/sdcard/DCIM/Camera/A.jpg”和操作标识“insert”对第二用户空间的目标应用MediaProvider的数据库mp2.db执行对应的操作,也就是在mp2.db中插入一张新的图片信息。如图4所示,第一用户空间的目标应用将待更新数据更新到第二空间的第一数据库和第一空间的第二数据库,第二空间的目标应用监听第一数据库变化并将变化信息更新到第二空间的第二数据库。第一数据库作为第一用户空间和第二用户空间沟通的中介,将两个用户空间的数据库联系起来。这样位于第一用户空间的MediaProvider的数据库mp.db与位于第二用户空间的MediaProvider的数据库mp2.db完全一致,实现了数据库的同步。
上述实施例表明,通过第一用户空间的目标应用获取待更新数据和待更新数据的操作标识,在确定多用户空间开启时获取第二用户空间的UserID,将待更新数据和操作标识打包,得到第一信息,并将第一信息记录到第一数据库中,根据待更新数据和操作标识,更新第一用户空间中的第二数据库,第二用户空间的目标应用在确定当前用户的UserID为第二用户空间的UserID时,监听、读取并解包第一数据库中变化的第一信息,根据解包得到的待更新的数据以及操作标识更新第二用户空间的第二数据库,可以解决多用户框架多开方案中各个用户空间数据不同步的问题。
基于相同的技术构思,图5示例性的示出了本发明实施例提供的一种多用户数据同步的装置,该装置可以执行多用户数据同步的方法,该装置可以为终端设备,也可以位于终端设备内。该装置的实施可以参见方法的实施,重复之处不在赘述。
如图5所示,该装置具体包括:
获取模块501,用于获取待更新数据以及所述待更新数据的操作标识;以及在确定多用户空间开启时获取第二用户空间的UserID;所述多用户空间至少包括第一用户空间和第二用户空间;
打包模块502,用于将所述待更新数据和所述待更新数据的操作标识打包,得到第一信息,并将所述第一信息记录到第一数据库中,以使所述第二用户空间的目标应用根据所述第一信息更新所述第二用户空间的第二数据库;
更新模块503,用于根据所述待更新数据以及所述待更新数据的操作标识,更新所述第一用户空间中的第二数据库。
可选的,所述获取模块501还用于:
在确定未开启多用户空间时,根据所述待更新数据以及待更新数据的操作标识直接更新所述第一用户空间中的第二数据库。
可选的,所述打包模块502还用于:
获取所述待更新数据的名称以及所述待更新数据所在路径;
将所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识按照预设格式打包。
基于相同的技术构思,图6示例性的示出了本发明实施例提供的另一种多用户数据同步的装置,该装置可以执行多用户数据同步的方法,该装置可以为终端设备,也可以位于终端设备内。
图6示例性的示出了本发明实例中另一种多用户数据同步的装置,该装置包括:
监听模块601,用于在确定当前用户的UserID为第二用户空间的UserID时,监听第一数据库的信息变化并读取所述第一数据库中发生变化的第一信息;所述第一信息为第一用户空间对待更新数据以及所述待更新数据的操作标识进行打包后记录到所述第一数据库中的;
解包模块602,用于对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识;
更新模块603,用于根据所述待更新的数据以及待更新数据的操作标识更新所述第二用户空间的第二数据库。
可选的,所述解包模块602还用于:
按照预设格式对所述第一信息进行解包,得到所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识;
根据所述待更新数据的名称以及所述待更新数据所在路径,得到所述待更新数据。
本发明实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述多用户数据同步的方法。
本发明实施例还提供了一种计算机存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述多用户数据同步的方法。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种多用户数据同步的方法,其特征在于,包括:
第一用户空间的目标应用获取待更新数据以及所述待更新数据的操作标识;
所述第一用户空间的目标应用在确定多用户空间开启时获取第二用户空间的用户身份标识UserID;所述多用户空间至少包括第一用户空间和第二用户空间;
所述第一用户空间的目标应用将所述待更新数据和所述待更新数据的操作标识打包,得到第一信息,并将所述第一信息记录到第一数据库中,以使所述第二用户空间的目标应用根据所述第一信息更新所述第二用户空间的第二数据库;
所述第一用户空间的目标应用根据所述待更新数据以及所述待更新数据的操作标识,更新所述第一用户空间中的第二数据库。
2.如权利要求1所述的方法,其特征在于,所述第一用户空间的目标应用在确定未开启多用户空间时,根据所述待更新数据以及待更新数据的操作标识直接更新所述第一用户空间中的第二数据库。
3.如权利要求1所述的方法,其特征在于,所述第一用户空间的目标应用将所述待更新数据和待更新数据的操作标识打包,包括:
所述第一用户空间的目标应用获取所述待更新数据的名称以及所述待更新数据所在路径;
所述第一用户空间的目标应用将所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识按照预设格式打包。
4.一种多用户数据同步的方法,其特征在于,包括:
第二用户空间的目标应用在确定当前用户的用户身份标识UserID为所述第二用户空间的UserID时,监听第一数据库的信息变化并读取所述第一数据库中发生变化的第一信息;所述第一信息为第一用户空间对待更新数据以及所述待更新数据的操作标识进行打包后记录到所述第一数据库中的;
所述第二用户空间的目标应用对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识;
所述第二用户空间的目标应用根据所述待更新的数据以及待更新数据的操作标识更新所述第二用户空间的第二数据库。
5.如权利要求4所述的方法,其特征在于,所述第二用户空间的目标应用对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识,包括:
所述第二用户空间的目标应用按照预设格式对所述第一信息进行解包,得到所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识;
所述第二用户空间的目标应用根据所述待更新数据的名称以及所述待更新数据所在路径,得到所述待更新数据。
6.一种多用户数据同步的装置,其特征在于,包括:
获取模块,用于获取待更新数据以及所述待更新数据的操作标识;以及在确定多用户空间开启时获取第二用户空间的用户身份标识UserID;所述多用户空间至少包括第一用户空间和第二用户空间;
打包模块,用于将所述待更新数据和所述待更新数据的操作标识打包,得到第一信息,并将所述第一信息记录到第一数据库中,以使所述第二用户空间的目标应用根据所述第一信息更新所述第二用户空间的第二数据库;
更新模块,用于根据所述待更新数据以及所述待更新数据的操作标识,更新所述第一用户空间中的第二数据库。
7.如权利要求6所述的装置,其特征在于,所述获取模块还用于:
在确定未开启多用户空间时,根据所述待更新数据以及待更新数据的操作标识直接更新所述第一用户空间中的第二数据库。
8.如权利要求6所述的装置,其特征在于,所述打包模块还用于:
获取所述待更新数据的名称以及所述待更新数据所在路径;
将所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识按照预设格式打包。
9.一种多用户数据同步的装置,其特征在于,包括:
监听模块,用于在确定当前用户的用户身份标识UserID为第二用户空间的UserID时,监听第一数据库的信息变化并读取所述第一数据库中发生变化的第一信息;所述第一信息为第一用户空间对待更新数据以及所述待更新数据的操作标识进行打包后记录到所述第一数据库中的;
解包模块,用于对所述第一信息进行解包,得到待更新的数据以及待更新数据的操作标识;
更新模块,用于根据所述待更新的数据以及待更新数据的操作标识更新所述第二用户空间的第二数据库。
10.如权利要求9所述的装置,其特征在于,所述解包模块还用于:
按照预设格式对所述第一信息进行解包,得到所述待更新数据的名称、所述待更新数据所在路径和所述待更新数据的操作标识;
根据所述待更新数据的名称以及所述待更新数据所在路径,得到所述待更新数据。
11.一种计算设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至5任一项所述的方法。
12.一种计算机存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810014743.2A CN108197273B (zh) | 2018-01-08 | 2018-01-08 | 一种多用户数据同步的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810014743.2A CN108197273B (zh) | 2018-01-08 | 2018-01-08 | 一种多用户数据同步的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108197273A true CN108197273A (zh) | 2018-06-22 |
CN108197273B CN108197273B (zh) | 2022-04-22 |
Family
ID=62588139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810014743.2A Active CN108197273B (zh) | 2018-01-08 | 2018-01-08 | 一种多用户数据同步的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108197273B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194589A (zh) * | 2018-08-31 | 2019-01-11 | 新华三技术有限公司 | 一种mdc实现方法及装置 |
CN112825072A (zh) * | 2019-11-21 | 2021-05-21 | 青岛海信移动通信技术股份有限公司 | 通信终端以及数据共享方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106331178A (zh) * | 2016-10-28 | 2017-01-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种信息共享方法及移动终端 |
CN106357921A (zh) * | 2016-10-10 | 2017-01-25 | 广东欧珀移动通信有限公司 | 一种应用的数据共享方法、装置和移动终端 |
CN106406986A (zh) * | 2016-11-24 | 2017-02-15 | 宇龙计算机通信科技(深圳)有限公司 | 一种资源共享方法及装置 |
CN106445693A (zh) * | 2016-10-10 | 2017-02-22 | 广东欧珀移动通信有限公司 | 一种信息同步方法、装置及终端设备 |
CN106484547A (zh) * | 2016-10-10 | 2017-03-08 | 广东欧珀移动通信有限公司 | 一种多开应用的管理方法、装置及终端 |
CN106648459A (zh) * | 2016-10-10 | 2017-05-10 | 广东欧珀移动通信有限公司 | 一种应用的数据管理方法、装置和移动终端 |
CN106648671A (zh) * | 2016-12-27 | 2017-05-10 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用升级方法及终端 |
-
2018
- 2018-01-08 CN CN201810014743.2A patent/CN108197273B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357921A (zh) * | 2016-10-10 | 2017-01-25 | 广东欧珀移动通信有限公司 | 一种应用的数据共享方法、装置和移动终端 |
CN106445693A (zh) * | 2016-10-10 | 2017-02-22 | 广东欧珀移动通信有限公司 | 一种信息同步方法、装置及终端设备 |
CN106484547A (zh) * | 2016-10-10 | 2017-03-08 | 广东欧珀移动通信有限公司 | 一种多开应用的管理方法、装置及终端 |
CN106648459A (zh) * | 2016-10-10 | 2017-05-10 | 广东欧珀移动通信有限公司 | 一种应用的数据管理方法、装置和移动终端 |
CN106331178A (zh) * | 2016-10-28 | 2017-01-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种信息共享方法及移动终端 |
CN106406986A (zh) * | 2016-11-24 | 2017-02-15 | 宇龙计算机通信科技(深圳)有限公司 | 一种资源共享方法及装置 |
CN106648671A (zh) * | 2016-12-27 | 2017-05-10 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用升级方法及终端 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194589A (zh) * | 2018-08-31 | 2019-01-11 | 新华三技术有限公司 | 一种mdc实现方法及装置 |
CN109194589B (zh) * | 2018-08-31 | 2021-01-26 | 新华三技术有限公司 | 一种mdc实现方法及装置 |
CN112825072A (zh) * | 2019-11-21 | 2021-05-21 | 青岛海信移动通信技术股份有限公司 | 通信终端以及数据共享方法 |
CN112825072B (zh) * | 2019-11-21 | 2023-02-17 | 青岛海信移动通信技术股份有限公司 | 通信终端以及数据共享方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108197273B (zh) | 2022-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9372935B2 (en) | Content management and access systems and methods | |
TW200941240A (en) | Computing environment representation | |
JP5343793B2 (ja) | 情報生成装置、情報生成プログラム、情報生成方法、ノード装置、ノードプログラム及び検索方法 | |
CN109151031A (zh) | 基于区块链的合约处理方法及装置 | |
CN108228770A (zh) | 一种应用文件来源查询的方法及装置 | |
Odom et al. | Forensic inspection of sensitive user data and artifacts from smartwatch wearable devices | |
CN108268609A (zh) | 一种文件路径的建立、访问方法和装置 | |
CN108196899A (zh) | 一种多用户的创建的方法及装置 | |
CN108197273A (zh) | 一种多用户数据同步的方法及装置 | |
CN109358833A (zh) | 一种音频播放方法及系统、一种计算设备及存储介质 | |
CN106528300A (zh) | 一种同步单机游戏的方法、装置和终端 | |
CN107241312A (zh) | 一种权限管理方法及装置 | |
CN102171696B (zh) | 定制资料的生成方法和装置 | |
CN104598651A (zh) | 一种移动终端收藏夹的管理方法及装置 | |
CN104252587B (zh) | 拉取文件的方法、装置及系统 | |
CN108958838A (zh) | 一种新型更新属性信息的方法及装置 | |
CN105787385B (zh) | 一种文件管理器保密盒的实现方法、装置及移动终端 | |
CN107547607B (zh) | 一种集群迁移方法及装置 | |
CN109068070A (zh) | 视频生成方法及相关装置 | |
JP5710401B2 (ja) | 管理装置、管理システム、管理方法及びプログラム | |
US20170213042A1 (en) | Data encryption method and encryption apparatus | |
CN116126812B (zh) | 一种工程行业文件存储与集成的方法与系统 | |
Parmar et al. | Logical acquisition of iPhone without Jail Breaking | |
US20230394172A1 (en) | Digital Asset (DA) Move Option Between Personal and Shared DA Libraries | |
US20210141771A1 (en) | Method of managing files by mobile device and mobile device for implementing the same |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 266071 Shandong city of Qingdao province Jiangxi City Road No. 11 Patentee after: Qingdao Hisense Mobile Communication Technology Co.,Ltd. Address before: 266071 Shandong city of Qingdao province Jiangxi City Road No. 11 Patentee before: HISENSE MOBILE COMMUNICATIONS TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |