CN102334344A - 处理应用程序的网络设备的架构及该网络设备的控制方法 - Google Patents
处理应用程序的网络设备的架构及该网络设备的控制方法 Download PDFInfo
- Publication number
- CN102334344A CN102334344A CN2010800095270A CN201080009527A CN102334344A CN 102334344 A CN102334344 A CN 102334344A CN 2010800095270 A CN2010800095270 A CN 2010800095270A CN 201080009527 A CN201080009527 A CN 201080009527A CN 102334344 A CN102334344 A CN 102334344A
- Authority
- CN
- China
- Prior art keywords
- application program
- plug
- application
- network equipment
- tabulation
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 107
- 238000012545 processing Methods 0.000 title claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 46
- 238000007689 inspection Methods 0.000 claims description 14
- 238000001914 filtration Methods 0.000 claims description 10
- 238000009434 installation Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 230000011664 signaling Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 57
- 238000007726 management method Methods 0.000 description 24
- 238000012795 verification Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 7
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 4
- 239000012634 fragment Substances 0.000 description 3
- 230000008054 signal transmission Effects 0.000 description 3
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25816—Management of client data involving client authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4826—End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/488—Data services, e.g. news ticker
- H04N21/4882—Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6581—Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Library & Information Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种可以应用于网络设备的插件架构。根据本发明的一个实施方式,用于处理至少一个或更多个应用程序的网络设备包括:主机S/W处理模块,其接收用于执行特定命令的键事件且向插件系统管理器发送所接收的键事件;所述插件系统管理器,其从一个或更多个当前执行的应用程序检查聚焦的特定应用程序,且向聚焦的特定应用程序发送所接收的键事件;以及插件应用程序,其处理所接收的键事件。
Description
发明领域
本发明涉及一种用于执行网络设备中的应用程序和内容的设备和方法。
更具体而言,本发明涉及一种用于处理网络设备中的附加应用程序(additionalapplications)的插件(add-on)架构和一种用于控制该网络设备的方法。
背景技术
近来,具有双向(或双路)特性且使用IP(因特网协议)的网络设备正处于积极的发展中。这种设备在其投放市场时已经装配有内置应用程序。然而,这些应用程序基于由每个设备的制造商提供的API(应用程序编程接口)配置。因此,这种设备不与通过因特网提供的其他各式各样的应用程序兼容。因此,存在难以添加内置应用程序以外的应用程序的问题。
发明内容
根据本发明的实施方式,为了解决上述相关技术网络设备的问题和缺点,本发明提供一种网络设备的架构和用于控制该网络设备的方法,其中该网络设备具有可扩展性和灵活性,可以通过使用网络设备的双向(或双路)特性操作(或执行)以不同于内置应用程序的格式配置的应用程序和内容。
为了实现本发明的技术目的,根据本发明的一个方面,处理至少一个或更多个应用程序的网络设备包括:主机S/W处理模块,该主机S/W处理模块被配置成接收用于执行特定命令的键事件且可选地向插件系统管理器发送所接收的键事件;插件系统管理器,该插件系统管理器被配置成验证至少一个或更多个当前可执行应用程序中被聚焦的特定应用程序且向聚焦的特定应用程序发送所接收的键事件;以及插件应用程序,该插件应用程序被配置成处理所接收的键事件。
根据本发明的另一实施方式,用于对处理至少一个或更多个应用程序的网络设备进行控制的方法包括以下步骤:向服务器发送请求网络设备的认证的信号;从服务器接收识别网络设备的确认认证和非确认认证的识别信号;当识别信号对应于确认网络设备的认证的信号时,从服务器下载应用程序;接收用于执行特定命令的特定键事件,且可选地向插件系统管理器发送所接收的键事件;以及在当前可执行的应用程序中的至少一个或更多个中验证聚焦的特定应用程序,且向聚焦的特定应用程序发送所接收的键事件。
根据本发明的另一实施方式,用于对处理至少一个或更多个应用程序的网络设备进行控制的方法包括以下步骤:向服务器发送请求用于识别至少一个或更多个可下载应用程序的第一列表或请求用于识别至少一个或更多个可下载内容的第二列表的信号;从服务器接收第一列表或第二列表;当从第一列表选择特定应用程序,或者当从第二列表选择特定内容时,显示接收的第一列表或第二列表;向服务器发送请求所选择的应用程序或内容的信号;以及从服务器下载所选择的应用程序或内容。
根据本发明的另一实施方式,用于对处理至少一个或更多个应用程序的网络设备进行控制的方法包括以下步骤:接收用于创建应用程序列表的键事件;搜索已经安装在网络设备中的应用程序;创建搜索的应用程序的列表;显示创建的列表;接收关于从应用程序列表中列出的至少一个或更多个应用程序选择的应用程序的执行请求;通过使用相应应用程序的元数据验证被请求执行的应用程序是否可以正常执行;以及,当验证相应应用程序可以正常执行时,执行相应的应用程序。
根据本发明的实施方式,网络设备便于应用程序和内容的扩展,并且通过提出包括具有用于处理应用程序的独立结构的架构的网络设备,即使在执行应用程序的插件扩展时也可以确保设备稳定性。
附图说明
此后,将参考附图详细描述本发明的特性特征和优选实施方式。
图1例示一框图,该框图示出根据本发明的一个实施方式在处理网络设备中的应用程序的过程中,用于处理键事件的网络设备的过程和结构。
图2例示根据本发明的一个实施方式的网络设备的内部结构的一部分。
图3例示一详细视图,该详细视图示出根据本发明的一个实施方式包括在插件应用程序中的开放API的结构。
图4例示根据本发明的一个实施方式执行插件应用程序的示例性过程。
图5例示在网络设备内递送(deliver)键事件的过程。
图6例示根据本发明的一个实施方式调用插件应用程序的开放API的示例性过程。
图7例示下载和安装插件应用程序的示例性过程。
图8例示根据本发明的一个实施方式正被下载的应用程序的示例性数据结构。
图9例示在网络设备直接访问应用程序分发服务器的情况下,在用于下载和安装插件应用程序的各式各样的方法中,下载和安装插件应用程序的示例性过程。
图10例示一UI显示画面,该UI显示画面示出根据本发明的一个实施方式从应用程序分发服务器接收的应用程序列表(或应用程序的列表)。
图11例示一UI显示画面,该UI显示画面示出根据本发明的另一实施方式从应用程序分发服务器接收的应用程序列表(或应用程序的列表)。
图12例示一UI显示画面,该UI显示画面示出根据本发明的一个实施方式从应用程序分发服务器接收的内容列表(或内容的列表)。
图13例示一UI显示画面,该UI显示画面示出根据本发明的另一实施方式从应用程序分发服务器接收的内容列表(或内容的列表)。
图14例示一UI显示画面,该UI显示画面示出根据本发明的一个实施方式当执行应用程序浏览器时已经存储在网络设备中的应用程序和内容的列表。
图15例示根据本发明的一个实施方式管理应用程序列表(或应用程序的列表)的UI显示画面。
图16例示一框图,该框图示出数字广播接收器的结构,其中根据本发明的一个实施方式,插件架构应用于该数字广播接收器。
具体实施方式
现在将详细参考本发明的优选实施方式,其示例在附图中说明。然而,下面描述的本发明的实施方式可以修改为范围广泛的修改例。而且,因此,应当理解本发明将并不仅仅限于此处提及的本发明的说明书中提出的示例。
尽管本发明中使用的术语从一般公知和使用的术语选择,此处使用的术语可以根据本领域中任何技术人员的意向或实践或者随同新技术的到来而变化或修改。备选地,在一些特定情况中,本发明的说明书中提及的一些术语可以由申请人按照他或她的决定权(discretion)选择,其详细含义在本说明书的相关部分中描述。再者,要求不仅通过使用的实际术语,而且还通过每个术语的内在含义来理解本发明。
图1例示一框图,该框图示出根据本发明的一个实施方式在处理网络设备中的应用程序的过程中,用于处理键事件的网络设备的过程和结构。
网络设备指基本能够执行网络通信且还能够执行计算功能的设备。网络设备可以对应于在一般家庭中使用的电器,或者网络设备还可以对应于移动或便携式用户装备。这里,对应于电器的网络设备的示例可以包括具有网络通信功能的微波炉、电冰箱、洗衣机、TV等。并且,对应于移动或便携式用户装备的网络设备可以包括PDA、UMPC、掌上电脑、移动电话等。
在处理关于应用程序的键事件的过程中,网络设备可以使用插件架构。此处,例如,插件架构可以定义为将应用程序分类为主应用程序和插件应用程序的结构,其中主应用程序执行网络设备的基本功能,并且其中,除了主应用程序之外,通过使用诸如联网的方法将插件应用程序添加到网络设备且通过单独的过程执行插件应用程序。
如图1所示,当由于用户选择而发生连续(consistent)键事件时(S100),主机S/W处理模块(1400)接收该键事件且向执行插件架构的整体管理的插件系统管理器(1200)递送所接收的键事件(S102)。当插件系统管理器(1200)接收到键事件时,插件系统管理器(1200)验证当前可执行的应用程序中的聚焦的(focused)应用程序(S104)。然后,插件系统管理器(1200)向插件应用程序(1600)递送键事件(S106)。随后,在接收到键事件之后,插件应用程序(1600)处理键事件。
此处,例如,聚焦的应用程序可以定义为这样一种特定插件应用程序,其是在存储在网络设备中的多个应用程序中,由用户通过使用网络设备的远程控制设备或通过使用网络设备本身中装备的控制设备指定、但是其尚处于非选择状态。
同样,应用程序可以定义为在特定电子设备的操作系统中操作(或执行)的程序或软件。此处,应用程序的示例可以包括视频回放程序,天气预报程序等。
再者,内容可以泛指人类智力活动的产物(product)。并且,近来,术语内容已经用于指可以在特定设备或应用程序中使用的信息。例如,在视频回放程序中使用的视频文件和/或音频文件或在天气预备程序中使用的每周天气预备信息可以被看作内容。
代替将用户选择的所有键事件都递送到插件系统管理器(1200),图1中示出的主机S/W处理模块(1400)独立处理仅可以被主机S/W处理模块(1400)处理的特定键事件(S103),由此执行等同于特定键事件的功能。例如,电源键可以被主机S/W处理模块(1400)直接处理。
通过使用图1中示出的键事件递送系统,通过使用在相应网络设备中已经存在的硬件或软件,在为用户提供该用户熟悉的设备操作环境的同时,可以实现插件架构。
图2例示根据本发明的一个实施方式的网络设备的内部结构的一部分。
用于实现本发明的技术特征的根据本发明的一个实施方式的插件架构可以如图2所示实施。插件架构包括被配置成执行插件架构的整体管理的插件系统管理器(1200)、被配置成实现插件架构的插件主机(1420)、以及通过使用诸如联网的各式各样的方法添加到网络设备的插件应用程序。
插件系统管理器(1200)对应于被配置成执行插件架构的整体管理的结构。此处,插件系统管理器(1200)包括用于管理插件架构的管理应用程序(1220,1260,1280)和用于控制插件架构的应用程序控制器(1240)。
应用程序浏览器(1220)向用户示出当前安装在网络设备中的插件应用程序(1600),应用程序浏览器(1220)提供使用户希望执行的插件应用程序(1600)能够被执行的环境。再者,应用程序浏览器(1220)还可以执行提供存储在网络设备中且可以被插件应用程序(1600)使用的内容的列表的功能。
在应用程序的执行过程中,从过程的开始到结束,应用程序浏览器(1220)执行对应于执行过程的开始的主要功能。例如,应用程序浏览器(1220)向用户示出可以执行的应用程序的列表(或应用程序列表)。并且,当用户亲自从显示的应用程序的列表选择特定应用程序时,选择的应用程序的执行可以通过应用程序浏览器(1220)启动。另外,除用户亲自选择的应用程序的执行外,当应用程序或内容被分发时,可以通过同时使用相应元数据进行应用程序的自动执行。并且,在AV内容的回放期间,应用程序的执行可以通过在特定时间点发送信号(或信令)启动。再者,应用程序可以通过在执行第一应用程序的过程中使用调用第一应用程序所需要的第二应用程序的方法执行。
此处,用于启动应用程序的执行的上述方法仅是示例性的。并且,因此,需要的时候,可以通过使用范围更广泛的执行方法执行应用程序。
应用程序控制器(1240)实际执行在应用程序浏览器(1200)中被直接用户选择请求执行的应用程序。而且,应用程序控制器(1240)注册和管理被执行的应用程序的过程。而且,应用程序控制器(1240)执行诸如每个应用程序之间的资源使用管理、聚焦管理、用户输入处理等功能。当接收到用户输入时,应用程序控制器(1240)管理每个应用程序窗口的聚焦点,且当注册的插件应用程序(1600)被聚焦时,应用程序控制器(1240)通过远程控制器接收输入且向相应的应用程序递送接收到的输入信息。
另外,应用程序控制器(1240)在插件应用程序执行之前记忆其状态,且当插件应用程序(1600)通过异常完成结束时,应用程序控制器(1240)提供将系统恢复到执行相应插件应用程序(1600)之前的状态的系统稳定功能。在插件应用程序的执行过程中,从执行过程的开始到结束,应用程序控制器(1240)在相应应用程序的执行之后执行控制和管理功能。
应用程序下载器(1280)执行安装和删除插件应用程序(1600)的功能。
插件应用程序的信号发送和分发可以通过直接访问相应插件应用程序的分发服务器由安装过程执行。而且,应用程序的安装可以通过使用广播网络或IP(因特网协议)网络经单播/多播/广播方法实现。而且,应用程序的分发可以通过使用诸如闪存的外部存储设备实现。另外,存储在外部存储设备(或存储器)中的应用程序可以通过网络设备的USB端口把外部存储设备连接到网络设备而安装。此处,插件应用程序的上述信号发送和分发方法仅仅是示例性的。并且,因此,本发明将不仅仅限于此处提出的方法。
在插件应用程序的上述信号发送和分发方法中,当通过直接访问插件应用程序的分发服务器接收应用程序时,应用程序下载器(1280)可以从分发服务器下载可用于安装的应用程序的列表。然后,应用程序下载器(1280)可以从下载的应用程序的列表选择需要的应用程序,从而下载选择的应用程序。此后,应用程序安装器(卸载器)(1282)安装下载的应用程序。
再者,当用户通过应用程序浏览器(1220)查看已经安装在网络设备中的插件应用程序的列表时,且当用户请求删除应用程序时,应用程序安装器(卸载器)(1282)提供用于删除所选择的在网络设备中安装的插件应用程序的功能。
在插件应用程序的执行过程中,从执行过程的开始到结束,应用程序下载器(1280)执行安装的插件应用程序的安装和删除的功能。
安全检查器(1260)执行通过相应插件应用程序的元信息验证在下载或安装的插件应用程序中是否发生损坏的功能。安全检查器(1260)的执行结果被提供到管理插件应用程序的应用程序。这种应用程序的元信息可以通过下载服务器产生和提供。
再者,安全检查器(1260)监控当前被执行的插件应用程序的任何异常操作。然后,只要检测到异常操作,安全检查器(1260)立即启动适当的措施。
使用安全检查器(1260)的功能,可以确保插件应用程序(1600)的完整性(或者健康)。在插件应用程序的执行过程中,从执行过程的开始到结束,安全检查器(1260)执行管理插件应用程序的功能。
插件主机(1420)对应于应添加到执行网络设备的基本功能的主机S/W处理模块(1400)的元件以支持插件架构。插件主机(1420)包括主机代理(1422)和开放API主机(1424)。
主机代理(1422)执行向插件系统管理器(1200)发送主机S/W处理模块(1400)的状态和远程控制器的键事件的功能。
开放API主机(1424)调用插件应用程序(1600)的开放API(1624)且返回调用结果。
根据本发明,插件应用程序(1600)提供开放API库(1620),该开放API库包括:插件代理(1622),其向插件系统管理器(1200)发送插件应用程序的状态且接收远程控制器键事件信号;以及开放API(1624),其提供用于开发插件应用程序所需的API功能。当插件应用程序(1600)被注册到插件系统管理器(1200)时,注册的插件应用程序(1600)可以通过开放API(1624)使用主机S/W提供的功能。更具体而言,通过开放API(1624),插件应用程序(1600)设置有主机提供的数字广播接收器硬件支持,且还设置有中间件提供的API支持和媒体回放功能支持。因而,插件应用程序(1600)可以有效地执行而无需用于进行执行相应插件应用程序的功能的插件支持。再者,开放API(1624)提供用于管理插件应用程序(1600)的各式各样的API,由此使得第三方能够通过提供的开放API(1624)开发其他各种插件应用程序,这些应用程序随后被提供到装配有插件架构的网络设备。使用上述结构,范围更广泛的应用程序可以被网络设备执行,且这种多样性可以导致被应用程序消费(或使用)的范围更广泛的内容。最后,使用内容中的多样性,可以预期装配有插件架构的网络设备的扩展应用。
因为图2中示出的网络设备结构执行和管理独立于网络设备的基本功能添加到网络设备的应用程序,所以在附加应用程序中发生的故障或错误不影响网络设备的基本功能。因而,即使应用程序被插件扩展,也可以确保设备稳定性。
再者,因为额外添加的应用程序被主机S/W处理模块以外的处理器执行,可以同时执行多个应用程序。此外,基于不同于主机S/W操作模块的操作系统(OS)的应用程序也可以被添加到网络设备。
图3例示开放API(1624)的详细结构。
如图3所示,上述开放API(1624)对应于插件架构的一部分。当简化上述插件架构且客观地描述插件架构时,可以确定插件架构由装配在执行网络设备的主要功能的主机S/W处理模块(1400)中的插件主机(1420)、对应于管理各种处理的守护处理器的插件应用程序管理器(1200)以及配置成创建插件应用程序的开放API库(1620)配置。开放API(1624)指包括在上述结构中的接口,该接口通过开放API库(1620)提供。
现在将详细描述包括在插件架构中的开放API(1624)的结构。插件应用程序(1600)可以通过开放API(1624)注册到插件系统管理器(1200)且可以使用从主机S/W处理模块(1400)提供的网络设备的基本功能。开放API(1624)可以以共享库的形式提供,且插件应用程序(1600)可以通过使用开放API库及其头文件而使用开放API(1624)。然而,使用共享库的方法仅是示例性的。并且,因此,本发明将并不仅仅限于此处提出的示例。
开放API(1624)由应用程序处理器(handler)(1624a)、媒体播放(1624b)、主机设备控制(1624c)以及输入/输出(I/O)控制(1624d)配置。现在将更详细地描述每个元件的功能和角色。
应用程序处理器(1624a)执行向插件系统管理器(1200)告知插件应用程序的开始和结束的功能、注册插件应用程序使得可以接收键事件的注册功能、向系统请求各式各样可用资源的功能以及分配已请求的资源的功能等。更具体而言,应用程序处理器(1624a)管理插件应用程序的开始和结束以及在插件应用程序的执行中发生的所有其他事件。通过使用应用程序处理器(1624a)提供的API,插件应用程序可以仅在插件应用程序注册到插件系统管理器(1200)时被系统执行。
现在将更详细地描述应用程序处理器(1624a)的关键功能。
应用程序处理器(1624a)可以设立插件应用程序和管理该应用程序的应用程序之间的通信通道。这用于事件递送目的且还可以通过回调函数注册实现。然而,回调函数注册仅是示例性的。并且,因此,本发明将不仅仅限于设立通信通道的方法。再者,应用程序处理器(1624a)还执行向插件系统管理器(1200)登记插件应用程序(1600)的功能、从插件系统管理器(1200)取消插件应用程序(1600)的注册的功能、执行插件应用程序(1600)的健康检查的功能、向插件应用程序递送用户输入(诸如通过远程控制器的键的输入)的功能、请求特定插件应用程序上的聚焦的功能、请求插件应用程序将要使用的资源分配的功能、返回分配的资源的功能、计算当前执行的插件应用程序的数目的功能等。
媒体播放(1624b)提供用于回放音频/视频等的API。媒体播放(1624b)支持流媒体和下载的媒体且还提供回放、暂停、重启和停止的功能。
主机设备控制(1624c)对应于配置成使得插件应用程序(1600)使用对应于网络设备的基本应用程序的功能的API。当给出TV作为网络设备的示例时,通过使用主机设备控制(1624c),插件应用程序(1600)可以设置有用于控制TV的一般功能的API(诸如改变TV的频道或音量、接收节目信息等)。
除了从Lenux系统或标准C库提供的功能外,I/O控制(1624d)还提供输入或输出文件或使用网络所需的功能。I/O控制(1624d)还可以执行接收关于内部/外部存储设备的状态、Lenux中的挂接路径、网络设备的连接状态等信息的角色。
图4例示根据本发明的一个实施方式执行插件应用程序的示例性过程。
参考图4,主机S/W处理模块(1400)执行应用程序控制器(1240)(S402)。此时,当使用插件架构时,应用程序控制器(1240)执行插件系统管理器(1200)的整体控制,且当网络设备总是使用插件功能作为要执行的功能时,当网络设备正在启动时,插件功能可以启动。并且,如果该功能仅在需要时使用,该功能可以动态地执行,且在这种情况下,当主机S/W处理模块(1400)挑选(或选择)插件功能的使用时,可以执行应用程序控制器(1240)。
然后,用户通过主机S/W处理模块(1200)的UI菜单(用户界面)选择应用程序浏览器(1220)的执行(S404)。
使用在前面的过程步骤(S404)中做出的选择,应用程序控制器(1240)执行应用程序浏览器(1220)(S406)。当执行应用程序浏览器(1220)时,通过应用程序浏览器(1220),可以从应用程序列表中选择和执行特定应用程序。应用程序浏览器(1220)还可以实现为插件应用程序。
可以搜索已经安装在网络设备的内部存储设备中的应用程序的列表或存在于网络设备的外部存储设备(诸如外部存储器)中的应用程序的列表,使得可以选择要执行的应用程序(S408)。此时,可用于选择和执行的对象将不仅仅限于应用程序。并且,因此,通过简单地选择内容,可以立即执行可以使用选择的内容的相应应用程序。因而,可以消费相应的内容。例如,可以选择和执行可直接执行的执行文件。或者,可以选择诸如flash swf(Shockwave Flash对象)文件的flash应用程序的内容,从而操作flash应用程序,由此调用和使用相应的内容。
在前面的过程步骤(S408)中,向应用程序控制器(1240)请求选择的应用程序的执行(S410)。
当接收到用于执行应用程序的请求时,应用程序控制器(1240)首先通过安全检查器(1260)验证应用程序是否可以被正常执行(S412)。分发应用程序时包括在应用程序中的元数据可以用于这种验证过程,且验证过程可以使用诸如SHA-1(安全散列算法-1)的方法。
当验证过程成功地验证相应应用程序为正常和安全应用程序时,执行相应的应用程序(S414)。
在其执行的开始,应用程序向应用程序控制器(1240)注册其自身(S416)。
插件应用程序(1600)的执行开始于插件应用程序(1600)向插件系统管理器(1200)的注册。在注册过程之后,应用程序执行其目标功能或角色。然后,当应用程序要结束时,应用程序的结束被告知给插件系统管理器(1200),使得应用程序可以取消其在插件系统管理器(1200)中的注册。
当插件应用程序(1600)在其启动点向插件系统管理器(1200)请求其注册时,在开放API(未示出)内执行所需的初始化过程,且插件系统管理器(1200)被访问,使得应用程序可以被注册。在开放API库(未示出)内执行的初始化可以包括内部使用的变量初始化和任务(线程)初始化。
在完成用于其注册的请求之后,插件应用程序(1600)执行应用程序本身要求的初始化,随后执行主要功能。
当插件应用程序(1600)的执行结束时,插件应用程序(1600)首先执行构建关于其数据或任务的报告,然后使用开放API库功能来告知插件系统管理器(1200)相应的应用程序将要结束。在这种情况下,库请求从插件管理系统(1200)取消插件应用程序的注册。然后,库结束访问且构建关于系统内变量的使用和完成的任务的报告。库执行的主要操作可以包括返回还没有被应用程序正确返回的资源、布置存储器和任务(线程)等。
回调功能可以用于接收键事件的方法。并且,为此目的,当在应用程序执行的开始注册该应用程序时,可以通过使用关于键事件的回调函数做出调用过程,使得可以执行注册过程。然而,这仅是示例性的,且此处可以使用其他方法。如果不需要接收键事件,则不需要执行注册过程。当注册键事件回调时,如果插件应用程序处于聚焦状态,则所有远程控制器键事件经由回调递送。关于应用程序是否已使用递送的键事件的信息由回调返回指示。并且,不被使用的键事件可以被主机S/W处理模块(1400)处理。并且,因为主机S/W处理模块(1400)等待正在将要被处理的键事件,所以键事件回调应尽可能快地返回。
此处使用的方法对应于执行用户做出的直接选择的应用程序的方法。并且,当通过使用包括根据本发明的上述方法的其他方法执行应用程序时,可以相同地使用步骤(S410)之后的过程步骤。
图5例示在网络设备内递送键事件的过程。尽管在图5中描述通过远程控制器或键盘执行键输入,本发明并不仅仅限于此处提出的示例,并且因此,键输入还可以应用于基于光标的事件,诸如鼠标的移动或鼠标按钮的点击。再者,键输入还可以应用于其他类型的用户输入方法。
如图5所示,当用户通过使用诸如远程控制器或键盘的输入设备输入了键输入时,主机S/W处理模块(1400)接收输入的键且启动接收的键输入的处理(S502)。仅可以使用主机S/W处理模块(1400)的特定键可以被主机S/W处理模块(1400)直接处理而不是被发送。此处,例如,电源键对应于可以被主机S/W处理模块(1400)直接处理的键事件。
主机S/W触摸模块(1400)向插件系统管理器(1200)发送关于接收的用户输入键的事件(S504)。然后,包括在插件系统管理器(1200)中的键事件转发器(1244)接收所发送的事件且处理所接收的事件。键事件转发器(144)可以包括在应用程序控制器(1240)中或可以对应于独立的模块。
键事件转发器(1244)向应用程序控制器(1240)请求关于当前聚焦的应用程序的信息(S506)。应用程序控制器(1240)维持关于当前聚焦的应用程序的信息且基于键事件转发器(1244)做出的请求返回关于当前聚焦的应用程序的信息。
键事件转发器(1244)中继转发输入到当前聚焦的应用程序的键事件(S508)。
然后,不被应用程序使用的键被返回到键事件转发器(1244)(S510)。
此后,键事件转发器(1244)向主机S/W处理模块递送返回的键(S512)。
作为处理输入的键的过程步骤,输入的键要么被当前聚焦的应用程序处理或返回,要么被当前聚焦的应用程序返回,从而被主机S/W处理模块处理(S514)。
图6例示根据本发明的一个实施方式调用插件应用程序的开放API的示例性过程。
如图6所示,插件应用程序(1600)请求主机S/W处理模块(1400)以用于在开放API(未示出)上执行(S602)。
主机S/W处理模块(1400)注册和管理关于请求在API上执行的插件应用程序(1600)的信息(S604)。根据开放API,因为注册可以从资源被分配的时间点到分配的资源返回的时间点维持,所以与涉及何时在API上调用的应用程序相关的信息需要维持。
然后执行请求的开放API(S606)。在执行请求的开放API之前,相应的应用程序可以验证应用程序是否具有授权以请求开放API的执行。关于应用程序的执行授权的这种信息可以包括在应用程序的证明(或验证)信息中。并且,基于授权(authority)信息,检查执行API的授权,使得执行API的不合适的请求被阻断。
此后,验证已请求API执行的应用程序,且执行结果记录在API调用历史中(S608)。
最后,执行结果被发送到已请求API执行的应用程序中(S610)。
图7例示下载和安装插件应用程序的示例性过程。插件应用程序的信号发送和分发可以通过使用各种方法执行。然而,图7示出根据本发明的一个实施方式具有用户直接访问应用程序下载服务器以选择和安装插件应用程序的示例。
如图7所示,用户执行应用程序下载器(1280)(S702)。应用程序下载器(1280)可以实现为插件应用程序。并且,在这种情况中,应用程序下载器(1280)可以通过应用程序控制器(1240)执行。
此后,用户访问应用程序分发服务器(7000),从而下载应用程序列表(S704)。应用程序分发服务器的访问地址可以对应于网络设备中预定的地址或可以通过用户的直接输入获得。再者,应用程序分发服务器的访问地址还可以通过使用诸如经由信号发送或通过广播通道获取应用程序分发服务器的地址的方法获得。
而且,在该过程中,当访问分发服务器时,可以执行用于验证网络设备是否被分配以合法权限的认证过程。此处,为了执行认证过程,发送诸如网络设备的制造商、产品号、序列号、设备ID等关于网络设备的信息,使得可以执行认证过程。
然后,向用户显示下载的应用程序或内容的列表,使得用户可以选择用户希望下载的应用程序或内容(S706)。
此后,下载选择的应用程序或内容(S708)。
随后,通过下载的应用程序的报头或通过单独的一组元数据发送的用于认证的数据,用于通过安全检查器(1260)检查应用程序的兼容性(S710)。诸如SHA-1的方法可以用于认证。向应用程序增加报头且与元数据一起发送添加的报头的示例在图8中描述。这仅是本发明的另一示例性实施方式,且这种元数据可以通过单独的路径发送或可以具有不同形式的封装结构。
然后,使用通过单独的元数据组发送的元数据信息或通过下载的应用程序的报头安装下载的应用程序(S712)。当通过元数据信号发送关于安装路径的信息时,根据信号发送的安装路径执行安装。
图8例示根据本发明的一个实施方式被下载的应用程序的示例性数据结构。
如图8所示,下载的应用程序的数据结构由报头、插件标识符、加密服务器的认证消息的散列值、产品名称、型号名称、类别ID阵列、内容ID、文件类型、韩语/英语的内容名称、本地路径、缩略图路径、文件大小和插件应用程序数据配置。
图9例示在网络设备直接访问应用程序分发服务器的情况下在用于下载和安装插件应用程序的各种方法中下载和安装插件应用程序的示例过程。图9示出认证过程、下载应用程序列表的过程以及下载应用程序的过程都由一个服务器执行的示例。然而,这仅是示例,因此,可以通过用于每个功能的单独的服务器提供服务。
如图9所示,用户执行应用程序下载器(未示出)(S901)。此处,应用程序下载器还可以对应于插件应用程序,且在该情况中,应用程序下载器(未示出)可以通过应用程序控制器(未示出)执行。
可以在访问分发服务器时执行用于验证网络设备是否分配以合法授权的认证(authentication)过程。当从网络设备向访问的服务器请求用于网络设备的认证过程(S902)时,服务器验证相应网络设备的授权且向网络设备发送认证结果(S904)。此处,为了执行认证过程,发送诸如网络设备的制造商、产品号、序列号、设备ID等关于网络设备的信息,使得可以执行认证过程。上述认证过程可能是需要的也可能是不需要的。例如,在广告内容或免费应用程序的情况中,可能不需要认证过程。
网络设备向应用程序分发服务器发送用于应用程序或内容的列表的请求(S906)。应用程序分发服务器然后创建应用程序或内容的列表(S908)。然后,网络设备通过访问应用程序分发服务器下载应用程序的列表(S910)。
应用程序分发服务器的访问地址可以对应于网络设备中预定的地址、用户直接输入的地址、通过信号发送或者通过广播通道获取的应用程序分发服务器的地址、或在执行网络设备的认证过程之后从认证结果获取的应用程序分发服务器的地址。
可下载应用程序的列表可以对应于仅可以根据网络设备的系统需求操作的应用程序的列表,或可下载应用程序的列表可以对应于仅指示可下载应用程序的列表中可以操作的应用程序的列表。
当用户选择特定应用程序或内容(S912)时,用户向应用程序分发服务器(7000)发送对应于选择的应用程序或内容的下载请求信号(S914)。然后,用户下载所选择的应用程序(S916)。下载的应用程序可以自动安装,或下载的应用程序可以基于用户选择的安装选项安装(S918)。选择的应用程序的下载地点可以从关于接收的应用程序列表的信息的元数据获取。
在安装下载的应用程序之后,网络设备可以向服务器报告安装结果(S920)。此时,网络设备可以与用于诸如网络设备的设备ID的识别网络设备的信息一起向服务器发送关于安装的应用程序的信息和关于安装结果的信息的报告。
图10例示一UI显示画面,该UI显示画面示出根据本发明的一个实施方式从应用程序分发服务器接收的应用程序列表(或应用程序的列表)。此处,应用程序的列表可以仅包括根据网络设备的系统需求可以操作的应用程序。
在图10中,因为仅应用程序A、D和E可以根据网络设备的系统需求操作,所以图10示出除被发送到网络设备的应用程序B和C外的应用程序的列表的示例性结果。
图11例示一UI显示画面,该UI显示画面示出根据本发明的另一实施方式从应用程序分发服务器接收的应用程序列表(或应用程序的列表)。此处,应用程序的列表可以仅强调可以根据网络设备的系统需求操作的应用程序,或应用程序的列表可以显示,同时排除不能根据网络设备的系统需求操作的应用程序。
再次参考图11,因为应用程序B和C不能在已请求应用程序列表的网络设备中操作,所以图11示出发送应用程序的列表的结果,同时将应用程序B和C标记为不能在应用程序的下载列表中下载的应用程序。当通过标记不能被网络设备操作的应用程序创建应用程序的列表时,用户可以容易获知需要升级安装在网络设备中的固件,用户可以容易获知需要升级网络设备本身的性能。
此处,图11示出仅指示可以根据网络设备的系统需求操作的应用程序的示例。应用程序的列表的显示方法可以使用用于区分不能操作的应用程序与可以操作的应用程序的各种方法。
图12例示一UI显示画面,该UI显示画面示出根据本发明的一个实施方式从应用程序分发服务器接收的内容列表(或内容的列表)。此处,可下载内容的列表可以从服务器接收。在这种情况下,关于已经安装在网络设备中的应用程序的信息可以发送到网络设备,且服务器可以仅发送出已经安装在网络设备中的应用程序可以应用的内容。
参考图12的(a),内容A和C被标记为不能应用于安装在网络设备中的应用程序的内容。因此,图12的(a)示出在内容的列表中标记不可应用的结果。此处,内容B、D和E对应于可以应用于已经安装在网络设备中的应用程序的内容。
参考图12的(b),用户已选择不能应用于已经安装在网络设备中的应用程序的选择内容C。在这种情况中,因为网络设备没有装配有可以消费(或使用)内容C的应用程序,所以相应的应用程序不能被执行。
参考图12的(c),在可下载内容的列表中,当可以应用相应内容的应用程序没有安装在网络设备中,且当用户选择不能被执行的相应内容C时,用户可以新下载可以应用内容C的应用程序。此时,单独的对话框显示在显示屏幕上,其中该对话框询问用户是否希望下载相应的应用程序。并且,可以根据用户的选择决定应用程序的下载。
图13例示一UI显示画面,该UI显示画面示出根据本发明的另一实施方式从应用程序分发服务器接收的应用程序列表(或应用程序的列表)。用户可以选择特定过滤选项以仅接收对应于所选过滤选项的应用程序或内容的列表。此处,过滤选项可以指应用程序的标题、下载的数目、推荐的数目、注册日期等。此时,过滤选项可以设立为信息字段,使得可以接收包括基于信息字段排列的子列表的应用程序或内容的列表。
图13示出其中请求应用程序的列表且其中过滤选项设置为标题、下载数目、推荐数目以及每个应用程序的注册日期的示例。应用程序分发服务器通过从网络设备指定为过滤选项的每个过滤选择通过排列应用程序创建应用程序列表。例如,在图13中,标题过滤选项卡(1301)以字母顺序排列搜索的应用程序,且下载数目选项卡(1302)通过下载的等级(ranking)顺序排列应用程序,推荐数目选项卡(1303)通过推荐的等级顺序排列应用程序,且注册日期(1304)的顺序通过最新下载的应用程序的顺序排列应用程序。
如上所述,通过用户指定的过滤选项排列(或排布)应用程序,用户能够方便地选择所需的应用程序,而不必单独编辑接收的应用程序列表或搜索插件的信息。
图14例示一UI显示画面,该UI显示画面示出根据本发明的一个实施方式当执行应用程序浏览器时已经存储在网络设备的应用程序或内容的列表。此处,可以创建仅对应于应用程序的列表,且可以创建仅对应于内容的列表。再者,在图14中,当应用程序A被聚焦时,在子列表中标记可以通过应用程序A应用的内容A至E。此处,当用户输入用于选择内容B的键事件时,选择的内容B可以在执行应用程序A的同时被提供给用户。
图15例示根据本发明的一个实施方式管理应用程序列表的示例。
如图15的(a)所示,当应用程序浏览器显示应用程序列表时,可以执行应用程序列表的管理模式。此处,管理模式通过管理模式执行选项卡(1510)启动。
如图15的(b)所示,当用户希望改变应用程序B的排列顺序时,在管理模式开启的同时,用户选择对应于应用程序B的选项卡(1504)。当对应于应用程序B的选项卡(1504)被选择时,显示单独的管理菜单。此处,管理菜单(1505)可以包括用于编辑列表、改变应用程序缩略图、执行应用程序更新、删除应用程序等菜单项。
如图15的(c)所示,当用户选择用于编辑列表的菜单项时,对应于应用程序B的选项卡(1504)可以从左到右(或从右到左)水平地重新定位。
如图15的(d)所示,当列表的编辑完成时,管理模块关闭,且可以获取最新更新(或编辑)的应用程序列表。
图16例示示出数字广播接收器的结构的框图,其中插件架构根据本发明的一个实施方式应用于该数字广播接收器。
对应于网络设备的数字广播接收器(1000)包括配置成接收地面(或地波)广播、线缆广播、卫星广播等的调谐器(210)以及配置成解调制接收的广播信号的解调器(211)。另外,数字广播接收器(1000)还可以包括配置成接收通过网络接收的包且将接收的包传输到网络的网络接口(220)(即配置成通过网络从服务器提供商接收内容和更新消息的网络接口(220))以及配置成管理被接收的且将要通过网络接口(220)从包的源发送到包的目的地的包的包递送的TCP/IP管理器(221)。
服务递送管理器(212)控制通过调谐器(210)和网络接口(220)接收的服务数据。例如,当控制实时流数据时,可以使用RTP/RTCP(实时传输协议/RTP控制协议)。在通过使用RTP发送实时流数据的情况中,服务递送管理器(212)基于RTP解析接收的服务数据包且向解复用器(24)发送解析的数据包。备选地,服务递送管理器(212)可以具有基于服务管理器(201)的控制来记录(或拍摄)接收的服务数据包的PVR管理器(213),由此在内容数据库(217)中存储记录的包。此后,服务递送管理器(212)使用RTCP来执行到提供网络接收信息的服务器的反馈。
解复用器(214)将接收的数据包解复用为音频、视频、PSI(节目特定信息)数据等,由此向音频/视频解码器(215)中的每一个和PSI/PSIP解码器(225)发送解复用的数据。
PSI/PSIP解码器(225)解码诸如PSI(节目特定信息)的服务信息。更具体而言,PSI/PSIP解码器(225)接收和解码通过解复用器(214)解复用的PSI片段,PSIP(节目特定信息协议)片段或者DVB-SI(服务信息)片段等。
音频/视频解码器(215)解码通过解复用器(214)解复用的音频数据和视频数据中的每一个。音频解码器(215a)通过扬声器(未示出)将解码的音频数据输出到外部,且视频解码器(215b)通过显示单元提供解码的视频数据。
作为根据本发明应用插件架构的网络设备的示例性实施方式,数字广播接收器(1000)包括配置成操作一般被DTV执行的软件的主机应用程序管理器(200)以及配置成通过使用单独过程执行主机软件且下载内容的插件系统管理器(1200),从而执行和扩展下载的内容。
主机应用程序管理器(200)管理数字广播接收器(1000)的整体状态且提供用户接口,且主机应用程序管理器(200)与插件系统管理器(1200)结合操作。为此,主机应用程序管理器(200)包括服务管理器(201)、用户接口管理器(202)和插件主机(1420)。
为了提供在用户做出请求时接收的服务,服务管理器(201)控制服务控制管理器(204)、服务递送管理器(212)和PVR管理器(213)。
服务控制管理器(204)选择和控制服务。例如,当用户选择包含与常规广播服务方法相同的广播方法的直播广播服务时,服务控制管理器(204)使用IGMP或RTSP以选择和控制相应的服务。并且,当用户选择诸如VOD(视频点播)服务的服务时,服务控制管理器(204)使用RTSP以选择和控制相应的服务。RTSP协议可以提供关于实时流的特技模式。而且,服务控制管理器(204)使用IMP(IP多媒体子系统)和SIP(会话发起协议)以发起和管理通过IMC网关传递的会话。此处,协议仅是示例性的,且因此,也可以在本发明中使用其他协议。
此外,服务管理器(201)产生频道映射,然后基于从用户接口管理器(202)接收的键输入使用产生的频道映射,从而向服务控制管理器(204)输出频道选择信号。此时,服务控制管理器(204)基于频道选择信号控制调谐器(210)和解调器(211)。
而且,服务管理器(201)从服务信息数据库(224)检测存储的频道的服务信息,从而在解复用器(214)中设立选择的频道的音频/视频PID(包标识符)。
用户接口(UI)管理器(202)通过使用OSD(屏幕显示)为用户提供GUI(图形用户节目),且还从远程控制器或触摸板接收用户的键输入,从而基于接收的输入来操作应用程序。例如,当从用户接收与频道选择相关的键输入时,用户接口(UI)管理器(202)向服务管理器(201)发送键输入信号。
插件主机(1420)对应于添加到主机应用程序管理器(200)的结构,以支持插件系统管理器(1200)的操作。此处,插件主机(1420)控制插件系统管理器(1200)中内容的接收和执行。插件主机(1420)对应于控制数字广播接收器例如除输出广播信号外的其他功能的操作系统,插件主机(1420)控制插件系统管理器(1200)内的内容的执行和下载。
如图2所示,插件主机(1420)包括主机代理(1422)和开放API主机(1424)。此处,主机代理(1422)接收DTV内的主机软件的状态信息且还接收从UI管理器(202)接收的键输入。而且,开放API主机(1424)调用插件应用程序的开放API(应用程序编程接口),从而执行调用的开放API且接收执行结果。
而且,插件主机(1420)基于从UI管理器(202)接收的键输入向应用程序下载器(1280)发送下载控制命令。
插件系统管理器(1200)对应于执行插件应用程序的整体管理(诸如安装、执行、管理、删除插件应用程序等)的系统。此处,插件系统管理器(1200)包括配置成执行插件应用程序的整体控制(诸如管理插件应用程序的执行/结束执行表)的应用程序控制器(1240)、配置成具有用于浏览和选择插件应用程序的功能的应用程序浏览器(1220)、配置成在安装、执行、管理和删除插件应用程序时确保安全的安全检查器(1260)以及配置成安装插件应用程序的应用程序下载器(1280)。
根据本发明,插件主机(1420)通过网络接口(220)连接到因特网,从而使用提供插件应用程序的服务器执行认证过程。
在执行插件主机(1420)和服务器之间的认证过程之后,应用程序下载器(1280)根据插件主机(1420)的命令操作,且发送应用程序列表或内容列表请求信号被传输到服务器,使得所需的应用程序或内容可以从服务器下载。此时,内容列表可以被压缩和接收,且应用程序下载器(1280)可以解压缩接收到的内容列表且在服务信息数据库(224)中存储解压缩后的列表。此处,内容列表可以以XML格式存储。
再者,当下载应用程序列表或内容列表的过程完成时,应用程序下载器(1280)向服务器发送数字广播接收器的ID信息且还向服务器发送接收的应用程序或内容的版本信息。
应用程序浏览器(1220)向显示单元(216)输出存储的应用程序列表或内容列表。然后,应用程序浏览器(1220)从UI管理器(202)接收用于下载的应用程序或内容中的一个或更多个的选择执行命令,由此执行选择的应用程序或内容。
服务发现管理器(222)相对于通过双路(或双向)IP网络提供的服务从TCP/IP管理器(221)提供的包搜索选择的服务。元数据管理器(223)从TCP/IP管理器(221)提供的包检测与服务相关的元数据。
服务信息数据库(224)存储来自PSI/PSIP解码器(225)的解码片段的服务信息(SI)、与从服务发现管理器(222)搜索的服务相关的信息以及从元数据管理器(223)搜索的元数据。另外,服务信息数据库(224)还存储关于系统的设定数据。服务信息数据库(224)可以通过使用非易失性存储器(或非易失性RAM)或闪存实现且还可以以相同存储区域内逻辑分割的至少一个或更多区域的形式实现。
如上所述,已经根据有限范围的实施方式和附图描述了本发明,然而,本发明并不仅仅限于本发明的描述给出的示例。并且因此,本领域技术人员将显见,在不偏离本发明的精神或范围的条件下,可以在本发明中做出各种修改和变型。因而,旨在表明,本发明涵盖本发明的修改和变型,只要它们落在所附权利要求及其等同要求的范围内。还可以显见,本发明的各种变型并不从本发明的技术范围或精神独立或分离地理解。
实施本发明的最佳模式
如上所述,已经根据用于实施本发明的最佳模式描述了涉及本发明的细节。
工业适用性
如上所述,本发明可以应用于能够执行网络操作的设备。
Claims (20)
1.一种处理至少一个或更多个应用程序的网络设备,该处理至少一个或更多个应用程序的网络设备包括:
主机S/W处理模块,该主机S/W处理模块被配置成接收用于执行特定命令的键事件且可选地向插件系统管理器发送所接收的键事件;
插件系统管理器,该插件系统管理器被配置成验证在至少一个或更多个当前可执行的应用程序中被聚焦的特定应用程序,且向所聚焦的特定应用程序发送所接收的键事件;以及
插件应用程序,该插件应用程序被配置成处理所接收的键事件。
2.根据权利要求1所述的网络设备,其中,当所述主机S/W处理模块接收到所述键事件时,所述主机S/W处理模块确定所接收的键事件是否仅需被该主机S/W处理模块处理,并且其中,基于确定结果,如果所接收的键事件被确定为仅需被所述主机S/W处理模块处理,则所述主机S/W处理模块本身处理该键事件。
3.根据权利要求1所述的方法,其中,所述插件系统管理器包括:
应用程序浏览器,该应用程序浏览器被配置成示出安装在所述网络设备中的插件应用程序的列表;
应用程序控制器,该应用程序控制器配置成执行被请求执行的应用程序,并且注册和管理所执行的应用程序的过程;
应用程序下载器,该应用程序下载器被配置成下载、安装和删除插件应用程序;以及
安全检查器,该安全检查器检查在下载的或安装的插件应用程序中发生的任何损坏。
4.根据权利要求1所述的网络设备,其中,所述主机S/W模块包括:
主机代理,该主机代理被配置成向插件管理器发送所述主机S/W模块的状态和键事件;以及
开放API主机,该开放API主机被配置成对插件应用程序执行开放API调用且返回相应的结果。
5.根据权利要求1所述的网络设备,其中,所述插件应用程序包括:
插件代理,该插件代理被配置成向插件管理器发送所述插件应用程序的状态且接收键事件;以及
开放API,该开放API被配置成提供设计所述插件应用程序所需的API。
6.根据权利要求3所述的网络设备,其中,通过使用执行当应用程序和内容被分发时使用元数据的自动执行、在内容的特定点信令传送应用程序的执行、通过触发启动的执行、通过调用应用程序内的另一应用程序启动的执行以及通过用户应用程序执行选择启动的执行中的至少一种的方法,所述应用程序控制器执行应用程序。
7.根据权利要求3所述的网络设备,其中,所述应用程序控制器记忆在所述插件应用程序的执行之前的状态,并且其中,当所述插件应用程序通过异常终止而结束时,所述应用程序控制器将系统恢复到所记忆的状态。
8.根据权利要求3所述的网络设备,其中,所述应用程序控制器仅在使用插件架构时被激活。
9.根据权利要求3所述的网络设备,其中,所述应用程序下载器通过使用以下安装方法中的至少一种来安装应用程序,所述安装方法包括:通过直接访问插件应用程序分发服务器执行的应用程序安装、通过使用广播网络或IP网络经单播/多播/广播方法的应用程序安装以及通过将所述网络设备连接到外部存储设备且通过安装存储在所述外部存储设备中的应用程序执行的应用程序安装。
10.一种用于对处理至少一个或更多个应用程序的网络设备进行控制的方法,该用于对处理至少一个或更多个应用程序的网络设备进行控制的方法包括:
向服务器发送请求所述网络设备的认证的信号;
从所述服务器接收识别所述网络设备的确认认证和非确认认证的识别信号;
当所述识别信号对应于确认所述网络设备的认证的信号时,从所述服务器下载应用程序;
接收用于执行特定命令的特定键事件,并且可选地向插件系统管理器发送所接收的键事件;以及
验证在当前可执行的应用程序的至少一个或更多个中被聚焦的特定应用程序,并且向所聚焦的特定应用程序发送所接收的键事件。
11.根据权利要求10所述的方法,其中,从所述服务器下载应用程序的步骤还包括:
接收通过下载的应用程序的报头或通过单独的元数据而发送的认证数据;以及
验证所述应用程序是否能够正常地执行。
12.一种用于对处理至少一个或更多个应用程序的网络设备进行控制的方法,该用于对处理至少一个或更多个应用程序的网络设备进行控制的方法包括:
向服务器发送请求识别至少一个或更多个可下载应用程序的第一列表或请求识别至少一个或更多个可下载内容的第二列表的信号;
从所述服务器接收所述第一列表或所述第二列表;
显示所接收的第一列表或第二列表;
当从所述第一列表选择特定应用程序时,或者当从所述第二列表选择特定内容时,向所述服务器发送请求所选择的应用程序或内容的信号;以及
从所述服务器下载所选择的应用程序或内容。
13.根据权利要求12所述的方法,其中,所述显示第一列表的步骤还包括:
检查接收所述第一列表的所述网络设备的系统需求;以及
基于所检查的信息仅标记可以被所述网络设备执行的应用程序。
14.根据权利要求12所述的方法,其中,所述显示第二列表的步骤还包括:
搜索已经安装在接收所述第二列表的所述网络设备中的应用程序;以及
仅标记可以被所搜索的应用程序应用的内容。
15.根据权利要求12所述的方法,其中,所述请求第一列表或第二列表的步骤还包括:
设立至少一个或更多个过滤选项。
16.根据权利要求12所述的方法,其中,所述过滤选项包括应用程序标题、下载数目、推荐数目以及注册日期中的至少一个或更多个。
17.根据权利要求15所述的方法,其中,从所述服务器接收的第一列表或第二列表包括:
基于信息字段排列的子列表,其中所述信息字段通过所述过滤选项确定。
18.一种用于对处理至少一个或更多个应用程序的网络设备进行控制的方法,该用于对处理至少一个或更多个应用程序的网络设备进行控制的方法包括:
接收用于创建应用程序列表的键事件;
搜索已经安装在所述网络设备中的应用程序;
创建所搜索的应用程序的列表;
显示所创建的应用程序列表;
接收关于从所述应用程序列表中列出的至少一个或更多个应用程序选择的应用程序的执行请求;
通过使用相应应用程序的元数据验证被请求执行的应用程序是否能够正常执行;以及
当验证相应应用程序能够正常执行时,执行相应的应用程序。
19.根据权利要求18所述的方法,其中,所述创建搜索的应用程序的列表的步骤还包括:
搜索已经存储在所述网络设备中的内容;以及
创建搜索的内容中关于可以被相应应用程序执行的内容的子列表。
20.根据权利要求19所述的方法,该方法还包括:
当选择子列表中指示的内容时,验证其中使用了所选择的内容的应用程序;
接收用于执行被验证应用程序的请求;以及
处理被请求执行的应用程序中的选择内容。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15592109P | 2009-02-27 | 2009-02-27 | |
US61/155,921 | 2009-02-27 | ||
PCT/KR2010/001238 WO2010098622A2 (ko) | 2009-02-27 | 2010-02-26 | 어플리케이션을 처리하는 네트워크 디바이스의 구조 및 상기 네트워크 디바이스의 제어방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102334344A true CN102334344A (zh) | 2012-01-25 |
Family
ID=42666083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010800095270A Pending CN102334344A (zh) | 2009-02-27 | 2010-02-26 | 处理应用程序的网络设备的架构及该网络设备的控制方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20110302274A1 (zh) |
EP (1) | EP2403246A4 (zh) |
KR (1) | KR20110126148A (zh) |
CN (1) | CN102334344A (zh) |
WO (1) | WO2010098622A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103906034A (zh) * | 2012-12-28 | 2014-07-02 | 中国电信股份有限公司 | 移动应用提供方法、服务器 |
CN103957460A (zh) * | 2014-03-24 | 2014-07-30 | 上海聚力传媒技术有限公司 | 一种用于生成电视接收终端桌面应用的方法与设备 |
CN106406942A (zh) * | 2016-09-05 | 2017-02-15 | 百度在线网络技术(北京)有限公司 | 处理插件安装过程的方法以及装置 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8434093B2 (en) | 2008-08-07 | 2013-04-30 | Code Systems Corporation | Method and system for virtualization of software applications |
US8776038B2 (en) | 2008-08-07 | 2014-07-08 | Code Systems Corporation | Method and system for configuration of virtualized software applications |
JP5316363B2 (ja) * | 2009-10-20 | 2013-10-16 | ソニー株式会社 | 情報処理装置、機能管理方法、コンピュータプログラム及び情報処理システム |
US9922331B2 (en) * | 2009-11-04 | 2018-03-20 | Blue Kai, Inc. | Filter for user information based on enablement of persistent identification |
US8954958B2 (en) | 2010-01-11 | 2015-02-10 | Code Systems Corporation | Method of configuring a virtual application |
US8959183B2 (en) | 2010-01-27 | 2015-02-17 | Code Systems Corporation | System for downloading and executing a virtual application |
US9104517B2 (en) | 2010-01-27 | 2015-08-11 | Code Systems Corporation | System for downloading and executing a virtual application |
US9229748B2 (en) | 2010-01-29 | 2016-01-05 | Code Systems Corporation | Method and system for improving startup performance and interoperability of a virtual application |
US8763009B2 (en) | 2010-04-17 | 2014-06-24 | Code Systems Corporation | Method of hosting a first application in a second application |
US9218359B2 (en) | 2010-07-02 | 2015-12-22 | Code Systems Corporation | Method and system for profiling virtual application resource utilization patterns by executing virtualized application |
US9767475B2 (en) * | 2010-08-20 | 2017-09-19 | Blue Kai, Inc. | Real time audience forecasting |
US9021015B2 (en) | 2010-10-18 | 2015-04-28 | Code Systems Corporation | Method and system for publishing virtual applications to a web server |
US9209976B2 (en) | 2010-10-29 | 2015-12-08 | Code Systems Corporation | Method and system for restricting execution of virtual applications to a managed process environment |
CN102684911A (zh) * | 2012-03-14 | 2012-09-19 | 北京神州绿盟信息安全科技股份有限公司 | 一种安全配置核查设备和方法以及安全配置核查网络系统 |
CN102830989B (zh) * | 2012-06-26 | 2016-08-03 | 腾讯科技(深圳)有限公司 | 阅读器提供服务的方法、阅读器及终端 |
WO2014022272A1 (en) * | 2012-07-30 | 2014-02-06 | Yahoo! Inc. | Systems and methods for implementing a mobil application based online advertising system |
WO2015130021A1 (ko) * | 2014-02-27 | 2015-09-03 | 엘지전자 주식회사 | 디지털 디바이스 및 상기 디지털 디바이스에서 애플리케이션 처리 방법 |
KR102277258B1 (ko) | 2014-02-27 | 2021-07-14 | 엘지전자 주식회사 | 디지털 디바이스 및 상기 디지털 디바이스에서 애플리케이션 처리 방법 |
US10445314B1 (en) * | 2014-09-15 | 2019-10-15 | Amazon Technologies, Inc. | Instant unified search |
US9781131B2 (en) * | 2015-04-22 | 2017-10-03 | Aktiebolaget Skf | Systems and methods for securing remote configuration |
US9921986B2 (en) * | 2015-10-27 | 2018-03-20 | International Business Machines Corporation | Suspend and resume in a time shared coprocessor |
CN106227723A (zh) * | 2016-01-25 | 2016-12-14 | 百度在线网络技术(北京)有限公司 | 用于推荐应用和呈现推荐应用的方法和装置 |
KR102408649B1 (ko) * | 2016-02-19 | 2022-06-15 | 삼성전자주식회사 | 환경 설정 방법 및 장치 |
CN105933769A (zh) * | 2016-06-24 | 2016-09-07 | 深圳创维数字技术有限公司 | 一种机顶盒系统参数设置方法、共享服务器及机顶盒 |
KR102034850B1 (ko) | 2018-03-23 | 2019-10-21 | 에스케이플래닛 주식회사 | 멀티 프레임을 고려한 키 처리 기반의 클라우드 스트리밍 서비스 방법 및 이를 위한 방법 |
US11402812B1 (en) | 2019-03-22 | 2022-08-02 | The Chamberlain Group Llc | Apparatus and method for controlling a device |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001031442A2 (en) * | 1999-10-22 | 2001-05-03 | General Instrument Corporation | Management of volatile and non-volatile memory resources in digital communications terminals |
US6313851B1 (en) * | 1997-08-27 | 2001-11-06 | Microsoft Corporation | User friendly remote system interface |
KR20040044247A (ko) * | 2002-11-20 | 2004-05-28 | 엘지전자 주식회사 | 억세스 게이트웨이 시스템에서 다기능 이원 인터페이스 카드 |
US20060095332A1 (en) * | 2004-09-30 | 2006-05-04 | Sap Aktiengesellschaft | System and method for providing access to an application through a common interface for application extensions |
CN1802633A (zh) * | 2002-09-23 | 2006-07-12 | 艾利森电话股份有限公司 | 中间件中的安全访问管理器 |
US20070061724A1 (en) * | 2005-09-15 | 2007-03-15 | Slothouber Louis P | Self-contained mini-applications system and method for digital television |
WO2008047192A2 (en) * | 2006-09-19 | 2008-04-24 | Nokia Corporation | System and method for managing and using electronic widgets |
WO2008093782A1 (ja) * | 2007-02-02 | 2008-08-07 | Sony Corporation | 情報処理装置および方法、並びにプログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6950991B2 (en) * | 1995-11-13 | 2005-09-27 | Citrix Systems, Inc. | Interacting with software applications displayed in a web page |
EP1172726A3 (en) * | 2000-07-13 | 2005-04-20 | International Business Machines Corporation | Pervasive computing device and method |
US7574346B2 (en) * | 2000-10-30 | 2009-08-11 | Microsoft Corporation | Kernel emulator for non-native program modules |
US7330872B2 (en) * | 2001-10-02 | 2008-02-12 | Citrix Systems, Inc. | Method for distributed program execution with web-based file-type association |
WO2004028182A1 (en) * | 2002-09-23 | 2004-04-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for extending the functionality of a mobile platform using plug-in software |
US7846023B2 (en) * | 2003-03-27 | 2010-12-07 | Microsoft Corporation | Application-centric user interface techniques |
US8539073B1 (en) * | 2006-12-29 | 2013-09-17 | Google Inc. | Startup of container applications |
US8296785B2 (en) * | 2007-10-12 | 2012-10-23 | International Business Machines Corporation | Providing links between application programs |
EP2169569B1 (fr) * | 2008-09-30 | 2014-03-26 | Orange | Procédé et système de communication entre applications web distinctes |
-
2010
- 2010-02-26 WO PCT/KR2010/001238 patent/WO2010098622A2/ko active Application Filing
- 2010-02-26 US US13/202,735 patent/US20110302274A1/en not_active Abandoned
- 2010-02-26 EP EP10746461A patent/EP2403246A4/en not_active Withdrawn
- 2010-02-26 KR KR1020117021478A patent/KR20110126148A/ko not_active Application Discontinuation
- 2010-02-26 CN CN2010800095270A patent/CN102334344A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6313851B1 (en) * | 1997-08-27 | 2001-11-06 | Microsoft Corporation | User friendly remote system interface |
WO2001031442A2 (en) * | 1999-10-22 | 2001-05-03 | General Instrument Corporation | Management of volatile and non-volatile memory resources in digital communications terminals |
CN1802633A (zh) * | 2002-09-23 | 2006-07-12 | 艾利森电话股份有限公司 | 中间件中的安全访问管理器 |
KR20040044247A (ko) * | 2002-11-20 | 2004-05-28 | 엘지전자 주식회사 | 억세스 게이트웨이 시스템에서 다기능 이원 인터페이스 카드 |
US20060095332A1 (en) * | 2004-09-30 | 2006-05-04 | Sap Aktiengesellschaft | System and method for providing access to an application through a common interface for application extensions |
US20070061724A1 (en) * | 2005-09-15 | 2007-03-15 | Slothouber Louis P | Self-contained mini-applications system and method for digital television |
WO2008047192A2 (en) * | 2006-09-19 | 2008-04-24 | Nokia Corporation | System and method for managing and using electronic widgets |
WO2008093782A1 (ja) * | 2007-02-02 | 2008-08-07 | Sony Corporation | 情報処理装置および方法、並びにプログラム |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103906034A (zh) * | 2012-12-28 | 2014-07-02 | 中国电信股份有限公司 | 移动应用提供方法、服务器 |
CN103957460A (zh) * | 2014-03-24 | 2014-07-30 | 上海聚力传媒技术有限公司 | 一种用于生成电视接收终端桌面应用的方法与设备 |
CN106406942A (zh) * | 2016-09-05 | 2017-02-15 | 百度在线网络技术(北京)有限公司 | 处理插件安装过程的方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2403246A2 (en) | 2012-01-04 |
KR20110126148A (ko) | 2011-11-22 |
EP2403246A4 (en) | 2012-11-07 |
WO2010098622A2 (ko) | 2010-09-02 |
WO2010098622A3 (ko) | 2010-12-09 |
US20110302274A1 (en) | 2011-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102334344A (zh) | 处理应用程序的网络设备的架构及该网络设备的控制方法 | |
US8788567B2 (en) | Information processing apparatus, information processing system, information processing method, and program | |
CN103210660B (zh) | 接收设备、接收方法、程序和广播系统 | |
CN104685895B (zh) | 接收装置、接收方法、发送装置,和发送方法 | |
CN102017575B (zh) | Iptv会话管理 | |
CN104221395A (zh) | 信息处理设备、信息处理方法以及信息处理系统 | |
KR20130137130A (ko) | 수신 장치, 수신 방법 및 프로그램 | |
CN101529760B (zh) | Dvb-h上ipdc中的动态sdp更新 | |
CN102365870A (zh) | Iptv接收机和在iptv接收机中执行个人视频记录器功能的方法 | |
JP2013175849A (ja) | システム、映像表示装置、コンテンツサーバ、及び情報端末装置 | |
CN102984578A (zh) | 节目频道列表信息处理方法、视频终端及系统 | |
CN101741663A (zh) | 信息处理设备、信息处理系统、信息处理方法和程序 | |
CN105025371A (zh) | 节目更新方法和装置 | |
JP2010257180A (ja) | バージョン管理システム、装置、方法及びプログラム | |
EP3506115B1 (en) | Information processing device | |
JP6495477B2 (ja) | 情報処理方法、及び表示装置 | |
KR101082985B1 (ko) | 양방향 서비스를 테스트하는 장치 | |
CN101257612B (zh) | Iptv接收器和在iptv接收器中处理分级信息的方法 | |
KR101651127B1 (ko) | 네트워크 임베디드 시스템 및 컨텐츠 과금 방법 | |
JP2010288008A (ja) | Ip放送受信装置及びサーバ装置 | |
JP6768906B2 (ja) | 表示装置 | |
KR20110051791A (ko) | 원격 제어 가능한 tv 및 그 제어 방법 | |
JP6595733B2 (ja) | 表示装置 | |
JP7154356B2 (ja) | 表示装置 | |
KR102367572B1 (ko) | 방송수신장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120125 |