首页> 中国专利> 协作成就界面

协作成就界面

摘要

本公开的实施例一般涉及协作成就系统,其用于:在与第一用户相关联的客户端设备上,检测在至少第一用户和第二用户之间的协作成就;基于协作成就的属性选择成就指示符,其中成就指示符包括用于该成就指示符的个性化指令;在客户端设备上,从与第一用户和第二用户相关联的第一用户帐户和第二用户帐户取得用户简档信息;基于用户简档信息和个性化指令来个性化成就指示符;以及使得在客户端设备上显示个性化的成就指示符的呈现。

著录项

  • 公开/公告号CN112740279A

    专利类型发明专利

  • 公开/公告日2021-04-30

    原文格式PDF

  • 申请/专利权人 斯纳普公司;

    申请/专利号CN201980062550.7

  • 申请日2019-09-27

  • 分类号G06T11/60(20060101);G06F3/0482(20130101);G06F9/451(20180101);G06Q50/00(20120101);G06Q50/30(20120101);G06F3/0481(20130101);G06F3/0484(20130101);

  • 代理机构11247 北京市中咨律师事务所;

  • 代理人刘都;于静

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 10:46:31

说明书

优先权要求

本申请要求于2018年9月28日提交的序列号为16/146,733的美国专利申请的优先权的权益,其全部内容通过引用并入本文。

技术领域

本公开的实施例一般涉及图形用户界面(GUI),并且更具体地,涉及用于生成和引起GUI的显示的系统。

背景技术

社交网络服务是人们用来与其他用户建立社交网络的在线平台。社交网络服务在格式和特征数量上存在差异,并且可以结合在台式机和笔记本电脑上以及在诸如平板电脑和智能电话的移动设备上运行的一系列新信息和通信工具。社交网络服务的用户可以通过个性化的用户简档彼此交互。

用户简档是与特定用户或定制的桌面环境相关联的个人数据的可视显示。因此,简档指示个人或实体的身份的明确的数字表示。简档可用于存储人的特征的描述。系统可以利用该信息并考虑人的特征和偏好。

附图说明

为了容易地识别对任何特定元素或动作的讨论,参考数字中的一个或多个最高有效数字是指其中首次引入该元素的图的编号。

图1是示出了根据一些实施例的用于通过网络交换数据(例如,消息和相关联的内容)的示例消息传递系统的框图,其中消息传递系统包括协作成就系统。

图2是示出根据示例实施例的关于消息传递系统的进一步细节的框图。

图3是示出根据某些示例实施例的协作成就系统的各种模块的框图。

图4是示出根据某些示例实施例的用于呈现与协作成就相关的通知的方法的流程图。

图5是示出根据某些示例实施例的用于呈现与协作成就相关的通知的方法的流程图。

图6是示出根据某些示例实施例的用于呈现与协作成就相关的通知的方法的流程图。

图7是根据某些示例实施例的描绘由协作成就系统生成的一组成就指示符的图。

图8是根据某些示例实施例的描绘用于呈现协作成就的指示的GUI的界面图。

图9是根据某些示例实施例的描绘用于呈现协作成就的指示的GUI的界面图。

图10是根据某些示例实施例的描绘成就指示符的图。

图11是示出可与本文中所描述的各种硬件架构结合使用并用于实现各种实施例的代表性软件架构的框图。

图12是示出根据一些示例实施例的机器的组件的框图,该机器能够从机器可读介质(例如,机器可读存储介质)读取指令并执行本文讨论的方法中的任何一个或多个方法。

具体实施方式

描述了生成图形用户界面(GUI)以显户简档的系统。本公开的实施例总体上涉及一种协作成就系统,该协作成就系统用于:在与第一用户相关联的客户端设备上,检测在至少第一用户与第二用户之间的协作成就;基于协作成就的属性选择成就指示符,其中,成就指示符包括成就指示符的个性化指令和显示;在客户端设备上,从与第一用户相关联的第一用户账户和与第二用户相关联的第二用户账户中取得用户简档信息的一部分,该用户简档信息的一部分是基于个性化指令的;基于用户简档信息和个性化指令生成成就指示符的呈现;并使得在客户端设备上显示成就指示符的呈现。

成就指示符表示在参与社交网络系统的用户之间的某些里程碑或“协作成就”。协作成就可以基于用户简档信息或用户的用户属性,以及基于用户执行的用户动作。例如,协作成就可以包括确定彼此通信的两个用户位于分离的大陆,并且还可以包括确定两个用户在阈值天数内每天彼此通信。因此,可以基于用户动作,响应于接收到对这些用户动作的请求,以及基于用户的用户属性来检测协作成就。

协作成就系统可以维护协作成就触发器的数据库,其中触发器包括某些用户属性或用户执行的用户动作。例如,协作成就触发器的数据库中的每个触发器可以对应于用户之间的不同的协作成就,并且可以与包括图形元素和用于该图形元素的个性化指令的对应的“成就指示符”相关联。例如,可以基于由个性化指令限定的对应用户的用户属性和用户简档信息来个性化成就指示符。因此,成就指示符可以包括图形模板,该图形模板限定用于特定图形元素的个性化指令。例如,图形模板可以识别相关的用户简档信息或属性以从对应的用户简档中取得,并且基于用户简档信息或属性来显示如何呈现图形元素的指令。

在一些实施例中,响应于检测到第一用户和第二用户之间的协作成就,协作成就系统在对应的设备处呈现通知以提醒用户该成就。通知可以例如包括成就指示符的显示,其包括用户的用户简档信息的显示。

在一些实施例中,协作成就系统维护用户之间的协作成就的数据库,并且在与用户相关联的用户简档的一部分内呈现从数据库取得的一组协作成就指示符。例如,用户简档可以被配置为显示两个或更多个用户之间的共享的附属的成就,使得可以向查看第二用户的用户简档的第一用户呈现代表第一用户和第二用户之间的协作成就的一组共享的协作成就指示符。成就指示符可以在用户简档的一部分内以水平阵列呈现,其中,成就指示符的顺序或排序顺序是基于成就指示符的属性或特性的,例如指示检测到对应的协作成就的时间或日期的时间信息。

从用户角度考虑说明性示例。具有对应的用户简档(第一用户简档和第二用户简档)的第一用户和第二用户可以通过交换消息或媒体内容而通过社交网络系统彼此交互。例如,在一个月的时间段内,用户可以通过由协作成就系统124呈现的界面来回发送消息来参与通信会话。协作成就系统124可以跟踪用户之间的通信会话的属性(例如持续时间)以及所发送的消息的数量。

协作成就系统124维护并引用包含触发事件的数据库。在基于通信会话的属性(例如,超过阈值(例如1,000条消息)的消息的数量)检测到触发事件后,协作成就系统124生成并导致显示个性化的成就指示符,其中包括第一用户和第二用户的用户简档中的第一用户和第二用户的用户简档信息的呈现。例如,在成就指示符内呈现的用户简档信息可以包括与用户相关联的图形化身,例如表情符号(Bitmoji)。

图1是示出了用于通过网络交换数据(例如,消息以及相关联的内容)的示例性消息传递系统100的框图。消息传递系统100包括多个客户端设备102,每个客户端设备托管包括消息传递客户端应用104的多个应用。每个消息传递客户端应用104经由网络106(例如,因特网)通信地耦接到消息传递客户端应用104的其它实例和消息传递服务器系统108。

因此,每个消息传递客户端应用104能够经由网络106与另一消息传递客户端应用104以及与消息传递服务器系统108通信和交换数据。在消息传递客户端应用104之间交换的数据以及在消息传递客户端应用104和消息传递服务器系统108之间交换的数据包括函数(例如,调用函数的命令)以及有效载荷数据(例如,文本、音频、视频或其它多媒体数据)。

消息传递服务器系统108经由网络106向特定的消息传递客户端应用104提供服务器侧功能。尽管消息传递系统100的某些功能在本文中被描述为由消息传递客户端应用104或者由消息传递服务器系统108内执行,但是可以理解的是,在消息传递客户端应用104内或者消息传递服务器系统108内的某些功能的位置是设计选择的。例如,在技术上优选首先在消息传递服务器系统108内部署某些技术和功能,但是随后将该技术和功能迁移到其中客户端设备102具有足够处理能力的消息传递客户端应用104。

消息传递服务器系统108支持提供给消息传递客户端应用104的各种服务和操作。该操作包括向消息传递客户端应用104发送数据,从消息传递客户端应用104接收数据以及处理由消息传递客户端应用104生成的数据。在一些实施例中,该数据例如包括消息内容、客户端设备信息、地理位置信息、媒体注释和叠加、消息内容持久性条件、社交网络信息和实况事件信息。在其它实施例中,使用其它数据。在消息传递系统100内的数据交换经由消息传递客户端应用104的GUI可用的功能来调用和控制。

现在具体转向消息传递应用服务器系统108,应用程序接口(API)服务器110被耦接到应用服务器112,并向应用服务器112提供编程接口。应用服务器112通信地耦接到数据库服务器118,数据库服务器118有助于访问数据库120,在数据库120中存储了与由应用服务器112处理的消息相关联的数据。

具体地处理应用程序接口(API)服务器110,该服务器在客户端设备102和应用服务器112之间接收和发送消息数据(例如,命令和消息有效载荷)。具体地,应用程序接口(API)服务器110提供可以由消息传递客户端应用104调用或查询的一组接口(例如,例程和协议),以调用应用服务器112的功能。应用程序接口(API)服务器110公开了由应用服务器112支持的各种功能,包括帐户注册,登录功能,经由应用服务器112从特定消息传递客户端应用104向另一消息传递客户端应用104发送消息,从消息传递客户端应用104向消息传递服务器应用114发送媒体文件(例如,图像或视频),以及用于另一消息传递客户端应用104的可能访问,媒体数据集合(例如,故事)的设置,对客户端设备102的用户的朋友列表的取得,对此类集合的取得,对消息和内容的取得,在社交图中添加和删除朋友,对社交图中朋友的定位,打开以及应用事件(例如,与消息传递客户端应用104有关的事件)。

应用服务器112托管许多应用和子系统,包括消息传递服务器应用114、图像处理系统116、社交网络系统122和协作成就系统124。消息传递服务器应用114实现多种消息处理技术和功能,特别是与从消息传递客户端应用104的多个实例接收的消息中包含的内容(例如,文本和多媒体内容)的聚合和其它处理有关的技术和功能。如将进一步详细描述的,来自多个源的文本和媒体内容可以聚合到内容集合(例如,称为故事,图库,或集合)中。然后,消息传递服务器应用114可将这些集合提供给消息传递客户端应用104。鉴于用于此处理的硬件要求,消息传递服务器应用114还可在服务器侧执行其它处理器和存储器密集型数据处理。

应用服务器112还包括图像处理系统116,该图像处理系统116专用于执行各种图像处理操作,通常与消息传递服务器应用114的消息的有效载荷内接收的图像或视频相关。

社交网络系统122支持各种社交网络功能服务,并使这些功能和服务可用于消息传递服务器应用114。为此,社交网络系统122维护并访问数据库120内的实体图304。由社交网络系统122支持的功能和服务的示例包括消息传递系统100中与特定用户有关系或特定用户所“关注”的其他用户的标识,以及特定用户的兴趣和其它实体的标识。

应用服务器112通信地耦合到数据库服务器118,数据库服务器118促进对数据库120的访问,数据库120中存储有与由消息传递服务器应用114处理的消息相关联的数据。

图2是示出根据示例实施例的关于消息传递系统100的进一步细节的框图。具体地,消息传递系统100被示为包括消息传递客户端应用104和应用服务器112,其依次体现一些子系统,即短时计时器系统202、集合管理系统204和注释系统206。

短时计时器系统202负责对消息传递客户端应用104和消息传递服务器应用114所允许的内容执行临时访问。为此,短时计时器系统202并入了许多计时器,其基于与消息、消息的集合、或图形元素相关联的持续时间和显示参数而经由消息传递客户端应用104选择性地显示消息和相关内容以及启用对消息和相关内容的访问。下面提供关于短时计时器系统202的操作的进一步详细信息。

集合管理系统204负责管理媒体的集合(例如,媒体集合,包括文本、图像、视频和音频数据的集合)。在一些示例中,内容的集合(例如,包括图像、视频、文本和音频的消息)可以被组织成“事件图库”或“事件故事”。这种集合可以在指定的时间期间(诸如,与内容相关的事件的持续时间)内可用。例如,与音乐会有关的内容可以在该音乐会的持续时间内作为“故事”提供。集合管理系统204还可以负责向消息传递客户端应用104的用户界面发布图标,该图标提供对特定集合的存在的通知。

集合管理系统204此外包括策展接口208,策展接口208允许集合管理者管理和策展特定的内容集合。例如,策展接口208使事件组织者能够策展与特定事件有关的内容的集合(例如,删除不适当的内容或冗余消息)。附加地,集合管理系统204采用机器视觉(或图像识别技术)和内容规则来自动地策展内容集合。在某些实施例中,可以向用户支付报酬,以将用户生成的内容包含在集合中。在这种情况下,策展接口208操作以便为了使用用户的内容而自动向该用户支付费用。

注释系统206提供使用户能够注释或以其它方式修改或编辑与消息相关联的媒体内容的各种功能。例如,注释系统206提供与生成和发布用于由消息传递系统100处理的消息的媒体叠加有关的功能。注释系统206可操作地基于客户端设备102的地理位置来向消息传递客户端应用104提供媒体叠加。在另一示例中,注释系统206可操作地基于其它信息(例如,客户端设备102的用户的社交网络信息)将媒体叠加提供给消息传递客户端应用104。媒体叠加可以包括音频和视觉内容和视觉效果,以及增强现实叠加。音频和视觉内容的示例包括图片、文本、徽标、动画和音效、以及动画面部模型、图形滤镜、以及增强现实媒体内容。视觉效果的示例包括颜色叠加。音频和视觉内容或视觉效果可以在客户端设备102处被应用到媒体内容项(例如,照片或视频或视频流)。例如,媒体叠加包括可以叠加在客户端设备102拍摄生成的照片上的文本。在另一示例中,媒体叠加包括位置叠加标识(例如,威尼斯海滩)、现场事件名称、或商家叠加名称(例如,海滩咖啡馆)。在另一个示例中,注释系统206使用客户端设备102的地理位置来识别媒体叠加,该媒体叠加包括在客户端设备102的地理位置处的商家的名称。媒体叠加可以包括与商家相关联的其它标记。媒体叠加可以被存储在数据库120中并且可以通过数据库服务器118来访问。

在一个示例实施例中,注释系统206提供基于用户的发布平台,该平台使用户能够选择地图上的地理位置,并上传与所选地理位置相关联的内容。用户还可以指定环境,在该指定环境下应向其他用户提供特定媒体叠加。注释系统206生成包括上传内容的媒体叠加,并将上传内容与所选地理位置相关联。

在另一示例实施例中,注释系统206提供基于商家的发布平台,该平台使商人能够通过投标过程选择与地理位置相关联的特定媒体叠加。例如,注释系统206在预定的时间量内将出价最高的商家的媒体叠加与对应的地理位置相关联。

图3是示出协作成就系统124的组件的框图,协作成就系统124的组件将协作成就系统124配置为执行根据一些示例实施例的包括以下操作的操作:在与第一用户相关联的客户端设备上,检测在至少第一用户和第二用户之间的协作成就;基于协作成就的属性来选择成就指示符,其中,成就指示符包括针对成就指示符的个性化指令;在客户端设备上,从与第一用户相关联的第一用户帐户和与第二用户相关联的第二用户帐户中取得用户简档信息;基于用户简档信息和个性化指令来对成就指示符进行个性化处理;并且导致在客户端设备处显示个性化的成就指示符的呈现。协作成就系统124被示为包括呈现模块302,用户简档模块304,媒体模块306和通信模块308,它们均被配置为彼此通信(例如,经由总线,共享存储器或交换机)。这些模块中的任何一个或多个模块可以使用一个或多个处理器310来实现(例如,通过配置该一个或多个处理器以执行针对该模块描述的功能)并因此可以包括一个或多个处理器310。

所描述的模块中的任何一个或多个可以单独使用硬件(例如,机器的一个或多个处理器310)来实现或使用硬件和软件的组合来实现。例如,所描述的协作成就系统124的任何模块可以物理上包括被配置为执行本文针对该模块描述的操作的一个或多个处理器310(例如,机器的一个或多个处理器的子集或机器的一个或多个处理器之中的一个子集)的布置。作为另一示例,协作成就系统124的任何模块可以包括软件,硬件,或两者,其配置一个或多个处理器310(例如,在机器的一个或多个处理器之中)的布置以执行本文针对该模块描述的操作。因此,协作成就系统124的不同模块可以包括并配置该处理器310的不同布置或该处理器310在不同的时间点的单个布置。此外,协作成就系统124的任何两个或更多个模块可以被组合成单个模块,并且本文针对单个模块描述的功能可以被细分为多个模块。此外,根据各种示例实施例,本文描述为在单个机器、数据库或设备内实现的模块可以分布在多个机器、数据库或设备上。

图4是示出根据某些示例实施例的用于呈现与协作成就相关联的通知的方法400的流程图。方法400的操作可以由以上关于图3描述的模块来执行。如图4所示,方法400包括一个或多个操作402、404、406和408。

在操作402,用户简档模块304检测在第一用户和第二用户之间的协作成就。如上所述,协作成就可以基于用户简档信息或用户的用户属性,以及基于用户执行的用户动作。例如,协作成就可以包括确定彼此通信的两个用户位于分离的大陆,并且还可以包括确定两个用户在阈值天数内每天彼此通信。因此,可以响应于接收到对用户动作的请求(例如,消息请求)以及单独基于用户的用户属性来检测协作成就。

例如,响应于接收到在第一用户和第二用户之间的通信会话中的用户动作,用户简档模块304可以访问数据库120,其中数据库120包含被定义为一个或多个用户属性或用户动作的触发器的存储库。例如,每个触发器可以包括与用户之间的独特的协作成就(其可以与对应的“成就指示符”相关联)相对应的一个或多个用户属性或动作的标识。

在操作404,用户简档模块304基于协作成就来选择成就指示符,其中成就指示符包括定义用于该成就指示符的个性化指令的图形模板。例如,用户简档模块304从数据库120中选择成就指示符。

在操作406,用户简档模块304响应于检测到协作成就而取得与第一用户相关联的第一用户帐户和与第二用户相关联的第二用户帐户的用户简档信息。例如,用户简档信息可以包括人口统计信息,位置信息以及用户标识符,例如代表第一用户和第二用户的图形化身(例如,表情符号)。

用户简档模块304可以从第一用户和第二用户的相应客户端设备取得用户简档信息。在一些实施例中,成就指示符的图形模板可以定义用户简档模块304所取得的特定的用户简档信息。例如,图形模板可以指示成就指示符需要用户标识符(例如图形化身),以便个性化成就指示符。

在操作408,媒体模块306基于用户简档信息生成成就指示符的呈现,并且呈现模块302使得在客户端设备处显示成就指示符的呈现。例如,可以在客户端设备的通知中显示包括用户简档信息的成就指示符的呈现。

图5是示出根据某些示例实施例的用于呈现与协作成就相关联的通知的方法500的流程图。方法500的操作可以由以上参照图3描述的模块执行。如图5所示,方法500包括一个或多个操作502和504。

在操作502,通信模块308经由客户端设备102从第一用户接收输入,该输入包括第二用户账户的标识。例如,输入可以是搜索请求,或者是查看第二用户的用户简档的请求。

在操作504,呈现模块302响应于该输入而引起第二用户的用户简档的显示。在一些实施例中,第二用户的用户简档可以包括确认第一用户与第二用户之间的协作成就的一组成就指示符的显示。

根据该实施例,该组成就指示符可以沿着用户简档的一部分而被水平地呈现,使得查看该组成就指示符的用户可以提供以滚动通过该组成就指示符的输入,如在图8所示的GUI 800中所示。

图6是示出根据某些示例实施例的用于呈现与协作成就相关联的通知的方法600的流程图。方法600的操作可以由以上参照图3描述的模块执行。如图6所示,方法600包括一个或多个操作602和604。

在操作602,通信模块308接收输入,该输入包括对在成就指示符的呈现时显示的图形图标的选择。例如,如图10所示,图形图标可以包括图形图标1010。

在操作604,呈现模块302从第一用户和第二用户的用户简档中移除成就指示符的呈现。在一些实施例中,通信模块308可以向第一用户和第二用户呈现通知,以通知用户成就指示符已经被移除。

图7是根据某些示例实施例的描述由协作成就系统124生成的一组成就指示符700的图。如在图4中描绘的方法400中所讨论的,一组成就指示符700中的每个成就指示符可以基于用户简档信息和与协作成就相关联的用户的用户属性来生成。

例如,成就指示符705包括用户标识符710和715(即,与第一用户和第二用户相关联的表情符号)的显示。类似地,成就指示符720包括用户标识符725的显示。

图8是根据某些示例实施例的描绘用于呈现协作成就的指示的GUI800的界面图。

如图8所示,GUI 800包括用户的用户简档。如在图5的方法500中所讨论的,在GUI800中显示的用户简档可以包括一组成就指示符810的呈现,其沿着GUI 800的一部分水平地显示。

每个成就指示符(例如,成就指示符815)包括与在GUI 800内显示的用户简档相关联的用户以及查看GUI 800内的用户简档的用户的用户简档信息的显示。

图9是根据某些示例实施例的描绘用于呈现协作成就的指示的GUI900的界面图。

如图9所示,GUI 900可以包括通知905的显示,该通知905包括用户简档信息910的呈现,如在图4中描绘的方法400中所讨论的。

例如,响应于协作成就系统124检测到第一用户和第二用户之间的协作成就,可以向查看GUI 900的第一用户呈现通知905。协作成就可以例如包括基于第一用户和第二用户(这些用户位于不同的国家)的用户简档信息的确定。响应于检测到协作成就,协作成就系统取得用户简档信息(例如,用户简档信息910),并且基于用户简档信息910(即,第一用户和第二用户的位置)来生成成就指示符。

图10是根据某些示例实施例的描绘成就指示符1005的图1000。如图1000所示,成就指示符1005包括用户标识符1010和1015以及图形图标1020的显示。

如在图6的方法600中所讨论的,响应于接收到对图形图标1020的选择,协作成就系统124可以从相关联的用户(即,由用户标识符1010和1015表示的用户)的用户简档中删除成就指示符的呈现。

在一些实施例中,响应于接收到对图形图标1020的选择,协作成就系统124可以使得在由用户标识符1010和1015描绘的用户的相应客户端设备处显示通知1025。

软件架构

图11是示出示例软件架构1106的框图,其可以与在此描述的各种硬件架构结合使用。图11是软件架构的非限制性示例,并且可以理解,许多其它架构可被实现以促进在此描述的功能。软件架构1106可以在诸如图12的机器1200的硬件上执行,机器1200包括处理器1204、存储器1214和I/O组件1218等。代表性硬件层1152被示出并且可以表示例如图11的机器1100。代表性硬件层1152包括具有相关联可执行指令1104的处理单元1154。可执行指令1104表示软件架构1106的可执行指令,包括在此描述的方法、组件等的实施方式。硬件层1152还包括存储器和/或存储模块存储器/存储设备1156,其也具有可执行指令1104。硬件层1152还可以包括其它硬件1158。

在图11的示例性架构中,软件架构1106可以概念化为层的堆栈,其中每个层提供特定的功能。例如,软件架构1106可以包括诸如操作系统1102、库1120、应用1116和呈现层1114的层。在操作上,层内的应用1116和/或其它组件可以通过软件堆栈调用应用程序接口(API)API调用1108,并且响应于API调用1108接收响应。所示的层本质上是代表性的,并且并不是所有软件架构都具有所有层。例如,一些移动或专用操作系统可能不提供框架/中间件1118,而其它操作系统可提供此类层。其它软件架构可以包括附加的层或不同的层。

操作系统1102可以管理硬件资源并提供公共服务。操作系统1102可以包括例如内核1122、服务1124和驱动器1126。内核1122可以用作硬件和其它软件层之间的抽象层。例如,内核1122可以负责存储器管理、处理器管理(例如,调度)、组件管理、网络、安全设置等。服务1124可以为其它软件层提供其它公共服务。驱动器1126负责控制底层硬件或与底层硬件接口连接。例如,驱动器1126包括显示驱动器、相机驱动器、

库1120提供由应用1116和/或其它组件和/或层使用的公共基础结构。库1120提供允许其它软件组件以比与底层操作系统1102功能(例如,内核1122、服务1124和/或驱动器1126)直接接口连接更容易的方式执行任务的功能。库1120可以包括系统库1144(例如,C标准库),其可以提供诸如存储器分配功能、字符串操作功能、数学功能等的功能。另外,库1120可以包括API库1146,诸如媒体库(例如,用于支持各种媒体格式(诸如MPREG4、H.264、MP3、AAC、AMR、JPG或PNG)的呈现和操作的库)、图形库(例如,可用于在显示器上的图形内容中渲染2D和3D的OpenGL框架)、数据库库(例如,可提供各种关系数据库功能的SQLite)、web库(例如,可提供web浏览功能的WebKit)等。库1120还可以包括各种其它库1148,以向应用1116和其它软件组件/模块提供许多其它API。

框架/中间件1118(有时也被称为中间件)提供可由应用1116和/或其它软件组件/模块使用的更高级别的公共基础结构。例如,框架/中间件1118可以提供各种图形用户界面(GUI)功能、高级资源管理、高级位置服务等。框架/中间件1118可以提供可以由应用1116和/或其它软件组件/模块使用的宽范围的其它API,其中的一些可以针对特定操作系统1102或平台。

应用1116包括内置应用1138和/或第三方应用1140。代表性内置应用1138的示例可包括但不限于联系人应用、浏览器应用、书籍阅读器应用、位置应用、媒体应用、消息传递应用和/或游戏应用。第三方应用1140可以包括由特定平台的供应商以外的实体使用ANDROID

应用1116可以使用内置操作系统功能(例如,内核1122、服务1124和/或驱动器1126)、库1120和框架/中间件1118来创建用户界面以与系统的用户交互。可替代地或另外地,在一些系统中,与用户的交互可以通过呈现层(诸如,呈现层1114)发生。在这些系统中,应用/组件“逻辑”可以与和用户交互的应用/组件的方面分开。

图12是示出根据一些示例实施例的能够从机器可读介质(例如,机器可读存储介质)读取指令并执行在此所讨论的任何一种或多种方法的机器1200的组件的框图。具体地,图12示出了以计算机系统的示例形式的机器1200的图形表示,在该计算机系统内可以执行用于使机器1200执行在此所讨论的任何一种或多种方法的指令1210(例如,软件、程序、应用、小应用、应用软件或其它可执行代码)。这样,指令1210可用于实现在此描述的模块或组件。指令1210将通用的非程序化的机器1200变换成被编程为以所描述的方式执行所描述和示出的功能的特定的机器1200。在替代实施例中,机器1200作为独立设备操作或者可以耦接(例如,联网)到其它机器。在联网部署中,机器1200可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力操作,或者作为对等(或分布式)网络环境中的对等机器操作。机器1200可以包括但不限于服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动设备、可穿戴设备(例如,智能手表)、智能家居设备(例如,智能家电)、其它智能设备、网络设备、网络路由器、网络交换机、网络桥接器、或者能够顺序地或以其它方式执行指令1210的任何机器,该指令1210指定机器1200要采取的动作。此外,尽管仅示出了单个机器1200,但是术语“机器”还可被视为包括单独或联合地执行指令1210以执行在此所讨论的任何一种或多种方法的机器的集合。

机器1200可以包括处理器1204、存储器/存储设备1206和I/O组件1218,其可以被配置为例如经由总线1202彼此通信。存储器/存储设备1206可以包括存储器1214,诸如,主存储器或其它存储设备,以及存储单元1216,两者都可由处理器1204诸如经由总线1202访问。存储单元1216和存储器1214存储体现在此描述的任何一种或多种方法或功能的指令1210。在机器1200的执行期间,指令1210还可以完全或部分地驻留在存储器1214内、存储单元1216内、处理器1204中的至少一个处理器内(例如,处理器的高速缓存器内)、或其任何合适的组合。因此,存储器1214、存储单元1216、和处理器1204的存储器是机器可读介质的示例。

I/O组件1218可以包括各种组件,以接收输入、提供输出、产生输出、发送信息、交换信息、采集测量等。在特定机器1200中包括的特定I/O组件1218将取决于机器的类型。例如,诸如移动电话的便携式机器可能包括触摸输入设备或其它此类输入机构,而无头服务器机器可能不包括此类触摸输入设备。可以理解,I/O组件1218可以包括图12中未示出的许多其它组件。I/O组件1218根据功能分组仅仅是为了简化以下讨论,并且分组决不是限制性的。在各种示例实施例中,I/O组件1218可以包括输出组件1226和输入组件1228。输出组件1226可以包括可视组件(例如,显示器,诸如等离子显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT))、声学组件(例如扬声器)、触觉组件(例如,振动电机、电阻机构)、其它信号发生器等等。输入组件1228可以包括字母数字输入组件(例如,键盘、配置为接收字母数字输入的触摸屏、光电键盘或其它字母数字输入组件)、基于点的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其它指向仪器)、触知输入组件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏,或其它触知输入组件)、音频输入组件(例如,麦克风)等。

在进一步的示例实施例中,I/O组件1218可以包括生物度量组件1230、运动组件1234、环境的环境组件1236或定位组件1238,以及多种其它组件。例如,生物度量组件1230可包括检测表达(例如手部表达、面部表情、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、汗水或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的组件。运动组件1234可包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如陀螺仪)等。环境组件1236可包括例如照明传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近度传感器组件(例如,检测附近物体的红外传感器)、气体传感器(例如,用于为了安全而检测危险气体浓度或测量大气中的污染物的气体检测传感器)或可能提供与周围物理环境相对应的指示、测量或信号的其它组件。定位组件1238可包括定位传感器组件(例如,全球定位系统(GPS)接收器组件)、高度传感器组件(例如,高度计或检测气压的气压计,从该气压可以导出高度)、取向传感器组件(例如,磁力计)等。

通信可以使用各种技术来实现。I/O组件1218可以包括通信组件1240,其可操作以分别经由耦接器1222和耦接器1224将机器1200耦接到网络1232或设备1220。例如,通信组件1240可包括网络接口组件或与网络1232接口连接的另一合适设备。在另外的示例中,通信组件1240包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、

此外,通信组件1240可检测标识符或包括可操作以检测标识符的组件。例如,通信组件1240可包括射频识别(RFID)标签读取器组件、NFC智能标签检测组件、光学读取器组件(例如,光学传感器,其用于检测诸如通用产品代码(UPC)条形码的一维条形码、诸如快速响应(QR)代码、Aztec代码、数据矩阵、数字图形、最大码、PDF417、超码、UCC RSS-2D条形码和其它光学代码的多维条形码)或声学检测组件(例如,用于识别标记的音频信号的麦克风)。此外,可以经由通信组件1240来导出可以指示特定位置等的各种信息,诸如经由因特网协议(IP)地理位置的位置、经由

词汇表

在该上下文中的“载波信号”是指能够存储、编码或承载用于由机器执行的指令的任何无形介质,并且包括数字或模拟通信信号或其它无形介质以便于此类指令的通信。可以使用传输介质经由网络接口设备并使用许多公知的传输协议中的任何一个传输协议来通过网络发送或接收指令。

在该上下文中的“客户端设备”是指与通信网络接口连接以从一个或多个服务器系统或其它客户端设备获得资源的任何机器。客户端设备可以是但不限于移动电话、台式计算机、膝上型计算机、便携式数字助理(PDA)、智能电话、平板计算机、超级本、上网本、多处理器系统、基于微处理器或可编程的消费电子产品、游戏控制台、机顶盒或用户可用其访问网络的任何其它通信设备。

在该上下文中的“通信网络”是指网络的一个或多个部分,该网络可以是自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、因特网、因特网的一部分、公共交换电话网(PSTN)的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、

在该上下文中的“短时消息”是指可在受时间限制的持续时间期间访问的消息。短时消息可以是文本、图像、视频等。短时消息的访问时间可以由消息发送者设置。可替代地,访问时间可以是默认设置或由接收者指定的设置。无论设置技术如何,消息是暂态的。

在该上下文中的“机器可读介质”是指能够临时或永久地存储指令和数据的组件、设备或其它有形介质,并且可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存、光学介质、磁介质、高速缓冲存储器、其它类型的存储器(例如,可擦除可编程只读存储器(EEPROM))和/或其任何合适的组合。术语“机器可读介质”应被视为包括能够存储指令的单个介质或多个介质(例如,集中式或分布式数据库,或相关联的高速缓存和服务器)。术语“机器可读介质”还可被视为包括能够存储由机器执行的指令(例如,代码)的任何介质或多个介质的组合,使得指令在由机器的一个或多个处理器执行时使机器执行在此描述的任何一种或多种方法。因此,“机器可读介质”是指单个存储设备或设备,以及包括多个存储设备或设备的“基于云的”存储系统或存储网络。术语“机器可读介质”排除信号本身。

在该上下文中的“组件”是指具有由功能或子例程调用、分支点、应用程序接口(API)或提供特定处理或控制功能的分区或模块化的其它技术定义的边界的设备、物理实体或逻辑。组件可以经由它们的接口与其它组件组合以执行机器过程。组件可以是被设计用于与其它组件一起使用的封装功能硬件单元,以及通常执行相关功能的特定功能的程序的一部分。组件可以构成软件组件(例如,在机器可读介质上体现的代码)或硬件组件。“硬件组件”是能够执行某些操作的有形单元,并且可以以某种物理方式配置或布置。在各种示例实施例中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或计算机系统的一个或多个硬件组件(例如,处理器或一组处理器)可以通过软件(例如,应用或应用部分)将其配置为操作以执行如在此所述的某些操作的硬件组件。硬件组件还可以机械地、电子地或其任何合适的组合来实现。例如,硬件组件可以包括永久配置为执行某些操作的专用电路或逻辑。硬件组件可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件组件还可以包括由软件临时配置以执行某些操作的可编程逻辑或电路。例如,硬件组件可以包括由通用处理器或其它可编程处理器执行的软件。在由该软件配置后,硬件组件就成为特定的机器(或机器的特定组件),其被独特地定制以执行配置的功能并且不再是通用处理器。应当理解,可以由成本和时间考虑来驱动在专用和永久配置的电路中或在临时配置的电路(例如,由软件配置)中机械地实现硬件组件的决定。因此,短语“硬件组件”(或“硬件实现的组件”)应该被理解为包含有形实体,即物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)的实体,以某种方式操作或执行在此所述的某些操作。考虑其中硬件组件被临时配置(例如,编程)的实施例,不需要在任何一个时刻配置或实例化硬件组件中的每个硬件组件。例如,在硬件组件包括由软件配置成为专用处理器的通用处理器的情况下,通用处理器可以在不同时间被配置为相应的不同的专用处理器(例如,包括不同的硬件组件)。软件相应地配置特定的处理器或多个处理器,例如,在一个时刻构成特定的硬件组件,并在不同的时刻构成不同的硬件组件。硬件组件可以向其它硬件组件提供信息并从其接收信息。因此,所描述的硬件组件可以被视为通信地耦接。在同时存在多个硬件组件的情况下,可以通过在两个硬件组件之间或更多个硬件组件之中的信号传输(例如,通过适当的电路和总线)来实现通信。在其中在不同时间配置或实例化多个硬件组件的实施例中,例如通过对多个硬件组件可访问的存储器结构中的信息的存储和取得,可以实现该硬件组件之间的通信。例如,一个硬件组件可以执行操作并将该操作的输出存储在与其通信耦接的存储器设备中。然后,另一硬件组件可以稍后访问存储器设备以取得和处理所存储的输出。硬件组件还可以启动与输入或输出设备的通信,并且可以在资源(例如,信息集合)上操作。在此描述的示例方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器来执行。无论是临时配置还是永久配置,该处理器可以构成处理器实现的组件,其用于执行在此描述的一个或多个操作或功能。如在此所使用的,“处理器实现的组件”是指使用一个或多个处理器实现的硬件组件。类似地,在此描述的方法可以至少部分地由处理器实现,其中特定的处理器或多个处理器是硬件的示例。例如,方法的操作中的至少一些操作可以由一个或多个处理器或处理器实现的组件来执行。此外,一个或多个处理器还可以操作以支持“云计算”环境中的相关操作的性能或作为“软件即服务”(SaaS)。例如,操作中的至少一些操作可以由一组计算机(例如,包括处理器的机器)执行,这些操作可以经由网络(例如,因特网)并且经由一个或多个适当的接口(例如,应用程序接口(API))访问。操作中的某些操作的性能可以在处理器之间分配,不仅驻留在单个机器内,而且部署在多个机器上。在一些示例实施例中,处理器或处理器实现的组件可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其它示例实施例中,处理器或处理器实现的组件可以分布在多个地理位置上。

在该上下文中的“处理器”是指根据控制信号(例如,“命令”、“操作码”、“机器代码”等)操纵数据值以及产生应用于操作机器的对应输出信号的任何电路或虚拟电路(由在实际处理器上执行的逻辑模拟的物理电路)。例如,处理器可以是中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)或其任何组合。处理器可以进一步是具有可以同时执行指令的两个或更多个独立处理器(有时称为“核”)的多核处理器。

在该上下文中,“时间戳”是指识别特定事件何时发生的字符序列或编码信息,例如给出日期和一天中的时间,有时精确到秒的分数。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号