《IPTV终端中的方法和装置.pdf》由会员分享,可在线阅读,更多相关《IPTV终端中的方法和装置.pdf(22页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102870428 A (43)申请公布日 2013.01.09 C N 1 0 2 8 7 0 4 2 8 A *CN102870428A* (21)申请号 201180018230.5 (22)申请日 2011.02.02 61/322444 2010.04.09 US 12/878434 2010.09.09 US H04N 21/472(2011.01) G06F 3/048(2013.01) (71)申请人瑞典爱立信有限公司 地址瑞典斯德哥尔摩 (72)发明人 O.安德森 N.方德贝格 (74)专利代理机构中国专利代理(香港)有限公 司 72001 代理人杨。
2、美灵 朱海煜 (54) 发明名称 IPTV终端中的方法和装置 (57) 摘要 本发明涉及一种方法和一种万维网引擎。根 据本发明的第一方面,提供了配置用于诸如STB (机顶盒)等ITF(IPTV终端功能)的万维网引擎, 万维网引擎包括与使能显示应用的API相关联的 应用框架。应用框架包括用于存储至少两个应用 的存储器,其中,应用相对于彼此以分层树结构布 置。应用框架还包括应用管理器,包括用于接收 例如按键等事件的接收单元和用于控制调度的控 制器。控制器可包括用于封包和解封事件的事件 封包器和用于将封包的事件通过应用树向下传送 的调度器。对于每个应用节点(根节点也是同样), 应用管理器配置成确定事。
3、件是否应由当前应用处 理。 (30)优先权数据 (85)PCT申请进入国家阶段日 2012.10.09 (86)PCT申请的申请数据 PCT/SE2011/050109 2011.02.02 (87)PCT申请的公布数据 WO2011/126423 EN 2011.10.13 (51)Int.Cl. 权利要求书1页 说明书9页 附图11页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 9 页 附图 11 页 1/1页 2 1. 一种在配置用于IPTV终端功能的万维网引擎中的方法,所述万维网引擎包括与使 能显示应用的应用编程接口相关联的应用框架,所述方法。
4、包括: 存储至少两个应用,其中所述应用相对于彼此以分层树结构布置, 接收以至少一个应用为目标的事件,以及 控制以至少一个应用为目标的所接收事件的调度,其中所述控制还包括调度所述接收 事件到目标应用,为每个应用确定所述事件是否应由当前应用处理,并且如果它应被处理, 则所述方法包括为所述当前应用处理所述事件,以及如果它不应被处理,则所述方法包括 将所述事件调度到所述分层树结构中的随后应用。 2. 根据权利要求1所述的方法,其中所述控制还包括在所述调度前封包所述事件,以 及其中在所述处理前解封所述事件。 3. 根据权利要求1所述的方法,其中通过查看所述事件并且检查所述事件在所述当 前应用上是否适用,。
5、来执行为每个应用确定所述事件是否应由所述当前应用处理。 4. 根据权利要求1所述的方法,其中为每个应用确定所述事件是否应由所述当前应 用处理由所述应用管理器执行。 5. 根据权利要求1所述的方法,其中所述应用框架配置成使用基于文档对象模型DOM 的模型来构建所述应用。 6. 根据权利要求1所述的方法,其中所述ITF是机顶盒、移动终端或PC任何之一。 7. 一种IPTV终端,在显示装置上实现使能显示万维网应用的应用框架,所述应用框 架包括: 存储器,存储以分层树结构组织的两个或更多个应用;以及 应用管理器,接收以所述分层树结构中的所述应用之一为目标的事件,所述应用管理 器包括: 控制器,确定所述。
6、分层树结构中的第一应用是否是所述目标应用,以及 调度器,如果所述第一应用不是所述目标应用,则调度所述事件到所述分层树结构中 的第二应用。 8. 如权利要求7所述的计算装置,其中所述应用管理器还包括用于封包和解封事件 的事件封包器。 9. 如权利要求7所述的计算装置,其中所述控制器存储指示用于所述事件的目标应 用的信息。 10. 如权利要求7所述的计算装置,其中所述应用框架使用基于文档对象模型(DOM) 的模型来组织所述应用。 11. 如权利要求7所述的计算装置,被包含在机顶盒、移动终端或个人计算机中。 权 利 要 求 书CN 102870428 A 1/9页 3 IPTV 终端中的方法和装置 。
7、0001 相关申请 本申请要求2010年4月9日提交的美国临时专利申请61/322444的优先权,该申请通 过引用结合于本文中。 技术领域 0002 本发明的实施例涉及IPTV(因特网协议电视)终端中的事件管理,并且具体地说, 涉及在IPTV装置中可用的应用对事件的处理。 背景技术 0003 对IPTV提供商提供可扩展解决方案的需求在增大,其中,最终用户未被限定到有 限的特征集,而是能够结合传统TV服务下载和运行新应用。 0004 对于在IPTV解决方案中使用的万维网应用,主要现存技术是W3C小工具,它定义 用于也称为小工具的万维网应用的封装和输送方法及登录小工具的机制。 0005 应用框架在。
8、客户端侧上运行,并且负责小工具的加载,管理和布局。W3C(万维网 联盟)小工具规范未定义小工具执行的应用/小工具框架。相反,不同的细分市场已为适合 其特定细分市场的小工具执行定义了其自己的应用管理器。 0006 在传统应用模型中,在显示栈的顶部的应用是焦点应用,并且接收来自用户的输 入事件。这例如能够在基于Windows的PC上看到,应用(程序)在PC桌面的矩形区域向用 户显示。在上面显示的应用是焦点应用,并且因此接收所有输入事件,例如,键和鼠标事件。 0007 在适用于IPTV的应用模型中,要求稍有不同。预期应用以类似的方式布局,但不 希望最上面的应用始终接收所有输入事件。例如,考虑显示广播。
9、的TV频道,在TV上全屏显 示的应用。在此应用的上面是在屏幕的小区域中显示的天气小工具。天气小工具在处于焦 点中时对按向左/向右键做出反应,但即使它是在焦点中,基础广播应用也必须能够对按 向上/向下键做出反应,这是因为它们用于频道转换,并且用户预期频道转换始终有效。 发明内容 0008 因此,最好是实现适用于IPTV解决方案的事件截接,这暗示着允许焦点应用外的 其它应用截接事件。 0009 为实现适用于IPTV解决方案的事件截接,本发明的实施例引入了允许焦点应用 外的其它应用截接事件的概念。 0010 根据本发明的实施例,事件截接通过事件封包实现。应用框架可使用基于DOM的 模型来构建框架中的。
10、所有应用。此基于DOM的模型使用基于DOM事件的模型以便处理在整 个事件模型中的事件。由于IPTV解决方案中的例如按键事件等特定事件始终以可能不是 焦点应用的特定应用为目标,因此,特定事件必须可由目标特定应用识别但仍可作为普通 事件处理。为实现此操作,根据本发明的实施例,引入了事件封包。在以特定应用为目标的 事件在应用模型中发生时,应用管理器在eventWrapper结构中封包事件,并且通过事件模 说 明 书CN 102870428 A 2/9页 4 型调度它。在它到达目标特定应用时,如进一步解释的一样,它被解封并且原事件调度在目 标上。 0011 特定应用识别预期用于所述特定应用的事件,并且。
11、识别的事件因此应不象在现有 技术中一样继续到焦点应用。通过引入事件封包,DOM事件模型扩展到在多文档(即,多应 用)情形中适用。这意味着来自DOM事件的所有惯例也在多应用环境中变得有用。这些惯 例从特征角度而言(应用控制允许其子应用处理的事件类型的能力、多个应用共享事件的 能力等)和从实现角度而言(象浏览器等已经包含对DOM事件的支持并且可在支持应用框架 时再使用此支持的万维网技术用户代理器)对于应用环境均是十分有用的。 0012 本发明的实施例有关的目的因此是即使某个应用不是焦点应用,也使得事件能够 由该应用处理。 0013 根据第一方面,这由配置用于ITF的万维网引擎中的方法实现,万维网引。
12、擎包括 与使能显示应用的API相关联的应用框架。在方法中,存储至少两个应用,其中,应用相对 于彼此以分层树结构布置。接收以至少一个应用为目标的事件,该应用也称为目标应用。方 法还包括以至少一个应用为目标的接收事件的调度的控制。这暗示着不是焦点应用的应用 能够接收和处理事件。控制还包括调度接收事件到目标应用,并且为每个应用确定事件是 否应由当前应用处理,并且如果它应被处理,则方法包括为当前应用处理事件,并且如果它 不应被处理,则方法包括调度事件到分层树结构中的随后应用。 0014 根据一个实施例,控制还包括在调度前将事件封包,并且事件随后在处理前被解 封。 0015 根据本发明的一个实施例,通过。
13、查看事件并且检查事件在当前应用上是否适用, 来执行为每个应用确定封包的事件是否应由当前应用处理。备选,确定由应用管理器执行。 0016 实施例的目的还根据第二方面由配置用于ITF的万维网引擎实现,万维网引擎包 括与使能显示应用的API相关联的应用框架。应用框架包括用于存储至少两个应用的存储 器,其中,应用相对于彼此以分层树结构布置。应用管理器包括用于接收以至少一个应用为 目标的事件的接收器和用于控制以至少一个应用为目标的事件的调度的控制器。应用管理 器还包括用于向目标应用调度接收事件的调度器,并且控制器还配置成为每个应用确定接 收事件是否应由当前应用处理。 0017 根据本发明的一实施例,控制。
14、器包括用于封包和解封接收事件的事件封包器。 0018 根据又一实施例,控制器还配置成查看事件并且检查事件在当前应用上是否适用 以确定事件是否应由当前应用处理。备选,应用管理器还配置成存储哪个应用是事件的目 标应用的信息。 0019 此外,根据一实施例,应用框架配置成使用基于文档对象模型DOM的模型来构建 应用,并且ITF可以是机顶盒、移动终端或PC的任何之一。 0020 本发明的实施例有关的优点是它允许在应用之间的共存方面比在现有应用框架 中可用内容方面有更大的灵活性。此灵活性在IPTV应用环境中是至关重要的。 附图说明 0021 图1示出根据本发明的实施例的应用模型和利益相关者优先级的示例。。
15、 0022 图2示出根据本发明的实施例的应用框架。 说 明 书CN 102870428 A 3/9页 5 0023 图3示出根据本发明的实施例在应用管理器中加载单个文件/文档时的应用模 型。 0024 图4示出根据本发明的实施例在右侧的在应用管理器中加载多个应用时的应用 模型和在左侧的应用模型的可视化。 0025 图5示出根据本发明的实施例在应用模型中的DOM俘获气泡阶段。 0026 图6示出显示广播的Tv频道的TV应用。 0027 图7示出根据本发明的实施例的事件封包。 0028 图8和9示出根据本发明的实施例的装置。 0029 图10是本发明的一实施例的流程图。 具体实施方式 0030 下。
16、面将参照示出本发明的实施例的附图,更全面地描述本发明的实施例。然而,本 发明的实施例可以许多不同的形式实施,并且不应视为限于本文所述的实施例;相反,这些 实施例的提供使得此公开将是全面和完整的,并且将本发明的范围全面传达给本领域的技 术人员。在图形中,类似的标号表示类似的单元。 0031 另外,本领域的技术人员将理解,本文下面所述的部件和功能可使用结合按照程 序工作的微处理器或通用计算机起作用的软件和/或使用专用集成电路(ASIC)实现。也 将理解,虽然当前实施例主要以方法和装置的形式描述,但实施例也可在计算机程序产品 中及在包括计算机处理器和耦合到处理器的存储器的系统中实施,其中存储器编码有。
17、可执 行本文公开功能的一个或多个程序。 0032 本发明的实施例概括定义适用于W3C小工具和万维网应用的应用框架。此外,本 发明的实施例设计为可轻松扩展以满足将来要求,并且也能够用于TV环境外的其它环境。 0033 OIPF(开放IPTV论坛)DAE(声明型应用环境)规范v.1.1规范包含应用管理器和 对应应用模型的定义。OIPF中也有在进行的工作项以添加W3C小工具支持到DAE应用模 型。本发明的实施例部分与DAE应用模型一致。然而,能够注意到一个主要的差别: DAE中的应用管理器只显露应用的扁平列表。然而,在本发明的实施例中,应用布置在 分层树模型中,并且树模型直接显露于应用。这暗示着实施。
18、例与每个用户代理器已经支持 的DOM(文档对象模型)模型一致,并且它也使得基于DOM的事件模型可能用于功能强大并 且与现有万维网标准兼容的应用。DOM是用于表示在HTML、XHTML和XML文档中的对象和 与其交互的跨平台和语言无关的协定。DOM的方面(如其“元素”)可在使用的编程语言的语 法内处理和操控。DOM的公共接口在其应用编程接口(API)中指定。 0034 术语和定义: 应用编程接口(API)是由软件程序为使能与其它软件的交互而实现的接口,类似于用 户接口促进人与计算机之间交互的方式。API由应用、库和操作系统实现,以确定程序员应 该采用以使用其服务的词汇和调用协定。它可包括用于在A。
19、PI接口的消费者与实现者之间 进行通信的例程、数据结构、对象类、协议的规范,其使得万维网应用能够得到平台上本机 实现的功能性。 0035 万维网引擎是本机组件,万维网应用在其中执行。万维网浏览器是万维网引擎的 典型示例。 说 明 书CN 102870428 A 4/9页 6 0036 应用框架是用于管理和显示万维网应用和小工具的整个客户端侧环境。因此,万 维网应用一般被视为包括基于DOM的标记格式与浏览器支持语言的组合,一般为一个SVG 或HTML文档/文件与JavaScript代码。此外,在软件工程中,万维网应用是通过诸如因特 网或内部网等网络经万维网浏览器访问的应用。术语万维网应用也可意味。
20、着在浏览器控制 环境(例如,Java applet)中托管或以浏览器支持的语言(如JavaScript,与象HTML等浏览 器渲染标记语言组合)编码并且依赖常见万维网浏览器使应用可执行的计算机软件应用。 0037 小工具在W3C小工具规范系列中定义。基本上,小工具能够视为带有可下载并在 客户端侧本地存储的定义封装方案的万维网应用。小工具因此适用于在线和离线执行。在 此描述的范围中,小工具定义扩展到指出小工具是万维网应用的专用化,即,它具有万维网 应用的所有属性和W3C定义的小工具行为。然而,小工具能够在装置上安装(本地存储),不 加载到应用框架中,而应用从远程位置直接加载到框架中(无本地存储应。
21、用的方式)。 0038 要注意的是,虽然小工具鉴于其属性适合在UA(用户代理器)中本地存储(安装), 但没有必须安装小工具的要求。用户代理器例如可具有阻止其在本地存储小工具的存储限 定,但仍可允许小工具执行。从这个意义上来说,小工具会表现得完全象万维网应用一样, 但仍受小工具特定属性影响。 0039 在本说明书的上下文中,应用被视为是由应用管理器管理并依附于本说明书中定 义的接口和机制的万维网应用或小工具。要注意的是,此说明书以此类方式编写,使得万维 网应用(例如,基本HTML页面)或小工具能够充当应用而无需在万维网应用/小工具的标记 或javascript代码中进行任何修改。 0040 因此。
22、,在本说明书通篇中,术语“应用”用于万维网应用和小工具两者。术语小工 具只在明确论述的是应用的小工具专用化时使用。 0041 应用管理器是控制应用的布局和管理的机制。应用管理器由平台提供商控制。 0042 用户代理器(UA)是也可在此说明书适用的范围内称为小工具用户代理器的实 现。在IPTV段中的用户代理器经常称为ITF(IPTV终端功能);然而,在本说明书通篇中使 用更普遍的术语UA。 0043 根据本发明的实施例,下面定义了不同的利益相关者,并且定义了用于利益相关 者控制的模型。在图1中示出了用于利益相关者控制的模型。 0044 平台利益相关者是平台的提供商,一般是STB或TV设备的提供商。
23、。平台利益相关 者有兴趣控制应用以便使应用布局与平台的本机用户体验(UX)一致。作为一个示例,TV设 备提供商X可希望在与TV的本机观感一致的菜单中显示可用小工具,而与在特定时间点可 能运行的服务无关。 0045 服务利益相关者是服务的提供商,一般是提供TV服务到其订户的运营商。运营商 有兴趣提供其自己的服务UX(用户体验),并且尽可能多地隐藏本机UX。这包括提供应用 控制为服务UX的集成部分的能力。例如,TV服务提供商Y可希望在服务提供商的门户中 集成的菜单中显示可用小工具。 0046 应用利益相关者是特定应用的提供商。应用利益相关者可有兴趣控制来自本身内 的其它应用,例如以显示来自相同应用。
24、提供商的应用列表。 0047 定义的利益相关者以如下从高到低的顺序被优先处理:平台利益相关者服务利 益相关者应用利益相关者。最高优先级决定,即,如果平台利益相关者已决定所有应用将 说 明 书CN 102870428 A 5/9页 7 通过平台控制的UI(用户接口)控制,则服务或应用利益相关者无法推翻此决定。 0048 控制利益相关者优先级的基本机制是通过应用管理器和它控制的应用模型。利益 相关者控制应用管理器,并且应用管理器又控制来自应用的有关应用属性的修改和其它应 用的添加/调用的所有请求。此处,平台利益相关者由于控制应用管理器,因此,它有机会 限定其它利益相关者的能力。此外,应用模型具有树。
25、结构,并且根节点是平台控制的节点, 其中平台利益相关者可添加逻辑以限定其它利益相关者的控制,例如通过停止某些事件遍 历模型。类似地,在根节点下的节点一般由服务利益相关者控制,并且能够因此包含类似的 逻辑以限定应用利益相关者控制。 0049 由应用管理器控制的应用模型可以是普通DOM树模型,模型中所有节点是应用。 在此情况下,应用继承DOM3(DOM第3级核)元素ElementTraversal的子集和使得遍历应 用模型和添加以及从中删除应用的节点接口。 0050 树中的根节点是由应用管理器控制的隐藏系统节点。它能够从不被删除或修改, 并且所有应用添加为隐藏节点的子节点。根节点例如能够是内置本机。
26、小工具栏。或者,它 能够只是非可视应用,停止某些事件在模型中向下传播以便阻塞所有小工具使用某个功能 性,例如,关闭TV。 0051 就例如普通SVG文件等由UA显示的单个万维网应用而言,模型会如图3所示,该 图示出在应用管理器中加载单个文件/文档时的应用模型。 0052 除根应用外,应用框架中的每个应用具有相关联文档对象。文档表示特定应用 的DOM,并且与模型中的任何其它应用无关,即,应用具有在单独脚本上下文中运行的单独 DOM。 0053 更大应用树的示例在图4中示出,该图示出在应用管理器中加载多个应用时的应 用模型(在右侧)。左侧图形示出可在屏幕上如何显示应用。子节点能够从其父节点继承属 。
27、性。例如,如果删除父项,则删除子项,但能够为即将到来的版本考虑其它属性,例如,透明 性。如果用户能够表明应用将是半透明的,则子应用也应是半透明的。 0054 根据本发明的实施例的应用管理器可使用基于DOM2事件模型的事件模型。 0055 DOM树中一个且只有一个节点是在特定时间点输入事件(键事件、鼠标事件) 的目标。这意味着诸如键输入等事件将转到目标应用,但在进行该操作之前,它将自顶向下 通过目标节点的所有父项(祖先)到目标应用。这称为俘获阶段。根据本发明的实施例,每 个经过的节点可俘获事件,即停止事件。一旦事件已到达目标应用,目标应用便能够俘获事 件,即停止事件,或者让它再次向上经过相同节点。
28、,这称为气泡阶段。俘获和气泡阶段是DOM 事件模型的一部分。 0056 与事件目标始终是当前焦点应用的现有技术解决方案不同,本发明的实施例引入 了一种模型,其中,目标应用能够是与作为当前焦点应用的应用无关的任何应用。然而, DOM2的俘获和气泡阶段均受本发明的实施例支持。 0057 根据DOM2事件模型,事件从根开始,并且在俘获阶段期间向目标应用遍历树。根 据本发明的实施例,通过使用分层模型,如果每个经过的应用是目标应用,则应用可俘获事 件,而与应用是否是焦点应用无关。在事件到达目标应用时,它由目标应用处理。如果目标 应用不俘获事件,则事件再次向上遍历树直到根,这称为气泡阶段。每个通过的应用可。
29、停止 (即俘获)事件进一步起泡。 说 明 书CN 102870428 A 6/9页 8 0058 图5示出DOM2俘获/气泡阶段,其中,事件向称为事件目标的目标应用遍历。 0059 为使任何应用能够成为目标应用,而与哪个应用是焦点应用无关,组合了分层应 用模型和事件封包器。应用管理器包括事件封包器,并且事件封包器配置成封包应向目标 应用遍历的事件。封包的事件因此遍历通过应用树。每个应用配置成查看封包的事件以便 检查当前应用是否应处理事件。如果当前应用确定它是目标应用,则应用管理器解封事件, 并且当前应用接收解封的事件并将解封的事件作为普通事件处理。如果当前应用确定它不 是目标应用,则应用管理器。
30、调度封包的事件到树中的随后应用。图2示出根据本发明的一 实施例的应用框架203。应用框架203包括应用管理器200和存储以分层顺序布置的应用 202的存储器204。此外,应用管理器200包括配置成接收事件的接收器205和配置成控制 调度的控制器207。控制器207控制调度器206的调度,并且还包括事件封包器201。由于 应用管理器控制应用202,因此,应用管理器200知道它是否应解封封包的事件,或者它是 否应将封包的事件调度到随后应用。 0060 通过在应用的文档节点添加事件监听器以监听eventWrapper事件,作为目标应 用的祖先的所有应用能够登记以监听事件。因此,为使任何万维网应用接收。
31、事件,它必须登 记用于该事件的监听器。如果用户使用鼠标点击应用,但应用尚未登记鼠标事件监听器,则 将不会发生任何情况。这同样适用于eventWrapper事件。eventWrapper事件是由事件封 包器201执行的特殊事件,事件封包器201在实际事件通过应用树的路途中将实际事件封 包。 0061 在eventWrapper事件到达目标应用时,即事件被解封时,将封包的事件调度在与 目标应用相关联的文档上,正如会在单文档环境中一样。解封的事件由文档以普通方式处 理。在离开文档时,如果未被俘获,则它在eventWrapper事件中再次被封包并开始沿应用 树向上冒泡。 0062 事件封包由以下示例例。
32、示: 1. 应用管理器200经接收器205通过系统接收事件(e)(例如,键“1”)。事件的目标 是在框架203中的存储器204中存储的应用202之一。 0063 2. 应用管理器200的事件封包器201创建eventWrapper事件(ew)并将事件封 包。 0064 3. 应用管理器200将封包的事件沿模型树向下朝目标应用传递。封包的事件由 它经过的每个应用202查看以便检查封包的事件是否适用于当前应用。如果封包的事件适 用于当前应用,则那会暗示当前应用是目标应用。 0065 4. 在封包的事件到达目标应用时,应用管理器200将事件解封,并且在目标应用 上调度解封的事件。 0066 5. 如。
33、果事件未由目标应用俘获,则应用管理器将事件放回事件封包器中,并且将 包含实际事件的封包事件沿模型向上起泡。这适用于在该应用不关心其它应用是否处理事 件的情况。因此,如果该应用不关心其它应用是否使用事件,则它不应俘获它。 0067 下面结合图6进一步例示此行为。 0068 考虑显示广播的TV频道的TV应用601。天气小工具602在TV应用601的上面显 示,并且天气小工具602具有焦点。在天气小工具具有焦点时,天气小工具监听用于在不同 日期的广播之间导航的向左/向右按键。 说 明 书CN 102870428 A 7/9页 9 0069 即使天气小工具有焦点,TV应用想要允许用户通过正常向上/向下。
34、按键更改频 道。由于应用根据本发明的实施例以分层模型布置,因此,除焦点应用外的其它应用能够处 理事件。在此情况下,天气小工具由TV应用添加并且是TV应用的子项。因此,TV应用是天 气小工具的父项,所有事件将在俘获阶段期间由TV应用沿路向下传递到天气小工具。相应 地,TV应用将检查事件是否是按压向上或向下键。如果情况为真,则TV应用将处理事件, 否则,应用管理器将进一步调度事件到天气小工具。 0070 如上所解释的一样,应用管理器将事件封包,并且通过分层树模型调度事件。封包 的事件包括目标应用的信息。在封包事件经过的每个应用,当前应用查看封包的事件以确 定事件是否应由当前应用处理。如果当前应用应。
35、处理事件,这暗示当前应用是目标应用,则 应用管理器收到通知,并且将事件解封,使得应用能够将事件作为普通事件处理。在应用 中,定义了应用应如何处理事件。这通过下面的代码示例例示: TV应用: 天气应用: 说 明 书CN 102870428 A 8/9页 10 如上所提及的一样,在诸如键事件等输入事件在UA中发生时,应用管理器的事件封包 器通过eventWrapper事件将事件封包,并且如图7a和7b所示将它沿应用树向下发送。 0071 在图7a-7c所示示例中,第一站是应用树的隐藏根节点,如图7a所示。因此,平台 利益相关者如果愿意,则有机会处理和俘获特定事件。例如,特定键可始终与本机平台菜单 。
36、相关联,并且应从不用于任何其它操作。此键会在根节点中俘获。 0072 从根节点,封包的事件沿树向下向应用管理器控制的目标移动,如图7b所示。下 一站是TV应用节点。此处,TV应用将根据上面的代码示例检查键事件,并且在事件与频道 更改事件有关时停止事件。 0073 如果事件转而与天气小工具的管理有关,则TV应用将让封包的事件经过。其下一 站是实际事件目标,如图7c所示的天气应用。 0074 在目标应用,应用管理器通过将事件解封来删除封包事件,并且在适用应用文档 上调度键事件。根据上面的代码示例,天气应用会在按向左/向右键的情况下处理和停止 事件。对于所有其它情况,事件会不停止。 0075 如果事。
37、件不停止,则应用管理器在eventWrapper事件中将事件解封,并且让它通 过树向上起泡以完成俘获/气泡阶段。要注意的是,此最后步骤在右侧的图中未示出。 0076 根据本发明的第一实施例,如图8所示,一种万维网引擎配置用于诸如STB(机顶 盒)等ITF(IPTV终端功能),包括与使能显示应用的API相关联的应用框架203。应用框 架203包括用于存储至少两个应用202的存储器204,其中,应用202相对于彼此以分层树 结构布置,并且至少两个应用之一可以是焦点应用。应用框架203还包括应用管理器200, 应用管理器200包括用于接收例如按键等事件的接收单元205和用于控制调度的控制器 207。。
38、根据一个实施例,控制器207包括用于将事件封包和解封的事件封包器201和用于通 过应用树向下传送封包的事件的调度器207。对于每个应用节点(根节点也同样),应用管理 器200配置成通过使用控制器206确定事件是否应由当前应用处理。 0077 因此,应用管理器200的控制器206控制事件的调度。根据一实施例,应用管理器 200的事件封包器201将事件封包,并且调度器207将封包的事件调度到目标应用。对于 说 明 书CN 102870428 A 10 9/9页 11 每个应用,当前应用可配置成查看封包的事件,是否封包的事件应由当前应用处理,或备选 地,应用管理器可配置成在存储器212中存储哪个应用。
39、是用于事件的目标应用的信息。如 果封包的事件应由当前应用处理,则应用管理器200的事件封包器201将用于当前应用的 事件解封,使得事件能够作为普通事件由当前应用处理。如果事件不应由当前应用处理,则 应用管理器200将封包的事件调度到随后的应用。 0078 ITF 210能够从服务器250并且通过使用API 208检索应用202。应用能够如图 9所示在屏幕260上显示。还应注意的是,典型的万维网引擎包括其它组件,如HTML(超文 本标记语言)模型和XML(可扩展标记语言)解析器,但这不在本发明的范围内。 0079 应用管理器可由包括用于执行应用管理器和接收器205、控制器207、调度器206 和。
40、事件封包器201的功能的软件和/或硬件部分的一个或多个处理器实现。 0080 根据本发明的第二实施例,如图10所示,提供了在万维网引擎中的方法。万维网 引擎配置用于ITF,包括与使能显示应用的API相关联的应用框架。方法包括:存储1000至 少两个应用,其中,应用以相对于彼此的分层树结构布置,并且至少两个应用之一是焦点应 用;接收1001事件;以及控制1002以至少一个应用为目标的事件的调度,使得不是焦点应 用的应用能够接收和处理事件。 0081 通过使用应用管理器,控制事件的调度,其中,应用管理器可包括封包和解封事件 的事件封包器。根据本发明的一实施例,方法包括将事件封包1003和调度100。
41、4封包的事 件到目标应用的其它步骤。对于每个应用,确定当前应用是否是目标应用。这能够通过配 置当前应用查看封包的事件,或者让应用管理器在存储器212中存储哪个应用是用于某个 事件的目标应用的信息而完成。如果当前应用是目标应用,并且相应地如果封包的事件应 由当前应用1005处理,则方法包括将用于当前应用的事件解封1006,使得事件能够作为普 通事件由当前应用处理。如果事件不应由当前应用处理,则应用管理器将封包的事件调度 1007到随后的应用。 0082 本发明的分层应用模型允许包括新应用。新应用的包括可通过以下步骤实现: 1. 用户通过调用loadApplication或用于小工具的instal。
42、lWidget + loadApplication,请求新应用。 0083 2. 请求由应用管理器200的API处理。 0084 3. 请求发送到服务提供商或另一内容提供商管理的服务器250。 0085 4. 服务器通过使用普通HTTP GET而发送应用到万维网引擎209来响应请求。如 果服务器250不能提供应用,则将检索不到任何内容。 0086 5. 应用管理器200将新应用包括到树结构中。在新应用添加到树中时,它将自动 显示。 0087 本发明的实施例不限于上述优选实施例。各种备选、修改和等效物可使用。因此, 上述实施例不应视为限制由所附权利要求书定义的本发明的范围。 0088 当然,在不。
43、脱离本发明范围和基本特性的情况下,本发明可以不同于本文所述那 些方式的其它特定方式实现。因此,所示实施例在所有方面均要视为是说明性的而不是限 制性的,并且在随附权利要求书的意义和等同物范围内的所有更改要涵盖在其中。 说 明 书CN 102870428 A 11 1/11页 12 图 1 说 明 书 附 图CN 102870428 A 12 2/11页 13 图 2 说 明 书 附 图CN 102870428 A 13 3/11页 14 图 3 说 明 书 附 图CN 102870428 A 14 4/11页 15 图 4 说 明 书 附 图CN 102870428 A 15 5/11页 16 图 5 说 明 书 附 图CN 102870428 A 16 6/11页 17 图 6 说 明 书 附 图CN 102870428 A 17 7/11页 18 图 7a 图 7b 说 明 书 附 图CN 102870428 A 18 8/11页 19 图 7c 说 明 书 附 图CN 102870428 A 19 9/11页 20 图 8 说 明 书 附 图CN 102870428 A 20 10/11页 21 图 9 说 明 书 附 图CN 102870428 A 21 11/11页 22 图 10 说 明 书 附 图CN 102870428 A 22 。