CN104756080B - 扩展主机设备的功能 - Google Patents

扩展主机设备的功能 Download PDF

Info

Publication number
CN104756080B
CN104756080B CN201380056098.6A CN201380056098A CN104756080B CN 104756080 B CN104756080 B CN 104756080B CN 201380056098 A CN201380056098 A CN 201380056098A CN 104756080 B CN104756080 B CN 104756080B
Authority
CN
China
Prior art keywords
equipment
function
host
network
host equipment
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.)
Active
Application number
CN201380056098.6A
Other languages
English (en)
Other versions
CN104756080A (zh
Inventor
文森特·迪罗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Priority to CN201810796765.9A priority Critical patent/CN109101335B/zh
Publication of CN104756080A publication Critical patent/CN104756080A/zh
Application granted granted Critical
Publication of CN104756080B publication Critical patent/CN104756080B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/002Special television systems not provided for by H04N7/007 - H04N7/18
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4112Peripherals receiving signals from specially adapted client devices having fewer capabilities than the client, e.g. thin client having less processing power or no tuning capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/258Client 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/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/258Client 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/25808Management of client data
    • H04N21/25858Management of client data involving client software characteristics, e.g. OS identifier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4108Peripherals receiving signals from specially adapted client devices characterised by an identification number or address, e.g. local network address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/485End-user interface for client configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

呈现了一种用于扩展主机设备的功能的系统、存储至少一种程序的计算机可读介质以及计算机实施方法。主机设备上的第一应用被执行,其中,所述第一应用被配置成在第二设备上执行,并且被配置成使用在第二设备上可用的功能,并且其中,该功能未被包含在主机设备中。从第一应用接收使用在第二设备上可用的功能的请求,其中,第一应用并不知晓第二设备的功能。通过至少一个网络建立至第二设备的连接。通过至少一个网络促进在第一应用和第二设备之间的通信,以将在第二设备上可用的功能提供给第一应用。

Description

扩展主机设备的功能
技术领域
本公开的实施例总体上涉及扩展(augment)主机设备的功能。
背景技术
电子设备通常包括一组固定的本机功能。例如,数字电视机顶盒包括接收并解码数字电视信号的功能,但是不包括使用蜂窝电话网络拨打电话的功能。智能电话包括使用蜂窝网络拨打电话的功能,但是不包括接收并解码数字电视信号的功能。利用第二设备的功能扩展第一设备的功能,将是期望的。
附图说明
在附图中,仅通过示例而非限定性方式,示出此处公开的实施例。在全部附图中,相同参考符号指代相对应的部件。
图1是图示根据一些实施例的网络系统的框图。
图2A是图示根据一些实施例的将一个设备与主机设备配对的示例过程的框图。
图2B是图示根据一些实施例的促进在主机设备上执行的应用和在一个设备上可用的功能之间的通信的示例过程的框图。
图3A是图示根据一些实施例的经由服务器将一个设备与主机设备配对的示例过程的框图。
图3B是图示根据一些实施例的促进在主机设备上执行的应用和在设备上可用的功能之间的通信的另一示例过程的框图。
图4是图示根据一些实施例的主机设备的框图。
图5是图示根据一些实施例的服务器的框图。
图6是图示根据一些实施例的设备的框图。
图7是根据一些实施例的用于扩展主机设备的功能的方法的流程图。
图8是根据一些实施例用于将设备与主机设备配对的方法的流程图。
图9根据一些实施例,用于接收对包含未在主机中包含的功能的设备的选择的方法的流程图。
具体实施方式
此处描述的实施例提供了用于扩展主机设备功能的技术。在一些实施例中,在主机设备上的第一应用被执行,其中,第一应用被配置成在第二设备上执行,并且被配置成使用在第二设备上可用的功能,并且其中,该功能未被包含在主机设备中。然后,从第一应用接收使用在第二设备上可用的功能的请求,其中,第一应用并不知晓第二设备的功能。通过至少一个网络建立至第二设备的连接,并且通过该至少一个网络促进在第一应用和第二设备之间的通信,以将在第二设备上可用的功能提供给第一应用。
图1是根据一些实施例的图示网络系统100的框图。网络系统100包括主机设备104,主机设备104耦合至显示设备102。主机设备104被配置成在显示设备102上显示内容。网络系统100包括网络120。网络120通常可以包括能够将计算节点耦合在一起的任何类型的有线或无线通信信道。这包括,但不限于,局域网、广域网或者网络的组合。在一些实施例中,网络120包括互联网。
在一些实施例中,主机设备104经由网络120被耦合至设备106。在一些实施例中,主机设备104经由网络121被耦合至设备106。在这些实施例中,网络121不同于网络120。例如,网络121可以是局域网(例如,Wi-Fi网络、蓝牙网络、蜂窝网络等)并且网络120可以是广域网(例如,互联网)。在一些实施例中,主机设备104被耦合至服务器110。
在一些实施例中,主机设备104包括计算机系统。例如,计算机系统可以包括,但不限于,膝上型计算机系统、台式计算机系统、移动电话、智能电话、平板计算机系统、个人数字助理或者服务器。在一些实施例中,主机设备104包括电视机顶盒。在一些实施例中,主机设备104包括电视机。在一些实施例中,主机设备104经由网络(例如,有线网络、无线网络等)被耦合至显示设备102。在一些实施例中,主机设备104经由外围线缆(例如,USB线缆、HDMI线缆、DVI线缆等)被耦合至显示设备102。
在一些实施例中,设备106是计算机设备。例如,计算机系统可以包括,但不限于,膝上型计算机系统、台式计算机系统、移动电话、智能电话、平板计算机系统、个人数字助理、或服务器。在一些实施例中,设备106包括电视机顶盒。在一些实施例中,设备106包括电视机。在一些实施例中,设备106包含电视接收或无线电接收功能或两者。在一些实施例中,电视接收包括但不限于通过线缆、卫星、光纤或广播电视(无线电波)的接收。无线电接收包括但不限于通过无线电波、线缆、卫星或光纤的接收。
在一些实施例中,主机设备104执行应用,这些应用被配置成在设备106上执行,并且被配置成使用在设备106上可用的功能,但其不被包含在主机设备104上(或不可用)。在这些实施例中,应用被设计、编程(例如,编码)或以其他方式配置成在设备106上而非在主机设备104上被执行。因此,这些应用可以在设备106上被执行,但如果没有此处所描述的这些实施例,则不可在主机设备104上被执行。例如,考虑使用设备的内嵌式相机拍照的相机应用。假定该相机应用被配置(设计、编程、编码等)成在设备106上执行,其包括内嵌式相机,但相机应用未被配置(设计、编程、编码等)成在主机设备104上执行,其不包括内嵌式相机。尽管缺少内嵌式相机,此处所描述的实施例扩展了主机设备104的功能,并且允许主机设备104执行该相机应用,并且利用设备106的内嵌式相机。此外,此处所描述的实施例允许主机设备104在不对相机应用进行修改的情况下执行相机应用。例如,相机应用可以被编译成字节码(例如,JAVA字节码),其在虚拟机上执行,该相机应用可以脚本语言(例如,TCL、PERL)编写,其在运行期被翻译,或者相机应用可以被编译为在特定操作系统内可执行(例如,Android OS、Chrome OS、iOS、MacOS、Microsoft Windows等)。下文将参考图2A、2B、3A、3B和7-9,更具体地描述扩展主机设备的功能的过程。
在一些实施例中,主机设备104经由网络120从服务器110获取在显示设备102上显示的内容。例如,主机设备104可以获取在服务器110上托管的视频(例如,电影、电视节目等)。网络120可以通常包括能够将计算节点耦合在一起的任何类型的有线或无线通信信道。这包括,但不限于局域网、广域网或者网络的组合。在一些实施例中,网络120包括互联网。
在一些实施例中,主机设备104从内容源112获取待在显示设备102上显示的内容。内容源112包括,但不限于,流送媒体服务、视频点播服务、无线电视服务、有线电视服务、卫星电视服务和/或网际协议电视服务。在一些实施例中,主机设备104经由网络120被耦合至内容源112。在一些实施例中,主机设备104被耦合至为主机设备104提供对内容源112的接入的媒介设备(例如,经由无线电视服务、有线电视服务、卫星电视服务)。
应注意的是,虽然图1示出了用于主机设备104、设备106和服务器110以及内容源112中的每个的一个实例,但多个主机设备、设备、服务器以及内容源可以存在于网络系统100中。而且,应注意的是,服务器110和内容源112中的每个可以包括多个分布式服务器。多个分布式服务器可以提供负载平衡和/或可以提供对附近计算机系统的低时延接入点。分布式服务器可以位于单一位置(例如,数据中心、建筑物等),或者可以在地理上分布于多个位置(例如,在各个地理位置的数据中心等)。而且,应注意的是,虽然此处所描述的实施例指的是主机设备104、设备106、服务器110和内容源112,但这些实施例可以应用于多个主机设备、设备、服务器和内容源。
图2A是图示根据一些实施例的将一个设备与一个主机设备配对的示例过程的框图200。如图2A中所示,主机设备104包括配对模块202、增强功能模块204、应用206、本机功能208和设备数据库210。配对模块202处理主机设备104和设备106之间的配对操作(例如,将主机设备104与设备106配对/关联,将设备106与主机设备104解除配对/解除关联等的操作),并且促进主机设备104和设备106之间的通信。本机功能208可以包括硬件功能(例如,传感器、内嵌式相机等)和/或软件功能(例如,软件、应用、微件等)。应用206是需要以下功能的应用,即,该功能在主机104的本机功能208中未包含,但是该功能被包含在设备106的本机功能226中。增强功能模块204扩展了主机设备104的本机功能208,使得主机功能104可以执行应用206,如本文所述。设备数据库210包括涉及当前与主机设备104配对(或者先前已经与之配对)的设备的信息以及这些设备的对应的功能的信息。
设备106包括配对模块222、增强功能模块224和本机功能226。配对模块222处理主机设备104和设备106之间的配对操作(例如,将主机设备104和设备104配对/关联,将设备106与主机设备104解除配对/解除关联的操作等)并且促进在主机设备104和设备106之间的通信。本机功能226可以包括硬件功能(例如,传感器、内嵌相机等)和/或软件功能(例如,软件、应用、微件等)。增强功能模块224促进了通过其他设备对设备106的本机功能226的接入。
在图2A所示的示例过程中,设备106的配对模块222发出与主机设备104配对的请求230。主机设备104的配对模块202接收该请求230,并且发起与设备106的配对操作232。应注意的是,配对操作将两个设备联系起来。配对操作通常在这些设备彼此首次连接的时候完成。一旦两个设备已经彼此建立了联系,这些设备可以建立与彼此的连接,而不必再次执行配对操作。也应注意的是,将两个设备彼此配对的操作不意味着在两个设备之间存在活动的连接。例如,主机设备104和设备106可以因为先前的配对操作而彼此联系在一起,但是在主机设备104和设备106之间可能不存在活动的连接,因为设备106被关断或者处于主机设备104的范围以外。
在配对操作232期间(或替代地,在配对操作已经完成以后),配对模块222将设备信息234传输至主机设备104。设备信息234包括涉及设备106的本机功能226的信息。配对模块202在与设备106相关联的设备数据库210中的一个或多个记录中存储设备信息234。
如图2B所示,在应用206的执行期间,增强功能模块204从应用206接收请求236,请求对于未包含在主机设备104的本机功能206中的功能的接入。增强功能模块2-4查询设备数据库210以确定当前与主机设备104配对的设备是否包含由应用206所请求的功能。在这个示例中,增强功能模块204确定由应用206所请求的功能被包含在设备106的本地功能中。响应于该确定,增强功能模块204向配对模块202发出请求,以建立至设备106的连接238。主机设备104的配对模块202和设备106的配对模块222在主机设备104和设备106之间建立连接238。使用网络120和/或网络121,可以建立连接238。配对模块202和222经由连接238,促进主机设备104的增强功能模块204和设备106的增强功能模块224之间的数据和/或命令240的通信。应用206使用连接238来接入应用206所请求的设备106的功能。这样一来,利用设备106的功能,扩展了主机设备104的功能。
在图2A和2B所示的示例过程中,主机设备104和设备106通过至少一个网络彼此连接,而没有促进主机设备104和设备106之间通信的任何介入的计算机系统。在一些实施例中,服务器110促进主机设备104和设备110之间的通信。这些实施例在图3A和3B中被图示。
图3A是图示根据一些实施例的经由服务器110将设备106与主机设备104配对的示例过程。如图3A所示,服务器110包括配对模块302和设备数据库304。配对模块302促进主机设备104和设备106之间的配对操作(例如,将主机设备104与设备106配对/关联的操作,将设备106与主机设备106解除配对/解除关联的操作等),并且促进主机设备104和设备106之间的通信。设备304包括涉及当前与主机设备104配对(或者先前已经配对)的设备以及这些设备的对应的功能的信息。应注意的是,设备数据库304可以包括涉及当前与其他主机设备配对(或者先前已经配对)的设备以及这些设备的对应的功能的信息。换言之,服务器110可以促进多个主机设备和设备之间的配对操作和通信。
在图3A所示的示例过程中,设备106的配对模块222将请求310发出至服务器110,请求服务器110促进设备106和主机设备104之间的配对操作。服务器110的配对模块302接收请求310,并且将请求311发出至主机设备104,请求主机设备104经由服务器110发起与设备106的配对操作。响应于请求311,主机设备104的配对模块202经由服务器110发起与主机设备的配对操作312。服务器110的配对模块302促进主机设备104和设备106之间的配对操作312。例如,配对模块302可以促进(例如,转发)涉及在主机设备104和设备106之间数据和/或命令的数据和/或命令。在配对操作312期间(或替代地,在配对操作312已经完成后),配对模块222经由服务器110将设备信息264传输至主机设备104。如上文所述,设备信息264包括涉及设备106的本地功能226的信息。服务器110的配对模块302在与设备106相关联的设备数据库304中存储一个或多个记录。类似的是,配对模块202在与设备106相关联的设备数据库210中的一个或多个记录中存储设备信息264。
如图3B所示,在应用206的执行期间,增强功能模块204从应用206接收请求336,请求接入未在主机设备104的本机功能208中包含的功能。增强功能模块204请求设备数据库210确定当前与主机设备104配对的设备是否包含由应用206所请求的功能。在这个示例中,增强功能模块204确定由应用206所请求的功能被包含在设备106的本机功能226中,设备106已经经由服务器110与主机设备104配对。响应于该确定,增强功能模块204向配对模块202发出请求,以经由服务器110建立与设备106的连接。主机设备104的配对模块202和服务器110的配对模块222在主机设备104和服务器110之间建立连接320。设备110的配对模块302和设备106的配对模块222在服务器110和设备106之间建立连接322。连接320和322可以使用网络120和/或网络121建立。配对模块202、302和222经由连接320和322,促进在主机设备104的增强功能模块204和设备106的增强功能模块224之间的数据和/或命令330的通信。应用206使用连接320和322以接入由应用206所请求的设备106的功能。这样一来,利用设备106的功能扩展了主机设备104的功能。
图4是图示根据一些实施例的主机设备104的框图。主机设备104通常包括用于执行程序(例如,在存储器410中存储的程序)的一个或多个处理单元(CPU,有时被称为处理器)402、一个或多个网络或其他通信接口404、存储器410、和用于这些组件互连的一个或多个通信总线409。通信总线409可以包括电路系统(有时被称为芯片集),其互连并且控制系统组件之间的通信。主机设备104包含用户接口405,其包括显示设备102和输入设备408(例如,键盘、鼠标、触摸屏、键区等)。主机设备104也包含一个或多个硬件功能430(例如,加速计、磁力计、温度传感器、内嵌相机、麦克风、扬声器、输入设备等)。存储器410包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备;以及通常包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备或其他非易失性固态存储设备。存储器410可选地包括与CPU 402远程定位的一个或多个存储设备。存储器410,或者替代地,在存储器410内的非易失性设备,包括非临时性计算机可读存储介质。在一些实施例中,存储器410或存储器410的计算机可读介质存储下列程序、模块和数据结构、或其子集:
●操作系统412,其包括用于处理各种基础系统服务和用于执行依赖于硬件任务的流程;
●通信模块414,其被用于经由一个或多个通信接口(有线或无线)和诸如互联网、其他广域网、局域网、城域网等的一个或多个通信网络,将主机设备104连接至其他计算机;
●用户接口模块416,其经由输入设备408从用户接收命令,并且在显示设备406中生成用户接口对象;
●配对模块202,其处理配对操作,并且促进主机设备104和其他设备(例如,设备106、服务器110等)之间的通信,如本文所述;
●增强功能模块204,其扩展主机设备104的本机功能208,使得主机设备104可以执行应用(例如,需要未包含在主机设备104的本机功能208中的功能的应用206),如本文所述;
●应用206,其需要未包含在主机设备104中的本机功能208中但是包含在另一设备的本机功能中的功能(例如,设备106的本机功能226),如本文所述;
●主机设备104的本机功能208(例如,软件功能、硬件功能430等),如文本所述;
●设备数据库,其包括涉及当前与主机设备104配对(或者先前已经配对)的设备以及这些设备的对应功能的信息,如本文所述。
在一些实施例中,上述识别的程序或模块对应于用于执行上文所描述功能的指令集合。这些指令集合可以由一个或多个处理器(例如,CPU 402执行)。上述识别的模块或程序(即,指令集合)不需要被实现为单独的软件程序、流程或模块,因此这些程序或模块的各个子集在各个实施例中可以被组合或以其他方式重新布置。在一些实施例中,存储器410存储上述识别的模块和数据结构的子集。此外,存储器410可以存储上文未描述的另外模块和数据结构。
虽然图4示出了“主机设备”,但图4较之作为此处所描述实施例的结构性示意图,更是作为在主机设备中可能存在的各种特征的功能描述。在实践中,如本领域的普通技术人员所承认的,单独示出的项目可以组合,并且一些项目可以被分离。
图5是图示根据一些实施例的服务器110的框图。服务器110通常包含用于执行程序(例如,在存储器510中存储的程序)的一个或多个处理单元(CPU,有时被称为处理器)502、一个或多个网络或其他通信接口504、存储器510、以及用于互连这些组件的一个或多个通信总线509。这些通信总线509可以包括电路系统(有时称为芯片),其互连并且控制系统组件之间的通信。服务器110可选地包括(但一般不包括)用户接口505,其包括显示设备506和输入设备508(例如,键盘、鼠标、触摸屏、键区等)。存储器510包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备;并且通常包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备或其他非易失性固态存储设备。存储器510可选地包括从CPU 502远程定位的一个或多个存储设备。存储器510,或者替代地在存储器510内的非易失性存储器设备,包括非临时性计算机可读存储介质。在一些实施例中,存储器510或者存储器510的计算机可读存储介质存储下列程序、模块和数据结构,或者其子集:
●操作系统512,其包含用于处理各种基本系统服务和用于执行依赖于硬件任务的流程;
●通信模块514,其用于经由一个或多个通信接口504(有线或无线)以及诸如互联网、其他广域网、局域网、城域网等的一个或多个通信网络,将服务器110连接至其他计算机;
●可选用户接口模块516,其经由输入设备508从用户接收命令,并且在显示设备506中生成用户接口对象;
●配对模块302,其促进在服务器110和设备(例如,主机设备104、设备106)之间的配对操作和通信,如本文所描述的;以及
●设备数据库304,其包括涉及当前与主机设备(例如,主机设备104)配对(或先前已经配对)的设备和这些设备的对应的功能的信息,如文本所描述的。
在一些实施例中,上文识别的程序和模块对应于用于执行上文所描述功能的功能集合。这些功能集合可以由一个或多个处理器(例如,CPU 502)执行。上述识别的模块或程序(即,指令集合)不需要被实施为单独的软件程序、流程或模块,因此,这些程序或模块的各个子集在各个实施例中可以被组合或以其他方式被布置。在一些实施例中,存储器510存储上文所识别的模块和数据结构的子集。此外,存储器510可以存储上文未描述的另外模块和数据结构。
虽然图5示出了“服务器”,图5是本文所描述的实施例的结构性示意图,但更是对在一组服务器中可能存在的各种特征的功能描述。在实践中,并且如本领域的普通技术人员所承认的,单独示出的项目可以被组合,并且一些项目可以被分离。例如,在图5中单独示出的一些项目可以在单一服务器上被实施,并且单一项目可以由一个或多个服务器实施。用于实施服务器的实际服务器数目以及特征如何在它们之间分配将根据实施例而变化,并且可以部分地取决于系统在高峰使用时段以及在平均使用时段期间必须处理的数据业务量。
图6是根据一些实施例的图示设备106的框图。设备106通常包括用于执行程序(例如,在存储器610中存储的程序)的一个或多个处理单元(CPU,有时也称为处理器)602、一个或多个网络或其他通信接口604、存储器610、以及用于互连这些组件的一个或多个通信总线609。通信总线609可以包括电路系统(有时被称为芯片),其互连并控制系统组件之间的通信。设备106包括用户接口605,其包括显示设备606和输入设备608(例如,键盘、鼠标、触摸屏、键区等)。主机设备104也包括一个或多个硬件功能630(例如,加速计、磁力仪、温度传感器、内嵌相机、麦克风、扬声器、输入设备等)。存储器610包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备;并且通常包括非易失性存储器,诸如一个或多个磁盘存储设备,光盘存储设备,闪存设备,或其他非易失性固态存储设备。存储器610可选地包括从CPU 602远程定位的一个或多个存储设备。存储器610或替代地在存储器610内的非易失性存储器设备,包括非临时性可读存储介质。在一些实施例中,存储器610或存储器610的计算机可读存储介质存储下列程序、模块和数据结构、或其子集:
●操作系统612,其包括用于处理各种基础系统服务和用于执行依赖硬件任务的流程;
●通信模块614,其用于经由该一个或多个通信接口604(有线或无线)以及诸如互联网、其他广域网、局域网、城域网等的一个或多个通信网络,将设备106连接至其他计算机;
●用户接口模块616,其经由输入设备608从用户接收命令,并且在显示设备606中生成用户接口对象;
●配对模块222,其处理配对操作,并且促进设备106和其他设备之间的通信(例如,主机设备104和服务器110等),如本文所描述的;
●增强功能模块224,其促进由其他设备(例如主机设备104、服务器110等)对于设备106的本机功能226的接入,如本文所描述的;以及
●设备106的本机功能226(例如,软件功能、硬件功能630等),如本文所描述的。
在一些实施例中,上文所识别的程序或模块对应于用于执行上文所描述功能的指令集合。这些指令集合可以由一个或多个处理器(例如,CPU 602)执行。上文所描述的模块或程序(即,指令集合)不需要被实施为单独的软件程序、流程或模块,因此这些程序或模块的各个子集在不同实施例中可以被组合或以其他方式重新布置。在一些实施方式中,存储器610存储上文所识别的模块和数据结构的子集。此外,存储器610可以存储上文未描述的另外模块和数据结构。
虽然图6示出了“设备”,但图6是对本文所描述的实施例的结构性示意图,更是对在设备中可能存储的各种特征的功能描述。在实践中,如本领域的普通技术人员所承认的,单独示出的项目可以被组合,并且一些项目可以被分离。
扩展主机设备的功能
图7是根据一些实施例的用于扩展主机设备104的方法700的流程图。主机设备104执行(702)第一应用,其中第一应用(例如,应用206)被配置成在第二设备(例如,设备106)上执行,并且被配置成使用在第二设备上可用、但是其未被包含在主机设备104内的功能。在一些实施例中,主机设备104包括第一应用框架,并且第二设备包括第二应用框架,其中,第一应用框架和第二应用框架是不同的应用框架。应注意的是,应用框架提供对于特定开发环境(例如,操作系统、web应用等)的标准应用结构。在一些实施例中,不在第二设备上执行第一应用。
在一些实施例中,第二设备的功能包括从由以下所组成的组所选择的功能:确定第二设备的位置、拨打电话、进行视频通话、拍摄超片、录制音频(例如,用于语音控制、音乐识别等)、录制视频、从用户接收输入(例如,经由第二设备的输入设备-键盘、触摸键区等)、从第二设备的传感器(例如,陀螺仪、加速计、磁力仪、温度传感器、光传感器、接近传感器等)接收传感器测量、以及发送文本消息。
在一些实施例中,第二设备功能包括从由以下所组成的组所选择的硬件功能:卫星定位设备(例如,GPS接收器等)、移动电信设备(例如,蜂窝无线电台、卫星无线电台等)、相机(例如,视频相机、静态相机等)、麦克风、扬声器、显示设备和输入设备(例如,指示设备、键盘、触摸屏等)。
增强功能模块204从第一应用接收(704)使用在第二设备上可用的功能的请求。在一些实施例中,第一应用并不知晓第二设备的功能。换言之,虽然第一应用已经被配置成在第二设备上执行,并且可能要求使用第二设备的功能,但是第二设备的功能不被传送到该应用本身。事实上,第一应用并不知晓第二设备被连接(例如,与其配对)至主机设备104,并且被用于提供第一应用已经从主机设备104所请求的功能。换言之,当第一应用做出使用在第二设备上可用的功能的请求时,第一应用假定主机设备104包括该功能。增强功能模块204隐藏连接至第二设备的复杂性,以接入该应用正在请求的功能。
配对模块202通过至少一个网络,建立(706)至第二设备的连接。在一些实施例中,当主机设备和第二设备被连接至局域网(例如,Wi-Fi网络、蓝牙网络等)时,配件模块202通过局域网建立至第二设备的连接。在一些实施例中,当主机设备连接到第一网络(例如,局域网等)并且第二设备连接至第二网络(例如,蜂窝网络)时,配对模块202通过第一网络和第二网络建立至第二设备的连接。
在一些实施例中,响应于主机设备确定该主机设备需要在该主机设备上不可用的资源,第二设备与主机设备配对。因此,主机设备不与第二设备配对,直到其需要另外的功能。在一些实施例中,在特定资源被请求之前,第二设备与主机设备配对。例如,当主机设备检测到新设备时,在任何特定资源被请求之前,主机设备与新检测到的第二设备配对。
配对模块202通过至少一个网络促进(708)在第一应用和第二设备之间的通信(例如,数据和/或命令240、数据和/或命令330),以将在第二设备上可用的功能提供给第一应用。在一些实施例中,配对模块202通过为主机设备104和第二设备提供进程间通信信道,通过该至少一个网络促进第一应用和第二设备之间的通信。
在一些实施例中,在从第一用用接收使用在第二设备上可用的功能的请求之前,第二设备与主机设备104配对。图8是根据一些实施例的用于将一个设备与主机设备配对的方法800的流程图。配对模块202将第二设备与主机设备104配对(802)。然后,增强功能模块204识别(804)第二设备的功能。例如,增强功能模块204可以从第二设备接收涉及第二设备的功能的信息。在另一示例中,增强功能模块204可以使用第二设备的设备标识符(例如,第二设备的MAC地址、第二设备的序列号等)查询设备数据库210,以获取涉及第二设备的功能的信息。
在一些实施例中,在从第一应用接收使用在第二设备上可用的功能的请求之前,增强功能模块204接收包括主机设备104中未包含的功能的设备选择。图9是根据一些实施例的用于接收包括主机设备104中未包含的功能的设备选择的方法900的流程图。增强功能模块204识别(902)与主机设备104配对并且主机设备可访问的多个设备,所述多个设备包括第二设备。应注意的是,当将各个设备连接到与主机设备104相同的网络(例如,Wi-Fi网络、蓝牙网络等)和/或通过多个网络连接到主机设备104时,各个设备对于主机设备104是可接入的。增强功能模块204在主机设备104的用户接口中(例如,显示设备102)呈现(904)多个设备。然后,增强功能模块204接收(906)对所述多个设备中的第二设备的选择。例如,经由输入设备408从主机设备104的用户接收选择。在一些实施例中,增强功能模块204从多个设备中自动建议第二设备,其中,建议的第二设备是最近选择的第二设备。在一些实施例中,根据请求的特定功能确定建议的第二设备,并且建议用于具体请求功能的最近选择的第二设备。例如,增强功能模块204呈现多个设备,其中一个设备在视觉上被突出显示。突出显示的设备是从所述多个设备最近选择的设备。替代地,突出显示设备是最近选择用于特定请求功能的设备。
应注意的是,尽管上文讨论指的是配对模块202和增强功能模块204执行图7-9所示的操作,但是这些操作可由主机设备104(或任何其他计算机系统)的任何模块(或多个模块)执行。
在图7-9中所示的方法可由存储在计算机可读存储介质中并且由主机设备的至少一个处理器执行的指令所管理。图7-9中所示的每项操作可以对应于在非临时性计算机存储器或计算机可读存储介质中存储的指令。在各个实施例中,非临时性计算机可读存储介质包括磁或光盘存储设备、诸如闪存的固态存储设备,或者一个或多个其他非临时性存储器设备。在非临时性计算机可读存储介质上存储的计算机可读指令可以是源代码、汇编语言代码、对象代码或者可以由一个或多个处理器翻译和/或执行的其他指令格式。
可以为本文描述为单一实例的组件、操作或结构提供多个实例。最后,在各个组件、操作和数据存储之间的界限在某种程度上是任意的,并且具体操作在特定阐释性配置的情境中示出。预想了其他功能分配,并且可以落入实施例的范围内。总体上,在这些示例配置中呈现为单独组件的结构和功能可以被实施为组合的结构或组件。类似地,被呈现为单一组件的结构和功能可以被实施为单独组件。这些和其他变更、修改、添加和改进落入这些实施例的范围内。
也应理解的是,虽然本文可能使用了“第一”、“第二”等的术语来描述各个实施例,但这些元素可能不受这些术语限制。这些术语仅被用于将一个元素与另一个元素区别开。例如,第一接触可以被称为第二接触,并且类似地,第二接触可以被称为第一接触,这改变了描述的含义,只要所有“第一接触”的出现被一致重新命名,并且所有第二接触的出现被一致重新命名。第一接触和第二接触都是接触,但它们是不同的接触。
本文所使用的术语仅是为了描述具体实施例,而非意在限定权利要求。如在实施例的描述和随附的权利要求中所使用的,单数形式“一”、“一个”和“该”旨在也包含复数形式,除非上文另有其他明确表述。也应理解的是,文本所使用的“和/或”指的是并且包括关联列表项的一个或多个的所有可能组合。将进一步理解的是,当在本说明书中使用术语“包括”和/或“包含”时,指明了陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组的存在或添加。
文本中所使用的术语“如果”可以被解释为根据情境,指“当……时”、“一旦”,或者“响应于确定”,或者“根据确定”,或者“响应于检测到”,陈述的前提条件为真。类似地,根据情境,短语“如果确定(陈述的前提条件为真)”,或者“如果(陈述的前提条件为真)”,或者“当(陈述的前提条件为真)时”,可以被解释为“一旦确定”,或者“响应于确定”,或者“根据确定”,或者“一旦检测到”,或者“响应于检测到”,陈述的前提条件为真时。
前述描述包括实施示出的实施例的示例系统、方法、技术、指令序列以及计算机程序产品。出于解释的目的,阐明了许多具体细节,以提供对本发明的各个实施例的理解。然而,对于本领域的技术人员将是显而易见的是,在没有这些具体细节的情况下,可以实施本发明的实施例。总体上,未具体示出公知指令实例、协议、架构和技术。
出于解释的目的,已经结合具体实施例进行了前述描述。然而,上文的说明性讨论并非旨在穷尽或将这些实施例限定与公开的精确形式。根据上文的教导,许多修改和变更是可能的。选择和描述这些实施例是为了最好地解释原理和它们的实际应用,以使得本领域的技术人员能够最好地利用这些实施例以及为适应所考虑的特定用途做出各种改变的各种实施例。

Claims (24)

1.一种用于扩展主机设备的功能的计算机实施方法,所述方法在所述主机设备上被执行,所述主机设备具有至少一个处理器以及存储至少一个程序的存储器,所述至少一个程序用于由所述至少一个处理器执行以执行所述方法,所述方法包括:
经由网络将所述主机设备和第二计算设备配对,其中所述第二计算设备具有至少一个处理器和存储器,所述存储器存储用于由所述至少一个处理器执行的至少一个第二程序;
在设备数据库中存储关于所述第二计算设备的第一功能的信息,其中所述第一功能包括不是由所述主机设备提供的多媒体或传感器功能,并且对于与所述主机设备配对的多个设备,所述设备数据库包括关于所述多个设备中的每一个的至少一个相应多媒体或传感器功能的信息;
在所述主机设备上执行第一应用,所述第一应用被配置成使用不是由所述主机设备提供的所述第一功能;
响应于从所述第一应用接收使用不是由所述主机设备提供的所述第一功能的请求,参考所述设备数据库来确定所述多个设备中的所述第二计算设备提供所述第一功能,其中,所述第一应用并不知晓所述第二计算设备具备所述第一功能;
独立于所述第一应用通过至少一个网络建立至所述第二计算设备的连接;以及
通过所述至少一个网络促进在所述第一应用和所述第二计算设备之间的通信,以提供由所述第二计算设备执行的所述第一功能的输出,其中,所述第一应用并不知晓所述第二计算设备被连接用于提供所述第一功能。
2.根据权利要求1所述的计算机实施方法,其中,通过所述至少一个网络促进在所述第一应用和所述第二设备之间的通信包括:为所述主机设备和所述第二设备提供进程间通信信道。
3.根据权利要求1所述的计算机实施方法,进一步包括:
将所述第二设备与所述主机设备配对;以及
识别所述第二设备的功能。
4.根据权利要求1所述的计算机实施方法,包括:
识别与所述主机设备配对并且对于所述主机设备可接入的多个设备,所述多个设备包括所述第二设备:
在所述主机设备的用户接口中呈现所述多个设备;以及
接收对所述多个设备中的所述第二设备的选择。
5.根据权利要求1所述的计算机实施方法,其中,所述主机设备包括第一应用框架,并且所述第二设备包括第二应用框架,其中,所述第一应用框架和所述第二应用框架是不同的应用框架。
6.根据权利要求1所述的计算机实施方法,其中,所述主机设备和所述第二设备连接至局域网,并且其中,通过至少一个网络建立至所述第二设备的所述连接包括:通过所述局域网建立至所述第二设备的连接。
7.根据权利要求1所述的计算机实施方法,其中,所述主机设备被连接至第一网络,并且所述第二设备被连接至第二网络,并且其中,通过至少一个网络建立至所述第二设备的所述连接包括:通过所述第一网络和所述第二网络建立至所述第二设备的连接。
8.根据权利要求1所述的计算机实施方法,其中,所述第二设备的所述第一功能包括从由下列所组成的组选择的功能:
确定所述第二设备的位置;
拨打电话;
进行视频通话;
拍照;
记录音频;
记录视频;
从用户接收输入;
从所述第二设备的传感器接收传感器测量;以及
发送文本消息。
9.根据权利要求1所述的计算机实施方法,其中,所述第二设备的所述第一功能包括从下列所组成的组选择的硬件功能:
卫星定位设备;
移动电信设备;
相机;
麦克风;
扬声器;
显示设备;以及
输入设备。
10.根据权利要求1所述的计算机实施方法,其中,所述主机设备包括电视机顶盒。
11.根据权利要求1所述的计算机实施方法,其中,所述主机设备包括电视机。
12.根据权利要求1所述的计算机实施方法,其中,所述第一应用不在所述第二设备上被执行。
13.一种用于扩展主机设备的功能的系统,包括:
至少一个处理器;
存储器;以及
在所述存储器中存储的并且可由所述至少一个处理器执行的至少一个程序,所述至少一个程序包括用于以下的指令:
经由网络将所述主机设备和第二计算设备配对,其中所述第二计算设备具有至少一个处理器和存储器,所述存储器存储用于由所述至少一个处理器执行的至少一个第二程序;
在设备数据库中存储关于所述第二计算设备的第一功能的信息,其中所述第一功能包括不是由所述主机设备提供的多媒体或传感器功能,并且对于与所述主机设备配对的多个设备,所述设备数据库包括关于所述多个设备中的每一个的至少一个相应多媒体或传感器功能的信息;
在所述主机设备上执行第一应用,所述第一应用被配置成使用不是由所述主机设备提供的所述第一功能;
响应于从所述第一应用接收使用不是由所述主机设备提供的所述第一功能的请求,参考所述设备数据库来确定所述多个设备中的所述第二计算设备提供所述第一功能,其中,所述第一应用并不知晓所述第二计算设备具备所述第一功能;
独立于所述第一应用通过至少一个网络,建立至所述第二计算设备的连接;以及
通过所述至少一个网络促进在所述第一应用和所述第二计算设备之间的通信,以提供由所述第二计算设备执行的所述第一功能的输出,其中,所述第一应用并不知晓所述第二计算设备被连接用于提供所述第一功能。
14.根据权利要求13所述的系统,其中,用于通过所述至少一个网络促进在所述第一应用和所述第二设备之间的通信的所述指令包括:用于为所述主机设备和所述第二设备提供进程间通信信道的指令。
15.根据权利要求13所述的系统,其中,所述至少一个程序包括用于以下的指令:
将所述第二设备与所述主机设备配对;以及
识别所述第二设备的功能。
16.根据权利要求13所述的系统,其中,所述至少一个程序包括用于以下的指令:
识别与所述主机设备配对并且对于所述主机设备可接入的多个设备,所述多个设备包括所述第二设备:
在所述主机设备的用户接口中呈现所述多个设备;以及
接收对所述多个设备中的所述第二设备的选择。
17.根据权利要求13所述的系统,其中,所述主机设备包括第一应用框架,并且所述第二设备包括第二应用框架,其中,所述第一应用框架和所述第二应用框架是不同的应用框架。
18.根据权利要求13所述的系统,其中,所述主机设备和所述第二设备被连接至局域网,并且其中,通过至少一个网络建立至所述第二设备的所述连接包括:通过所述局域网建立至所述第二设备的连接。
19.根据权利要求13所述的系统,其中所述主机设备被连接至第一网络,并且所述第二设备被连接至第二网络,并且其中,通过至少一个网络建立至所述第二设备的连接包括:通过所述第一网络和所述第二网络建立至所述第二设备的连接。
20.根据权利要求13所述的系统,其中,所述第二设备的所述第一功能包括从下列所组成的组所选择的功能:
确定所述第二设备的位置;
拨打电话;
进行视频通话;
拍照;
记录音频;
记录视频;
从用户接收输入;
从所述第二设备的传感器接收传感器测量;以及
发送文本消息。
21.根据权利要求13所述的系统,其中,所述第二设备的所述第一功能包括从下列所组成的组所选择的硬件功能:
卫星定位设备;
移动电信设备;
相机;
麦克风;
扬声器;
显示设备;以及
输入设备。
22.根据权利要求13所述的系统,其中,所述主机设备包括电视机顶盒。
23.根据权利要求13所述的系统,其中,所述主机设备包括电视机。
24.根据权利要求13所述的系统,其中,所述第一应用未在所述第二设备上被执行。
CN201380056098.6A 2012-08-29 2013-08-29 扩展主机设备的功能 Active CN104756080B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810796765.9A CN109101335B (zh) 2012-08-29 2013-08-29 扩展主机设备的功能

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/598,530 2012-08-29
US13/598,530 US8984186B2 (en) 2012-08-29 2012-08-29 Augmenting capabilities of a host device
PCT/US2013/057372 WO2014036311A1 (en) 2012-08-29 2013-08-29 Augmenting capabilities of a host device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201810796765.9A Division CN109101335B (zh) 2012-08-29 2013-08-29 扩展主机设备的功能

Publications (2)

Publication Number Publication Date
CN104756080A CN104756080A (zh) 2015-07-01
CN104756080B true CN104756080B (zh) 2018-08-17

Family

ID=49213095

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810796765.9A Active CN109101335B (zh) 2012-08-29 2013-08-29 扩展主机设备的功能
CN201380056098.6A Active CN104756080B (zh) 2012-08-29 2013-08-29 扩展主机设备的功能

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201810796765.9A Active CN109101335B (zh) 2012-08-29 2013-08-29 扩展主机设备的功能

Country Status (5)

Country Link
US (2) US8984186B2 (zh)
EP (2) EP2891063A1 (zh)
KR (2) KR101744183B1 (zh)
CN (2) CN109101335B (zh)
WO (1) WO2014036311A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103918277B (zh) 2011-08-26 2017-12-26 谷歌公司 用于确定媒体项正被呈现的置信水平的系统和方法
US9552598B2 (en) * 2012-10-12 2017-01-24 Ebay Inc. Mobile trigger web workflow
US9374517B2 (en) 2012-10-12 2016-06-21 Ebay Inc. Guided photography and video on a mobile device
US10448453B2 (en) * 2015-09-25 2019-10-15 Intel Corporation Virtual sensor system
US10681149B2 (en) 2016-10-10 2020-06-09 Paypal, Inc. Application redirection system
US11272481B2 (en) 2016-11-14 2022-03-08 Google Llc Distributed resource model
US10754673B2 (en) * 2017-05-08 2020-08-25 Google Llc Smart device configuration guidance via automated assistant interface of separate client device
US10747560B2 (en) 2018-03-20 2020-08-18 Microsoft Technology Licensing, Llc Computerized task guidance across devices and applications
US10540977B2 (en) 2018-03-20 2020-01-21 Microsoft Technology Licensing, Llc Proximity-based engagement with digital assistants
CN109753315A (zh) * 2018-11-22 2019-05-14 广州小鸡快跑网络科技有限公司 一种智能设备交互式内容编辑实现方法及存储介质
US10789093B2 (en) * 2019-02-05 2020-09-29 Citrix Systems, Inc. Extension of mobile device sensor capabilities into an application
US11438435B2 (en) 2019-03-01 2022-09-06 Microsoft Technology Licensing, Llc User interaction and task management using multiple devices
US11438497B2 (en) * 2019-12-13 2022-09-06 Sony Group Corporation Managing multiple image devices
EP4173268B1 (en) 2020-06-29 2024-04-24 Google LLC Distributed ambient computing within an environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1453715A (zh) * 2002-04-26 2003-11-05 株式会社日立制作所 拥有虚拟资源的存储系统
CN102362241A (zh) * 2009-02-02 2012-02-22 施克莱无线公司 用于多功能设备枚举的系统和方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6411276B1 (en) * 1996-11-13 2002-06-25 Immersion Corporation Hybrid control of haptic feedback for host computer and interface device
US6141705A (en) * 1998-06-12 2000-10-31 Microsoft Corporation System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed
US6418555B2 (en) * 1998-07-21 2002-07-09 Intel Corporation Automatic upgrade of software
US6963784B1 (en) 1998-10-16 2005-11-08 Sony Corporation Virtual device control modules and function control modules implemented in a home audio/video network
EP1205843A3 (en) 2000-11-13 2004-10-20 Canon Kabushiki Kaisha User interfaces
US8352624B2 (en) * 2002-04-18 2013-01-08 Citrix Systems, Inc. System for and method of streaming data to a computer in a network
US7043572B2 (en) * 2003-06-06 2006-05-09 Microsoft Corporation Method and system for providing a peripheral service to a host computing device
US8452847B2 (en) 2003-09-22 2013-05-28 Broadcom Corporation Processor sharing between in-range devices
AU2004306903C1 (en) * 2003-10-15 2009-01-22 Qualcomm Incorporated High data rate interface
EP2247070B1 (en) * 2003-12-08 2013-09-25 QUALCOMM Incorporated High data rate interface with improved link synchronization
JP2005182481A (ja) * 2003-12-19 2005-07-07 Hitachi Ltd ネットワーク機器
JP4971610B2 (ja) * 2005-09-01 2012-07-11 キヤノン株式会社 デバイスドライバを管理するためのプログラムおよび方法と情報処理装置
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8992304B2 (en) * 2006-04-13 2015-03-31 Igt Methods and systems for tracking an event of an externally controlled interface
US8784196B2 (en) * 2006-04-13 2014-07-22 Igt Remote content management and resource sharing on a gaming machine and method of implementing same
US9028329B2 (en) * 2006-04-13 2015-05-12 Igt Integrating remotely-hosted and locally rendered content on a gaming device
US8036600B2 (en) * 2009-04-27 2011-10-11 Airbiquity, Inc. Using a bluetooth capable mobile phone to access a remote network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1453715A (zh) * 2002-04-26 2003-11-05 株式会社日立制作所 拥有虚拟资源的存储系统
CN102362241A (zh) * 2009-02-02 2012-02-22 施克莱无线公司 用于多功能设备枚举的系统和方法

Also Published As

Publication number Publication date
EP4220402A3 (en) 2023-08-09
WO2014036311A1 (en) 2014-03-06
US20150181156A1 (en) 2015-06-25
US9386264B2 (en) 2016-07-05
US20140063344A1 (en) 2014-03-06
KR101744183B1 (ko) 2017-06-07
KR20150048196A (ko) 2015-05-06
US8984186B2 (en) 2015-03-17
CN109101335B (zh) 2020-09-22
EP2891063A1 (en) 2015-07-08
KR20160042188A (ko) 2016-04-18
EP4220402A2 (en) 2023-08-02
KR101612390B1 (ko) 2016-04-14
CN104756080A (zh) 2015-07-01
CN109101335A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
CN104756080B (zh) 扩展主机设备的功能
US10949158B2 (en) Screenshot method and apparatus
US8959141B2 (en) System and method for pervasive computing
JP2019537158A (ja) リソース共有方法、装置およびシステム
CN106161537A (zh) 远程过程调用的处理方法、装置、系统及电子设备
US11204681B2 (en) Program orchestration method and electronic device
WO2015051705A1 (zh) 兼容支持手持设备安卓应用程序的多apn并发方法及其系统
CN103516882B (zh) 一种基于多屏互动场景图片播放方法及系统
CN110008019B (zh) 共享服务器资源的方法及装置、系统
JP2016502781A (ja) リアル・タイム通信および体験共有セッション中におけるサービスの更新
CN112565317B (zh) 混合云系统及其数据处理方法、设备及存储介质
CN112749022A (zh) 相机资源访问方法、操作系统、终端和虚拟相机
CN106658142A (zh) 界面配置方法及装置
WO2020082210A1 (en) Providing virtual desktop within computing environment
CN106341463A (zh) 一种基于物联网的移动互联音视频管控系统
CN109614271A (zh) 多个集群数据一致性的控制方法、装置、设备及存储介质
CN110750206A (zh) 数据处理方法、装置及系统
CN107517459A (zh) 一种无线传屏中建立连接的方法、装置、系统及存储介质
CN103716317A (zh) 一种资源网关、及资源访问授权方法
CN113821333A (zh) 安卓应用程序迁移的方法和装置
CN110474891A (zh) 基于多系统智能设备的业务访问控制方法及装置
CN104038511A (zh) 一种资源管理方法及装置
CN112445602A (zh) 资源调度方法、装置、系统及电子设备
CN106778193B (zh) 一种客户端和ui交互方法
CN110120963A (zh) 一种数据处理方法、装置、设备和机器可读介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.

GR01 Patent grant
GR01 Patent grant