《管理由一组移动设备共享的列表中的项的系统和方法》由会员分享,可在线阅读,更多相关《管理由一组移动设备共享的列表中的项的系统和方法(17页珍藏版)》请在金锄头文库上搜索。
1、管理由一组移动设备共享的列表中的项的系统和方法专利名称:管理由一组移动设备共享的列表中的项的系统和方法管理由一组移动设备共享的列表中的项的系统和方法技术领域以下内容涉及用于管理由一组移动设备共享的工程(project)中的任务的系统 和方法。背景技术:在多个实体之间共享数据典型地通过在可集中访问的服务器上的数据库中提供 共享数据的集合来实现。位于中心服务器上的文档或版本管理系统可以管理任何改变、更 新、编辑等。在服务器上实现数据库或共享数据可能具有以下缺点。例如,提供专用服务器和 数据库服务典型地需要附加硬件、管理、基础设施和对应的开销。还存在关于谁能够访问数 据以及这种数据容易受黑客或其他攻
2、击者影响的私密性问题。此外,在服务器上维护数据 的主拷贝需要对版本控制进行严格监控,并且典型地需要某种机制来向能够访问数据的人 员更新所输入的任何编辑。根据能够访问数据的用户组的大小、以及所存储的数据量,这种 任务将增加另外的管理开销。当允许对中心数据库进行无线访问时,低带宽和高延迟也可 能对系统有所限制,而影响数据的一致性和对数据的访问。发明内容本发明可以提供一种移动设备、一种计算机可读介质以及一种用于对移动设备进 行操作的方法,其中,所述方法可以包括获得共享数据项的列表;获得公共消息,所述公 共消息具有对所述列表中的项的值的期望改变;以及确定对所述值的所述期望改变是否已 经完成,如果未完成
3、,则以所述期望改变来更新所述列表。本发明还可以提供一种移动设备、一种计算机可读介质以及一种用于对移动设备 进行操作的方法,其中,所述方法可以包括获得共享数据项的列表;产生公共消息,所述 公共消息具有对所述列表中的项的值的期望改变;以及向一个以上的其他移动设备发送所 述公共消息。本发明还可以提供一种移动设备、一种计算机可读介质以及一种用于对移动设备 进行操作的方法,其中,所述方法可以包括产生共享数据项的列表;与一个以上的移动设 备共享所述列表;以及向所述一个以上的移动设备中的至少一个发送公共消息,以更新所 述列表。现在将参照附图,仅以示例方式来描述实施例,附图中图1 (a)是示意了共享公共数据集
4、合的一组移动设备的示意图。图1 (b)是示意了使用图1 (a)中所示的组来进行组列表管理的示意图。图2是示意了用于图1中所示的共享数据的数据库存储等级体系的示意图。图3是示意了从主机系统将数据项推送至移动设备的环境的系统图。图4是移动设备的示例实施例的方框图。图5是示意了图4中所示的其他软件应用和组件中的示例软件应用和组件的方框 图。图6是示意了在一组移动设备之间进行对等(P2P)消息收发的示例配置的系统 图。图7是图5中所示的组共享应用的示例方框图。图8是示意了根据在一组移动设备之一处进行的更新、向该组移动设备传送组消 息的流程图。图9(a)至9(c)是一系列流程图,示意了对组消息的传送的肯
5、定应答,并示意了针 对“不在覆盖范围内”场景来保持消息。图10(a)至10(c)是一系列流程图,示意了在“返回覆盖范围内”场景中转发所保 持的消息,以及返回覆盖范围内的移动设备所进行的新组消息的后续传送。图11(a)至11(f)是一系列流程图,示意了针对共享数据中的相同记录的更新的 示例冲突解决场景。图12是用于图5中所示的组共享应用的示例图形用户界面(GUI)。图13(a)至13(g)是示意了使用组共享应用来维持的列表应用的示例I。图14是示意了新列表项创建的示例屏幕截图。图15是示意了列表排序菜单界面的示例屏幕截图。图16(a)至16(d)是示意了使用用于管理组工程中的任务的组共享应用来维
6、持的 列表应用的示例GUI。图17是示意了新组创建的示例屏幕截图。图18是示意了显示组条码以使得新成员能够通过扫描条码来加入组的界面的示 例屏幕截图。图19是示意了用于向不是组成员的联系人发送聊天、图片或列表的菜单界面的 示例屏幕截图。图20是示意了用于改变组选项的界面的示例屏幕截图。图21是示意了用于使新的组成员能够被邀请至组的界面的示例屏幕截图。图22是示意了用于添加新的组成员的界面的示例屏幕截图。图23是示意了用于添加新的组成员的另一界面的示例屏幕截图。图M是示意了用于显示组细节(包括使组条码能够被显示在移动设备上)的示 例屏幕截图。图25是示意了能够使组联系人被添加为即时消息联系人的提
7、示的示例屏幕截 图。图沈是示意了各种组活动的扩展列表的示例屏幕截图。图27是示意了用于发表图片的界面的示例屏幕截图。图观是示意了用于实现对图片的讨论的界面的示例屏幕截图。图四是示意了用于记录语音注释的界面的示例屏幕截图。图30是示意了用于创建新的组约会的界面的示例屏幕截图。图31是示意了用于显示组日程的界面的示例屏幕截图。图32是示意了用于启动包括组日程选项在内的另一界面的菜单界面的示例屏幕 截图。图33是示意了用于设置管理员口令的菜单界面的示例屏幕截图。图34是示意了用于改变管理员口令的菜单界面的示例屏幕截图。图35是示意了用于取消管理员特权的菜单界面的示例屏幕截图。图36是示意了用于使用户
8、成为管理员的菜单界面的示例屏幕截图。图37是示意了用于备份联系人列表的界面的示例屏幕截图。图38是示意了用于恢复联系人列表的界面的示例屏幕截图。图39是示意了用于使用备份文件来恢复联系人列表的界面的示例屏幕截图。图40是示意了基于移动设备组中的一个移动设备所进行的改变来更新共享数据 的示例计算机可执行指令的流程图。图41是示意了用于确定记录更新之间是否存在冲突、并解决任何这种冲突的一 个实施例的示例计算机可执行指令的流程图。图42是示意了示例组成员等级体系的方框图。图43是示意了根据图42的等级体系的示例家庭组的方框图。图44是示意了用于确定记录更新之间是否存在冲突、并解决任何这种冲突的另 一
9、实施例的示例计算机可执行指令的流程图。图45是示意了用于根据图42中所示的示例组成员等级体系来解决记录更新之间 的冲突的示例计算机可执行指令的流程图。图46 (a)和46 (b)是示意了在移动设备处高速缓存未传送的组消息的示例备选实 施例的示意图。图47是示意了被配置为跟踪设备覆盖范围并发送在覆盖范围内和不在覆盖范围 内消息的对等服务器的示例备选实施例的方框图。图48是示意了通过监控肯定应答消息和发送在覆盖范围内和不在覆盖范围内消 息来使图47中的对等服务器跟踪设备覆盖范围的示例计算机可执行指令的流程图。图49(a)至49 (c)是示意了用于向组添加新成员的示例预配置过程的示意图。图50是示意
10、了用于向组添加新成员的示例计算机可执行指令的流程图。具体实施方式应当认识到,为了示意简洁清楚,在适当的情况下,在附图之间将重复使用参考标 号来指示对应或类似的元件。此外,阐述了许多具体细节,以提供对所述实施例的透彻理 解。然而,本领域技术人员应当认识到,没有这些具体细节也可以实现这里描述的实施例。 在其他实例中,未具体描述公知方法、过程和组件,以免使所述实施例含混不清。此外,以下 描述不应被理解为对所述实施例范围的限制。本发明提供了一种方法和系统,用于管理包括多个项在内的列表,例如用于管理 工程中的任务。为了共享工程和管理与该工程相关联的任务,可以使用一种底层系统和方 法,用于在包括多个移动设
11、备在内的组中共享数据,而不需要数据库或服务器来集中存储 共享数据。取而代之地,每个组成员单独存储共享数据,同时控制对共享数据进行更新的方 式。为了管理这种更新,对共享数据进行原子化,使得共享数据中的各个数据库被分离或描述为一个以上的记录,每个记录具有与其相关联的值。记录的值可以表示用户可定义/可定制的字段,或者可以是备选项的有限集合之 一,例如是/否、一天中的时刻等。为了在每个设备处维持共享数据的共同拷贝,使用中间 消息交换服务来向所有组成员发送任何更新,该中间消息交换服务能够在必要时向多于一 个接收方传送发送消息。按照这种方式,经由公共消息将更新组播至所述组。为了管理共 享数据的内容,每个更
12、新包括对相应记录的当前拷贝的一个以上的改变。于是,在接收端,可以对每个记录进行评估,并(根据特定准则)将其整体替换,以 简化对类似记录的更新之间的冲突解决,并禁止改变传播至整个共享数据。换言之,可以使 用原子化的改变,使得针对每次添加、改变或更新,仅影响与单一记录相关联的数据、信息、 选择或其他值。通过这种方式来管理共享数据,对共享数据的共享还对不在覆盖范围内情 形更加宽容。当设备不在覆盖范围内时,包含更新的消息将被保持,直到设备回到覆盖范围 内,或者可以周期性地重新发送消息,或者两者兼有。图1 (a)示意了 4个成员A、B、C、D的示例组10,4个成员之间具有共享数据集合 11。成员A、B、
13、C、D可以是能够发送、接收、检查、存储或者处理或处置数据的任何数据通信 设备,在以下示意示例中,包括移动通信设备100(也见图幻。组10可以具有任何大小,但 是对于以下示例,是与其他任何人具有相同关系的成员或用户的小静态集合,例如家庭、运 动队、协作者、小商户、俱乐部或组织等。如上所述,共享数据11存在,但不需要由中心实体 控制的主拷贝,而是通过经由能够进行组播消息交换的消息交换服务来交换包括更新的组 播消息,以在每个成员处维持共享数据11的拷贝。尽管未示出,但是在组10的成员的子集之内和之间,也可以形成私有子组,以共 享私有共享数据的集合。这允许特定成员共享一些指定数据和信息,但不允许其他成
14、员访 问这种数据。例如,如果组10是家庭,父母可以形成子组,以共享针对其子女的礼物意见或 者其他信息,如教育策略或敏感性质的主题。这避免了需要仅仅为了共享一些选择信息而 形成完全独立的组10。可以认识到,共享数据11和任何私有共享数据可以是分离的数据库 或公共数据库的分离的部分。还可以认识到,图1(a)示出了一个组10,但是成员也可以属 于多个组,其中每个组具有与该组10互斥的不同共享数据集合11 (未示出)。图1(b)示意了图1(a)所示的组10的具体实现,用于共享组列表11,并管理该 组列表11内的项。如本示例所示,组列表11可以表示包括多个任务的工程(project)。 通过利用这里讨论
15、的原理,可以在组工程内管理组任务,通过交换组任务消息8来维持组 工程11,组10的每个成员可以看到工程状态的最新视图。类似地,可以分配任务,消息可 以与组工程11相关联,通过这里所讨论的数据分发,组成员可以看见上述任务和消息。这 可以尤其有利于公司工程团队来建立组,并使用这里采用的机制来管理一个以上的工程。图2示意了一个实施例中的共享数据11的结构。本实施例中的共享数据11包 括一个以上的数据库90。每个数据库90可以具有与其相关联的一个以上的记录92,记录 92使得每个数据库90能够包括各种组件。每个记录92具有与其相关联的值94,表示数据 库90中与该特定记录名称相关联的部分。例如,日程程
16、序或小应用程序可以在共享数据11 中表示为数据库90,该数据库90具有针对每个月中每一天的每一个小时时段的记录92。 每个记录92可以包含相应日的约会,该约会由值94(例如字母数字串)表示。因此,从图 2可以看出,可以对共享数据11给出分层结构,以提供精细至记录级的颗粒度,使得在添加新记录92或修改现有记录92时,可以在相应数据库90中简单地添加或改写记录92,而不 会干扰共享数据11的其他组件。可以认识到,多于一个数据库90可以与特定应用或小应 用程序相关联。例如,图片共享应用可以具有图片数据库90和用于与图片相关联的对话或 注释的另一数据库90。可以认识到,图2所示的层的颗粒度和数目仅用于示意目的,也可以使用其他结 构。例如,可以使用另一更高层级来分离每个数据库内的对象(未示出)。回到日程示