通用通知流水线制造技术

技术编号:19396759 阅读:17 留言:0更新日期:2018-11-10 05:02
本文所描述的发明专利技术的实施例涉及用于处理用户界面通知的通用方法。设备上的通知流水线用作设备上的应用与设备上的通知表面之间的中介。通知表面向通知流水线注册其自己以成为活动订户。应用或其他进程向通知流水线提交符合相同格式、模式、结构等的通知。通知流水线向订阅的通知表面广播通知,订阅的通知表面又基于通知的内容来确定是否或如何处理和可能显示通知。

【技术实现步骤摘要】
【国外来华专利技术】通用通知流水线
技术介绍
计算的目标是向人们提供信息。假定一个人使用计算设备来访问信息,竞争因素可以与如何以及何时呈现信息有关。例如,用户的目标可能根据可用时间量、用户参与的活动、可用信息的重要性等而变化。可用信息的量和类型以及信息变得可用的频率可以变化很大。此外,显示信息的计算设备具有广泛的功率容量、计算能力、显示尺寸以及输入设备类型。给定的信息可能用于佩戴在手腕上的小设备和在建筑物大厅中的具有大显示器的设备。为了适应信息呈现因素的多样性和复杂性,软件开发人员已经设计了不同类型的通知机制或通知表面。例如,很多操作系统或图形用户外壳为不同的上下文提供不同的通知表面。例如,锁定屏幕或登录屏幕可能具有通知表面,用于启动应用的“主页”或“开始”屏幕可能具有能够显示通知或关于它们的信息的图标,工具或状态栏可能具有可以被激活以显示通知的用户界面元素,或者可以提供“吐司(toast)”通知表面。在任何情况下,这些类型的通知表面通常具有不同的大小,消费不同类型或格式的信息,实现不同的语义,并且通过不同的应用编程接口(API)或协议进行对接。专利技术人已经单独意识到,开发人员变得难以编写可以利用在不同平台上可用的各种通知表面的软件。专利技术人已经意识到,编写用于传播单个信息项的软件的开发人员当前可能需要编写很多代码段,每个代码段针对相应的通知表面进行定制。另外,如果旨在通过同一设备的多个通知表面显示单个通知信息项,则可能需要传输具有不同内容和格式的多个通知消息,从而导致相同信息项的重复传输,可能导致多个进程“唤醒”和接收设备处的其他开销。因此,专利技术人单独已经意识到,在计算设备上提供通用通知机制可以潜在地缓解与通知表面的扩散相关的一些问题。
技术实现思路
包括以下
技术实现思路
仅是为了介绍在以下具体实施方式中讨论的一些概念。本
技术实现思路
并不全面,并且不旨在描述由最后提出的权利要求阐述的所要求保护的主题的范围。本文所描述的专利技术的实施例涉及用于处理用户界面通知的通用方法。设备上的通知流水线用作设备上的应用与设备上的通知表面之间的中介。通知表面可以将自己注册到通知流水线以成为流水线的活动订户。应用或其他进程向通知流水线提交符合相同格式、模式、结构等的通知。通知流水线向订阅的通知表面广播通知,订阅的通知表面又基于通知的内容来确定是否或如何处理和可能显示通知中的信息。下面将参考结合附图考虑的以下具体实施方式来解释很多伴随特征。附图说明从以下根据附图阅读的详细描述将更好地理解本说明书,其中相同的附图标记用于表示所附说明书中的相同部分。图1示出了通知表面图形的示例。图2示出了通知表面可以在其中执行的计算设备和软件环境。图3示出了具有不同的通知表面的计算设备的示例。图4示出了通知表面的未协调使用的示例场景的细节。图5示出了通知流水线的一个实施例。图6示出了通知流水线的另一实施例。图7示出了通知订阅列表如何随时间改变的示例。图8示出了不同的通知表面分别如何处理相同的通知。图9概念性地示出了通知流水线如何使得不同的通知发布者能够向订户指定分类通知意图。图10示出了计算设备的示例。具体实施方式以下讨论的实施例涉及通用通知流水线。首先将总体上描述通知表面,其包括一些图形属性、它们的技术特征以及它们是如何实现的。接下来描述通知流水线。解释发布者订户设计、以及用于将通知流水线集成到现有的通知表面或管理器中的技术。图1示出了可以由同一计算设备显示的通知表面图形的示例。如
技术介绍
中所讨论的,各种通知表面是已知的并且在使用中。本文中描述的实施例可以由现有的和新的通知表面来方便地使用。本文中使用的术语“通知表面”是指计算设备上的可执行软件以及它们生成和控制的图形用户界面(GUI)元素。通常,大多数通知表面已经通过相应的唯一API等对在相关计算设备上执行的任何软件或应用可访问。大多数通知表面具有不同的行为和外观。如图1所示,通知表面通常以动态图标100的形式并入图形用户外壳中:可能出现在图形外壳的“桌面”或侧边栏的信息面板102、吐司小部件104等。作为图形用户外壳的一部分,一些通知表面能够“弹出”或覆盖其他图形。一些通知可以并入登录或锁定屏幕中。一些通知表面可以具有用于解除通知、打开相关内容或应用等的交互式GUI元素108。一些通知表面可以仅以非交互方式显示信息。一些通知表面是自主操作系统进程,而一些通知表面则集成到操作系统中。图2示出了通知表面可以在其中执行的计算设备120和软件环境。计算设备120具有管理进程124的操作系统122,进程124包括窗口系统125,窗口系统125针对一些进程(例如,应用)管理显示在显示器128上的窗口126的显示。计算设备120可以是后面参考图10所描述的各种类型中的任何一种。计算设备120至少具有存储硬件和用于执行操作系统122和进程124的处理器硬件。窗口系统125可以是任何类型的窗口系统,例如平铺、“自由形式”、单个窗口(一次只显示一个应用窗口),等等。进程是公知的操作系统对象,它们是离散地管理的执行单元,通常具有进程标识符、由操作系统122管理的存储器(堆和/或堆栈存储器),并且可以在由操作系统122维持的进程标识符等的进程表中进行管理。图3示出了具有不同的通知表面的计算设备的示例。如上所述,GUI外壳140或环境通常包括不同类型的通知表面。通知表面可以作为相应进程来执行。例如,吐司管理器142、徽章管理器144、登录屏幕146和状态栏148(或侧边栏、工具栏等)可以是相应进程或同一进程的不同组件/接口。一些GUI外壳还包括管理动态图块或图标的外观、显示、布局和用户激活的分片管理器(未示出),其用作应用启动图标以及可以显示所表示的应用的通知的迷你窗口。本地软件元素(通常是应用150)在计算设备120上执行,并且向它们被编程为与之对接的任何通知表面提交通知。为了适应经由网络接口卡152和网络堆栈154从网络接收的远程通知,推送监听器156后台进程可以接收和处理网络通知,例如以超文本传输协议(HTTP)消息的形式。从图3中可以看出,每个通知客户端必须直接与它旨在使用的通知表面进行通信。图4示出了通知表面的未协调使用的示例场景的细节。每个所描绘的通知表面具有它们自己的API142A、144A、148A。图4中的通知的阴影对应于它们相应的API142A、144A、148A的阴影。推送通知服务160可以从用户设备162(例如,智能电话)接收消息,推送通知服务160使用该消息构建通知N1,通知N1经由网络164被推送给推送监听器156,例如作为包含应用的HTTP消息,其标识唯一的统一资源标识符(URI)。推送通知服务160还接收由云服务166从另一用户设备162中继的通知N2。通知N2由推送监听器156接收,推送监听器156将N2传递给应用150(应用1),应用150可以将N2转换成经由API142A(API1)传递给吐司管理器142A的相应的数据结构或对象。云服务166还发起其自己的通知N3和N4。通知N3被直接传输到徽章管理器144的自定义网络监听器,并且通知N4被传输到应用152(应用2),应用152可能在重新格式化或重新打包N4通知之后调用相应的API148A(API3)以向状态栏148提交通知。应用150(应用2)还发起用于徽本文档来自技高网
...

【技术保护点】
1.一种由计算设备执行的方法,所述计算设备包括处理硬件、存储硬件、显示器以及输入设备,所述方法包括:由所述处理硬件执行操作系统,所述操作系统管理由所述处理硬件对进程的执行;执行包括通知流水线的进程,所述通知流水线实现多个功能,所述多个功能至少包括第一功能和第二功能,所述多个功能经由应用编程接口(API)对任意进程可访问;维持订户标识符集合,所述订户标识符集合分别标识订阅所述通知流水线的订户进程;由所述通知流水线经由所述API从发布者进程接收由所述发布者进程提供的通知,每个通知包括相应通知内容有效负载,每个通知内容有效负载被构造为符合相同的格式或模式;以及每次通知由所述通知流水线接收到时,通过所述通知流水线根据所述订户标识符集合向订阅所述通知流水线的任何订户进程传递对应的接收到的所述通知内容有效负载来进行响应,其中每个订户进程接收由所述通知流水线接收到的每个通知内容有效负载。

【技术特征摘要】
【国外来华专利技术】2016.03.31 US 62/316,526;2016.06.15 US 15/183,7791.一种由计算设备执行的方法,所述计算设备包括处理硬件、存储硬件、显示器以及输入设备,所述方法包括:由所述处理硬件执行操作系统,所述操作系统管理由所述处理硬件对进程的执行;执行包括通知流水线的进程,所述通知流水线实现多个功能,所述多个功能至少包括第一功能和第二功能,所述多个功能经由应用编程接口(API)对任意进程可访问;维持订户标识符集合,所述订户标识符集合分别标识订阅所述通知流水线的订户进程;由所述通知流水线经由所述API从发布者进程接收由所述发布者进程提供的通知,每个通知包括相应通知内容有效负载,每个通知内容有效负载被构造为符合相同的格式或模式;以及每次通知由所述通知流水线接收到时,通过所述通知流水线根据所述订户标识符集合向订阅所述通知流水线的任何订户进程传递对应的接收到的所述通知内容有效负载来进行响应,其中每个订户进程接收由所述通知流水线接收到的每个通知内容有效负载。2.根据权利要求1所述的方法,其中通知内容有效负载包括标识所述通知内容有效负载的属性的元素,并且其中每个订户进程实现相应通知图形用户界面(GUI),并且其中每个订户进程基于所述通知内容有效负载中的所述元素来确定是否要更新每个订户进程的相应通知GUI。3.根据权利要求2所述的方法,其中订户进程包括响应于接收到相应通知内容有效负载而显示图形吐司通知的吐司通知应用。4.根据权利要求1所述的方法,其中所述发布者进程使用所述API来发布所述通知,其中当发布者进程通过对所述API的一次调用提交一个通知时,所述一个通知由所述通知流水线发布给所有订户进程。5.根据权利要求1所述的方法,其中所述通知流水线读取所有订户标识符,并且根据所有订户标识符建立与相应标识的订户进程的相应事件链接,并且其中当所述流水线进程接收到新的通知时,通过所述流水线进程触发由所述订户进程接收到和处理的进程间事件,相应订户进程都被通知。6.一种计算设备,包括:处理硬件、存储硬件、显示器以及输入设备;所述存储硬件存储操作系统,所述操作系统被配置为管理由所述处理硬件对进程的执行;所述存储硬件存储通知流水线,所述通知流水线被配置为由...

【专利技术属性】
技术研发人员:M·希丁格徐镭A·T·巴雷斯T·芬内尔
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1