CN105653360A - 一种用于跨应用取得功能的方法和系统 - Google Patents

一种用于跨应用取得功能的方法和系统 Download PDF

Info

Publication number
CN105653360A
CN105653360A CN201510713789.XA CN201510713789A CN105653360A CN 105653360 A CN105653360 A CN 105653360A CN 201510713789 A CN201510713789 A CN 201510713789A CN 105653360 A CN105653360 A CN 105653360A
Authority
CN
China
Prior art keywords
function
user
user interface
instruction
calling
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
Application number
CN201510713789.XA
Other languages
English (en)
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
Publication of CN105653360A publication Critical patent/CN105653360A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2145Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明涉及一种用于跨应用取得功能的方法和系统。公开了一种用于跨多个用户界面取得功能并且提供调用并非存在于特定用户界面的功能以用于执行的方法和系统。在所述系统中实现的方法可以包括接收i)识别与第一用户界面相关联的第一功能的数据,以及ii)用于在一个或多个用户界面中调用所述第一功能的指令;从第二用户界面接收用于调用所述第一功能的请求;使用处理器选择被配置为在所述第二用户界面中调用所述第一功能的指令;将所述指令传送至所述第二用户界面;以及使用所传送的指令在与所述第二用户界面相关联的应用中调用所述第一功能。

Description

一种用于跨应用取得功能的方法和系统
技术领域
本公开一般地涉及跨应用取得和提供功能。
背景技术
计算机应用能够在具有相同或不同功能的各种设备上实现并执行。然而,用户可能会由于某些功能并没有随特定用户界面(例如,应用、设备、入口点)提供而是在其它用户界面处提供而体验到不便。例如,特定用户界面可能并没有提供语音搜索功能并且因此无法提供使用用户语音的互联网搜索功能。然而,另一个用户界面可能提供了语音搜索功能,并且用户因此能够使用用户的语音进行互联网搜索。因此,用户可以根据该用户正在使用的用户界面而具有不同的体验。因此,需要一种跨各种用户界面取得和提供功能的方法以缓解这样的用户不便并且为用户提供更为一致的体验。
发明内容
本公开一般地描述了一种用于跨各种用户界面取得功能并且提供调用并未出现在特定用户界面处的功能的指令以用于执行的方法和系统。
本说明书中所描述的主题的创新性方面在一些实施方式中可以以计算机实现的方法来实现,其包括以下操作:接收i)识别与第一用户界面相关联的第一功能的数据,以及ii)用于在一个或多个用户界面中调用所述第一功能的指令;从第二用户界面接收用于调用所述第一功能的请求;使用处理器选择被配置为在所述第二用户界面中调用所述第一功能的指令;将所述指令传送至所述第二用户界面;以及使用所传送的指令在与所述第二用户界面相关联的应用中调用所述第一功能。
在一些实施方式中,提供了一种包括指令的非暂时性计算机可读存储介质,所述指令当被一个或多个计算机执行时,使得所述一个或多个计算机执行操作。所述操作包括接收i)识别与第一用户界面相关联的第一功能的数据,以及ii)用于在一个或多个用户界面中调用所述第一功能的指令;从第二用户界面接收用于调用所述第一功能的请求;使用所述一个或多个计算机选择被配置为在所述第二用户界面中调用所述第一功能的指令;将所述指令传送至所述第二用户界面;以及使用所传送的指令在与所述第二用户界面相关联的应用中调用所述第一功能。
在一些实施方式中,系统包括一个或多个计算机以及存储指令的一个或多个存储设备,所述指令是可操作的并且当由一个或多个计算机执行时,使得所述一个或多个计算机执行操作。所述操作包括接收i)识别与第一用户界面相关联的第一功能的数据,以及ii)用于在一个或多个用户界面中调用所述第一功能的指令;从第二用户界面接收用于调用所述第一功能的请求;使用所述一个或多个计算机选择被配置为在所述第二用户界面中调用所述第一功能的指令;将所述指令传送至所述第二用户界面;并且使用所传送的指令在与所述第二用户界面相关联的应用中调用所述第一功能。
这些方面的其它实施例包括相对应的被配置为执行所述方法的操作的系统、装置、以及在计算机存储设备上进行编码的计算机程序。
这些和其它实施例可选地均可以包括以下一个或多个特征。例如,接收所述请求包括接收所述第二用户界面的用户的用户证书。所述多个用户界面包括应用、设备,以及至与所述用户相关联的应用的入口。响应于基于所述第二用户界面的所述用户的所述用户证书而验证所述第二用户界面的所述用户被授权使用所述第一功能,用于调用所述第一功能的指令被选择。用于调用所述第一功能的请求根据优先级顺序被接收,所述优先级顺序基于用户对所述第一功能的使用频率、用户定制、用户状态、所述第一用户界面和所述第二用户界面之间的相似度阈值、以及所述第二用户界面的设计选择中的至少一个。接收用于调用所述第一功能的请求包括接收经由所述第二用户界面调用所述第一功能的用户选择。所述第二用户界面不同于所述第一用户界面。所述操作进一步包括将与网络连接性相关联的数据连同被配置为在所述第二用户界面中调用所述第一功能的指令一起进行传送。在与所述第二用户界面相关联的应用中调用所述第一功能包括:基于与指示第一类型的网络连接的网络连接性相关联的数据使用第一执行调用所述第一功能;以及基于与指示第二类型的网络连接的网络连接性相关联的数据使用第二执行调用所述第一功能。
一个或多个实施例的细节在附图和以下描述中给出。其它特征和优势由于描述、附图和权利要求而是显而易见的。
附图说明
图1描绘了图示用于取得功能的系统的框图。
图2描绘了图示用于取得功能的系统的框图。
图3描绘了实现语音搜索功能的两个用户界面的对比性示例。
图4描绘了基于所接收到的数据而执行的功能的对比性示例。
图5描绘了用于取得功能的方法的流程图。
同样的附图标记和指称在各图中指示同样的要素。
具体实施方式
本公开一般地描述了用于跨各种用户界面取得功能并且提供调用并未出现在特定用户界面的功能的指令以用于执行的方法和系统。
根据实施方式,系统可以包括数据库,所述数据库存储与经由诸如互联网的网络可用的各种应用的功能相关联的数据。与功能相关联的数据可以包括用于调用一个或多个用户界面中的特定功能的指令。当用户经由用户界面访问应用时,如果与该被访问的应用相关联的功能缺失或者并不存在于用户界面中,则该用户界面可以请求该数据库向用户提供所缺少的功能。因此,无论用户所使用的用户界面如何,与应用相关联的功能都可以被提供给用户。例如,参考图1,当用户访问、执行、或安装用户界面(UI)110时,UI110可以搜索与UI110相兼容但是并不可用于执行(例如,缺少)的所有可用功能。当检测到一个或多个缺少的兼容功能时,UI110可以针对调用该缺少的兼容功能的指令向数据库120发送请求(S115)。数据库120部分地通过使用功能映射表130对用于调用缺少的兼容功能的指令进行搜索而对该请求进行验证和处理(S125)。在检索到该指令之后,数据库120将该指令传送至UI110(S135)。当接收到该指令时,现在具有提供缺少的兼容功能的附加功能的数据的UI110可以向用户提供调用或者执行之前所缺少的功能的选项。
图2描绘了更为详细地图示了以上所讨论的实施方式的系统200的框图。系统200包括至少一个UI230和/或240、模块250、云系统260、以及映射表270。参考图2,用户可以访问一个或多个UI230和240。例如,用户可以在该用户尝试下载UI230和240或者使用UI230和240以执行任意功能时访问UI230和240。UI可以包括用于执行功能的任意入口点。例如,UI230和240中的每一个可以包括应用、设备、软件、硬件、和/或用于用户的功能的任何其它接入点。在一些实施方式中,当用户访问UI230/240时,该用户可以提供用户证书。例如,UI230/240可以在为该用户提供访问之前请求用户提供用户证书。该用户证书例如可以包括登录、密码、通行密钥、图像、或者可以帮助识别用户的任何唯一信息。该用户证书然后可以被用来对用户进行认证。UI230/240或者支持UI230/240的系统200可以使用该用户证书对用户活动进行追踪和/或记录。例如,支持UI230/240的系统200可以追踪该用户所访问的所有用户界面、该用户所调用的所有功能、以及一般地,该用户在系统200上的任何活动。用户活动可以被用来生成用户的用户简档,其包括例如与用户偏好、用户设备、用户所执行的功能的计数和/或频率、反映用户兴趣(例如,购物、运动、搜索兴趣)的用户的个性化简档、位置信息,以及反映用户的社交网络的社交网络简档相关联的信息。所生成的用户简档可以被发送至与该用户相关联的用户界面(例如,230、240)中的每一个、映射表270、和/或模块250。
当用户访问UI230和240中的一个或多个时,UI230和240中的每一个可以确定:i)与相应UI相兼容并且在用户访问相应UI时能够由该相应UI执行的功能;以及ii)与相应UI相兼容但是在用户访问相应UI时无法由相应UI执行的任意功能。例如,UI230可以是web浏览器应用,其确定其兼容并且能够执行GoogleTM搜索功能。该web浏览器应用还能够确定其兼容但是无法执行基于语音的搜索功能。在另一个示例中,UI240可以是移动电话,其确定其兼容并且能够执行与GoogleMapsTM地图服务或应用相关联的驾驶指引功能,但是UI240还可以确定其兼容但是无法执行与涉及到GoogleMapsTM地图服务或应用的“合乘”或出租车呼叫功能相关联的功能。与UI(例如,230、240)相兼容的功能可以包括已经由编程人员或设计人员设计成由该UI所执行的功能或者能够被该UI所执行的功能。兼容功能还可以包括与类似于该UI的另一个UI相关联的功能。该功能可以是包括被配置成接收输入、提供输出、或者在UI内内部地处理信息的功能的任意适当类型。
如图2所示,UI230可以包括功能A、B、和C,而UI240可以包括功能A、B、C、和D。这里,A、B、C、和D可以是指彼此不同的一般功能。UI230可以确定功能D与UI230兼容但是并不存在。图3中提供了说明性示例。参考图3,UI1(A)可以是具有GoogleTM搜索功能但是并没有基于语音的搜索功能的web浏览器应用,基于语音的搜索功能是缺少的兼容功能。作为对比,UI2可以是具有GoogleTM搜索功能和基于语音的搜索功能的Google搜索应用。
返回参考图2,在识别到诸如功能D的一个或多个与UI230兼容但是无法被UI230执行(例如,并不存在)的功能之后,UI230可以向模块250传送用于调用缺少的一个或多个功能(例如,功能D)的请求(S202)。用于调用缺少的一个或多个功能(例如,功能D)的请求可以以各种方式生成,并且用于提供缺少的兼容功能的优先级顺序可以被确定并且随该请求一起提供。在一些实施方式中,用户可以通过UI230选择特定的缺少的兼容功能作为具有最高优先级或者作为用户有兴趣调用的仅有功能。在一些实施方式中,与用户频繁执行的另一功能相类似的特定的缺少的兼容功能可以被给予比用户较不频繁执行的功能更高的优先级。在一些实施方式中,多个缺少的兼容功能能够根据与UI230相关联的设计配置或规则被分配优先级。在一些实施方式中,特定的缺少的兼容功能可以基于用户的状态而被分配优先级。例如,如果UI230或系统200例如通过一个或多个适当的运动检测器了解到UI230的用户正在乘车移动或行进,则UI230可以将诸如Google相关功能或“合乘”相关功能的与行进相关联的功能优先化。
可以使用任意适当的消息机制传送调用缺少的一个或多个功能(例如,功能D)的请求。例如,该请求可以通过以任意适当协议配置的数据分组来进行传送,例如脚本语言、远程过程调用、电子邮件、应用编程接口(API)、简单对象访问协议(SOAP)方法、公共对象请求代理体系结构(CORBA)、HTTP(超文本传输协议)、REST(代表性状态传输)的任意适当协议,、用于软件组件使用用于从一个设备向另一个设备发送信息的任意其它已知技术来互相通信的任意接口、或者它们的任意组合。
所传送的请求除了该请求之外还可以包括补充数据。该补充数据可以包括各种类型的数据,例如包括指示该请求从其所发送的用户界面的类型、与UI230相关联的网络和网络连接的类型、与UI230相兼容并且能够在其中执行的缺少的功能、与UI230相关联的用户证书、与UI230相关联的设备的位置信息、与用户相关联的社交网络信息、以及指示用户的被追踪活动的信息中的至少一种的信息。如果UI230是诸如便携式电子终端的设备,则与UI230相关联的设备可以是该便携式电子终端。如果UI230是在该设备上提供的应用或入口点,则与UI230相关联的设备可以是在其上提供该应用或入口点的设备。与用户相关联的社交网络信息可以包括有关用户的各种社交网络和用户的联系人(例如,好友、同事、追随者)的信息。包括任意补充数据的请求可以通过一个或多个网络被传送至模块250。
该一个或多个网络可以向连接至该一个或多个网络的任意用户界面(例如,UI230)提供网络接入、数据传输、和其它服务。总体上,该一个或多个网络可以包括并实现任意常规定义的网络架构,包括由诸如全球移动通信系统(GSM)联盟、互联网工程任务组(IETF)HE全球微波接入互操作性(WiMAX)论坛之类的标准实体所定义的那些网络架构。例如,该一个或多个网络可以实现GSM架构、通用分组无线电服务(GPRS)架构、通用移动电信系统(UMTS)架构、以及被称作长期演进(LTE)的UMTS的演进中的一种或多种。该一个或多个网络可以实现由WiMAX论坛或无线保真(WiFi)架构定义的WiMAX架构。该一个或多个网络可以包括,例如,局域网(LAN)、广域网(WAN)、互联网、虚拟局域网(VLAN)、企业局域网、第三层虚拟专用网(VPN)、企业IP网络、或者其任意组合。
该一个或多个网络可以包括一个或多个数据库、接入点、服务器、存储系统、云系统、和模块。例如,该一个或多个网络可以包括至少一个服务器,所述服务器可以包括耦合至一个或多个网络的任意适当计算设备,包括但并不局限于个人计算机、服务器计算机、一系列服务器计算机、小型计算机、和主计算机,或者它们的组合。至少一个服务器可以是运行网络操作系统的web服务器(或者一系列服务器),上述网络操作系统的示例可以包括但并不局限于Server、该至少一个服务器可以被用于和/或提供云和/或网络计算。虽然在图中并未示出,但是该服务器可以具有到外部系统的连接,该外部系统提供诸如电子邮件、SMS消息、文本消息的消息功能,以及诸如广告服务、搜索服务等的其它功能。
在一些实施方式中,该一个或多个网络可以包括云系统260,该云系统260包括模块250、映射表270、一个或多个存储系统、以及以上所描述的一个或多个服务器。包括云系统260的一个或多个网络可以提供互联网连接以及其它网络相关功能。例如,云系统260可以为在UI230和240以及映射表270之间传送的至少一部分数据提供存储服务。
模块250可以是任意类型的数据库,包括云数据库或者由数据库管理系统(DBMS)所管理的数据库。DBMS可以被实现为控制数据库中的数据的组织、存储、管理、和检索的引擎。DBMS频繁地提供用于查询、备份和复制、实施规则、提供安全、进行计算、执行改变和访问登录、以及使得优化自动化的能力。DBMS通常包括建模语言、数据结构、数据库查询语言、和事务机制。该建模语言被用来根据数据库模型定义DBMS中的每个数据库的模式(schema),上述数据库模型可以包括层级模型、网络模型、关系模型、对象模型,或者一些其他可应用的公知或便利的组织。数据库结构可以包括字段、记录、文件、对象,以及用于存储数据的任意其它可应用的公知或便利的结构。DBMS还可以包括与所存储的数据有关的元数据。
在一些实施方式中,模块250可以被耦合至一个或多个网络中的服务器。在一些实施方式中,模块250可以被包括在服务器和/或一些其它所连接的数据库中。通常,模块250的功能能够整体地或部分地在一个或多个网络上复制、跨一个或多个网络进行分布、和/或由一个或多个网络中的一个或多个其他设备执行。模块250可以被配置成向UI230和240、网络服务器和数据库、映射表270以及总体上连接至一个或多个网络的任意设备发送数据、处理数据并从其接收数据。可以使用用于在进程或设备之间发送和接收信息的任意技术对该数据进行发送和接收,上述技术包括但并不局限于使用脚本语言、远程过程调用、电子邮件、应用编程接口(API)、简单对象访问协议(SOAP)方法、公共对象请求代理体系结构(CORBA)、HTTP(超文本传输协议)、REST(代表性状态传输)、用于软件组件使用从一个设备向另一个设备发送信息的任意其他已知技术来互相通信的任意接口、或者它们的任意组合。虽然模块250和映射表270已经被单独图示,但是应当理解的是,在一些实施方式中,模块250和映射表270可以被集成到单个实体中。
在从UI230接收到对调用一个或多个缺少的功能(例如,功能D)的请求之后,模块250可以验证并且处理该请求(S204)。模块250可以提取识别所缺少的功能(已接收到对所缺少的功能进行调用的请求)的信息,并且在一些实施方式中,可以从该请求中提取用户证书。使用所提取的信息和/或用户证书,模块250可以从映射表270检索用于调用该缺少的功能(例如,功能D)的指令。
映射表270可以是一个或多个网络中的存储与功能相关联的信息的数据库。在一些实施方式中,映射表270可以是基于云系统260的数据库。可以使用各种适当手段对映射表270中的信息进行收集,例如web爬行器、bot,以及被配置为在记录与相应用户界面相关联的功能的同时从一个用户界面移动至另一个用户界面的软件。所收集的信息可以被处理并且被用来生成存储在映射表270中的功能信息。该功能信息可以包括与相应功能相关联的各种数据,例如标识(例如,名称、序列号、代码)、相应功能在其上执行的用户界面、相应功能能够在其上执行的用户界面、执行特征、授权和访问特征、相应功能的一种或多种表示形式、用于在一个或多个用户界面中调用相应功能的指令、以及可以类似于相应功能的其它功能。这里,执行特征可以是指与功能的执行相关联的任意特征信息,诸如,例如功能的图形特性、显示特性、所期望的输入数据、输出数据格式、处理时间。授权和访问特征可以是指与功能的授权和访问相关联的任意特征信息,诸如对功能的访问对于某些用户是否开放或受限、用于访问功能的密码或成员资格信息、以及针对功能的任意系统要求。相应功能的一种或多种表示可以包括指示该功能如何在用户界面中被表示和/或调用的信息。例如,功能的表示可以包括诸如图标或图像的图形表示、诸如单词或超级链接的文本表示、或者任意其它适当的表示。用于在一个或多个用户界面中调用相应功能的指令可以是指用于一个或多个用户界面执行相应功能的代码、与执行相应功能的超级链接相关联的数据、以及一般地,用于在一个或多个用户界面中调用功能的任意数据。
在一些实施方式中,映射表270也可以至少部分地针对每个用户进行布置和/或定制,并且可以包括反映每个用户的活动和兴趣的信息。例如,映射表270可以包括各种用户数据,诸如例如与用户相关联的用户界面的列表、用户/UI所提供的功能的优先级顺序、每个功能被与该用户相关联的用户界面所执行的计数和/或有多频繁地被其所执行的频率、以及每个功能被与用户相关联的用户界面所执行的时间、日期、和/或位置。在一些实施方式中,用户数据的所有或者一部分都可以由用户通过与该用户相关联的任意UI来提供。在一些实施方式中,用户数据可以被用来确定用户偏好以及提供功能以便针对用户界面进行调用的优先级顺序。例如,基于用户数据,模块250可以确定在访问UI240时,用户最频繁地请求调用图像获取功能。因此,当用户下一次访问UI240时,模块250可以在提供用于调用其它功能的数据之前提供用于调用图像获取功能的数据。
映射表270可以被实时、定期、或者根据系统200的管理员所设置的时间表进行更新。例如,在一些实施方式中,映射表270可以在生成和接收到关于新的应用、功能、设备、或用户界面的信息时被更新。在一些实施方式中,映射表270可以被调度为每日、每周、或者以任意所确定的时间周期为基础进行更新。在一些实施方式中,映射表270可以基于由系统200的管理员所传送的指令进行更新。
返回参考图2,模块250可以通过参照映射表270对用户证书、用户授权、和/或相应功能信息进行验证来验证并处理该请求(S204)。在提取到识别缺少的一个或多个功能(已接收到对该缺少的功能进行调用的请求)的信息之后,模块250可以确定UI230是否被授权以执行缺少的一个或多个功能。例如,如果对缺少的一个或多个功能的请求包括对用于在web浏览器应用中执行GoogleTM搜索的基于语音的搜索功能的请求,则模块250可以确定访问该基于语音的搜索功能并不需要授权。在另一个示例中,如果对缺少的一个或多个功能的请求包括用于调用GoogleMapsTM应用中的“合乘”功能的请求,则模块250可以确定需要“合乘”成员资格或者一些其它形式的授权来提供用于调用“合乘”功能的指令。如果模块250确定需要授权来提供用于调用缺少的一个或多个功能的指令,则模块250在一些实施方式中,可以参考用户证书来确定UI230的用户是否被授权访问该缺少的一个或多个功能,或者在一些实施方式中,可以通过UI230提示用户提供用于访问所请求的缺少的一个或多个功能的授权信息。应当理解的是,用于在用户界面(例如,UI230)中执行功能的授权可以基于所请求功能的类型和/或要在其上执行该功能的用户界面的类型。在从用户证书和/或通过UI230从用户检索到该授权信息之后,模块250可以确定UI230是否被授权接收用于调用所请求的缺少的一个或多个功能的指令。
在验证UI230被授权接收用于调用一个或多个缺少的功能的指令之后,模块250可以访问映射表270以检索用于调用缺少的一个或多个功能的指令。例如,如果调用一个或多个缺少的功能的请求包括调用功能D的请求,则模块250针对与功能D相关联的信息而搜索映射表270,从映射表270获取用于在UI230中调用功能D的指令。如上所述,用于调用功能(例如,功能D)的指令可以包括与执行特征相关联的数据、功能的一种或多种表示、用于UI230调用功能的代码、与用于执行功能的超级链接相关联的数据、以及一般地用于在UI230中调用功能的任意数据。
如果调用一个或多个缺少的功能的请求包括调用多个缺少的功能的请求,则模块250可以查找映射表270,并且在一些实施方式中,可以基于用户/UI所提供的优先级或用户简档来确定提供用于在UI230中调用多个缺少的功能的指令的优先级顺序。例如,如果多个缺少的功能包括音频重放功能和图像获取功能,并且用户简档指示与图像获取功能相比用户在UI230中更经常调用音频重放功能,则模块250可以使得调用音频重放功能的指令的提供相对于调用图像获取功能的指令的提供有所优先。优先级顺序可以基于各种适当因素来确定而并不局限于基于所请求的一个或多个缺少的功能的执行频率来确定。例如,在一些实施方式中,用户或者与用户相关联的UI可以提供优先级顺序或定制信息以定制用于接收调用多个缺少的功能的指令的优先级顺序。该定制信息可以被存储在映射表270中并且可以从与用户相关联的用户界面来接收。在一些实施方式中,相对于与被用户频繁执行的功能并不相似的功能,与被频繁执行的功能相似的功能可以有所优先。可以在所请求的缺少的功能中的每一个与用户所执行功能的历史之间执行比较,以确定功能之间的相似性。在一些实施方式中,所请求的缺少的功能中的特定功能可以被UI230设置为具有多个缺少的功能中的最高优先级。在一些实施方式中,可以不确定优先级顺序,并且用于调用多个缺少的功能的指令可以被同时提供至UI230。
返回参考图2,在从映射表270检索到用于调用一种或多种缺少的功能(例如,功能D)的指令之后,模块250可以将所述指令转发至UI230(S206)。在一些实施方式中,模块250还可以向UI230传送附加数据。例如,该附加数据可以包括但并不局限于网络数据,诸如网络拥塞、UI230与一个或多个网络之间的网络连接、云账户信息、以及与UI230和/或UI230的用户相关联的访问信息。模块250可以传送指示UI230与一个或多个网络之间的连接的数据,例如慢速、快速、或中速。模块250可以传送指示一个或多个网络拥塞或并不拥塞的数据。模块250可以传送提供有关云存储空间的信息和/或与UI230和/或UI230的用户相关联的访问信息的数据。该信息可以包括,例如:指示与UI230和/或UI230的用户相关联的被使用或剩余的云存储量的信息;指示UI230和/或UI230的用户针对所请求的一个或多个缺少的功能具有完全、受限还是无权访问的信息;以及与和UI230和/或UI230的用户相关联的云账户的预订状态相关联的信息。
在一些实施方式中,响应于调用一个或多个缺少的功能的请求,例如网络拥塞数据和网络连接数据的全部或部分附加数据可以由UI230独立于由模块250所提供的指令来接收。例如,该附加数据可以由UI230在周期性基础上接收(例如,每小时、每天、每10分钟)或者根据所调度的时间(例如,下午(PM)3点、午夜、正午)接收。通常,UI230可以在任意适当时间获得该附加数据,例如包括在响应于调用一个或多个缺少的功能的请求而接收到指令时。
返回参考图2,当接收到用于调用一个或多个缺少的功能的指令时,UI230可以执行所接收到的指令并且调用一个或多个缺少的功能(例如,功能D)(S208)。在一些实施方式中,当请求调用多个缺少的功能并且该请求中并未包括优先级顺序时,连同接收用于调用多个缺少的功能的请求一起,UI230还可以接收指示要执行用于调用多个缺少的功能的指令的优先级顺序或者要将用于调用多个缺少的功能的指令从模块250传送至UI230的优先级顺序的数据。例如,该优先级顺序可以包括指示第一功能(例如,图像获取功能)要在其它功能(例如,音频重放功能)之前被调用的信息。UI230可以基于优先级顺序调用多个缺少的功能。
通常,UI230可以以各种适当方式执行所接收到的指令。在一些实施方式中,在从模块250接收到指令时,UI230可以执行所接收到的指令,并且可以使用所接收到的指令在没有任何用户输入的情况下自动执行一个或多个缺少的功能(例如,功能D)。例如,如果所请求的一个或多个缺少的功能包括基于语音的搜索功能,则UI230可以根据所接收到的用于调用基于语音的搜索功能的指令在没有任何用户输入的情况下执行该基于语音的搜索功能。所接收到的用于调用基于语音的搜索功能的指令可以包括用于在UI230中实现基于语音的搜索功能的代码或任意适当软件。
在一些实施方式中,UI230可以提供用于执行功能的链接。在从模块250接收到指令时,UI230可以提供至用于显示的文档(例如,网页)或界面的链接,通过其可以执行所请求的缺少功能。例如,如果对缺少的一个或多个功能的请求包括用于调用GoogleMapsTM应用中的“合乘”功能的请求,则UI230可以提供至“合乘”应用的链接或者至可以通过其执行“合乘”功能的文档的链接。该链接可以以任意适当方式来提供(例如,字母数字文本、符号、图像)。
在一些实施方式中,UI230可以通过提供分别与一个或多个缺少的功能相关联的一个或多个图形表示(例如,图标)来执行所述指令。用于提供一个或多个图形表示(例如,图标)的信息可以被包括在所接收的指令中。作为示例,如果一个或多个缺少的功能包括基于语音的搜索功能,则UI230可以提供表示基于语音的功能的“麦克风”图标以进行显示。例如,如图3所示,可以与UI230相对应的UI1(A)已经通过将“放大镜”图标替换为可选择的“麦克风”图标而被修改为UI1(B)。作为对比,如所图示的“麦克风”图标所示,可以与UI240相对应的UI2包括基于语音的功能,并且因此对基于语音的功能(例如,功能D)的请求并没有被UI240发送。所提供的分别与一个或多个缺少的功能相关联的一个或多个图形表示在一些情况下可以由用户使用任意适当方式(例如,鼠标点击、翻转、音频选择、触觉选择)进行选择。在接收到选择时,与一个或多个图形表示中所选择的一个相关联的功能可以被执行。例如,再次参考图3,如果用户选择了UI1(B)中所显示的“麦克风”图标,则UI1可以激活麦克风以接收用户所讲出的一个或多个单词并且根据所接收到的一个或多个单词填写搜索字段。在一些情况下,与一个或多个图形表示中所选择的一个相关联的功能可以在没有接收到对一个或多个图形表示的任何用户选择的情况下被执行。因此,在一些情况下,当在UI1(B)中显示“麦克风”图标时,UI1(B)准备接收音频信号并且用在该音频信号中所检测到的单词填入搜索字段。音频信号中的单词检测可以使用任意适当的语音至文本转换方法来执行。
图4提供了使用所接收到的用于调用功能的指令、附加数据、以及语音至文本转换的UI的示例。参考图4,设备410可以是便携式电子设备。便携式电子设备的示例包括但并不局限于计算机、膝上型计算机、个人数字助理、电子平板、电子笔记本、电话、智能电话、电视、智能电视、手表、智能眼镜,或者连接至网络并且具有显示器的任意电子设备。设备410可以与UI230相对应。设备410已经针对调用语音搜索功能的指令对模块250(图4中未示出)作出了请求。作为响应,模块250已经将用于调用语音搜索功能的指令发送至设备410,和/或已经发送了与设备410和一个或多个网络的网络连接相关联的附加数据。在一些实施方式中,设备410可以包括用于获得附加数据的检测器410-A,上述附加数据诸如与网络连接相关联的数据。因此,设备410可以使用检测器410-A和/或使用用于调用语音搜索功能的指令来获得附加数据。检测器410-A可以是能够直接或间接获得附加数据(例如,直接或间接检测网络连接)的任意适当检测器。
在一些实施方式中,诸如设备410的UI可以至少部分基于该附加数据来执行所接收到的用于调用语音搜索功能的指令。设备410可以从附加数据提取信息、确定与附加数据相关联的特性、并且基于所确定的特性执行所请求的缺少的功能。例如,设备410可以从由检测器410-A或模块250所提供的附加数据提取信息,并且确定是否存在设备410与之相连接的一个或多个网络(例如,WiFi网络)的弱、强或中等连接。如果设备410例如确定存在强的网络连接,则设备410可以通过提供用于显示的“麦克风”图标、以及与所接收到的音频信号相对应的实时文本、以及通过使用语音至文本转换器以实时方式将在音频信号中所检测到的单词填入搜索字段来执行语音搜索功能。如图4所示,设备410的显示器410-B以直播、实时的方式显示了文本“Barack有多高?”。诸如“...,”的图形表示可以被显示以指示要跟在所显示单词之后的附加单词和/或音频信号还未终止。
如果设备410例如确定存在弱的网络连接,则设备410可以通过提供用于显示的“麦克风”图标、提供用于显示的与所接收到的音频信号相对应的盲文输出(如显示器410-C中所示),以及一旦所接收到的音频信号中的所有单词都已经被接收到或者所接收到的音频信号已经终止即完成搜索字段,来执行语音搜索功能。因此,基于附加数据,所请求的缺少功能在UI中的执行可以被修改。在以上所描述的示例中,如果附加数据提供了指示特定特性(例如,强网络连接)的数据,则设备410以特定方式执行语音搜索功能(例如,使用话音至文本转换器提供与所接收的音频信号相对应的显示实时文本并且以实时、直播方式填充搜索字段)。作为对比,如果附加数据提供了指示另一种特性(例如,弱网络连接)的数据,则设备410可以以另一种方式执行语音搜索功能(例如,使用与所接收的音频信号相对应的盲文输出以及一旦音频信号中的所有单词都已经被接收或者音频信号已经终止即填入搜索字段)。
图5描绘了用于系统200所实现的跨应用取得功能的方法的流程图。可以构建在其中存储用户信息和证书的标识数据库(S502)。用户证书可以通过连接至例如包括云系统260的一个或多个网络的任意UI而从用户接收。用户证书例如可以包括登录、密码、通行密钥、图像、或者可以帮助识别用户的任意唯一信息。用户证书可以被用来确定与用户相关联的UI是否应当被授予对功能的访问并且对用户或UI进行认证。用户证书和信息可以被用来追踪和/或记录用户活动并且生成用户简档。例如,系统200可以追踪用户所访问的所有用户界面、用户所调用的所有功能、以及一般而言用户在系统200上的任意活动。所生成的用户的用户简档可以包括例如与用户偏好、用户设备、用户执行功能的计数和/或频率、反映用户兴趣(例如,购物、运动、搜索兴趣)的用户的个性化简档、位置信息、以及反映用户的社交网络的社交网络简档相关联的信息。在一些实施方式中,用户信息和证书可以被用来确定向用户界面提供哪些功能供调用的用户偏好以及优先级顺序。所生成的用户简档可以被发送至与用户相关联的一个或多个UI、映射表270、和/或模块250。在一些实施方式中,用户简档可以被合并到模块250或映射表270中以基于用户简档对映射表270进行定制。
系统200还可以收集与跨连接至一个或多个网络的各种UI的功能相关联的信息(S504)。在一些实施方式中,模块250可以控制对与跨各种UI的功能相关联的信息的收集,并且可以将所收集的信息存储在映射表270中。映射表270可以是在一个或多个网络中存储与所述功能相关联的信息的数据库。可以使用各种适当手段收集与跨各种UI的功能相关联的信息,例如网络爬行器、bot、以及被配置为在记录与相应用户界面相关联的功能的同时从一个用户界面移动到另一个用户界面的软件。所收集的信息可以被处理并且被用来生成存储在映射表270中的功能信息。该功能信息可以包括与相应功能相关联的各种数据,诸如,例如标识(例如,名称、序列号、代码)、在其上执行相应功能的用户界面、能够在其上执行相应功能的用户界面、执行特征、授权和访问特征、相应功能的一种或多种表示、用于在一个或多个用户界面中调用相应功能的指令、以及可以与相应功能相类似的其它功能。这里,执行特征可以是指与功能的执行相关联的任意特征信息,诸如例如图形特性、显示特性、所期望的输入数据、输出数据格式、功能的处理时间。授权和访问特征可以是指与功能的授权和访问相关联的任意特征信息,诸如对功能的访问对于某些用户是开放还是受限、访问功能的密码、以及针对功能的任意系统要求。相应功能的一种或多种表示可以包括指示该功能如何在用户界面中被表示和/或调用的信息。例如,功能的表示可以包括诸如图标或图像的图形表示、诸如单词或超级链接的文本表示、或者任意其它适当的表示。用于在一个或多个用户界面中调用相应功能的指令可以是指用于一个或多个用户界面执行相应功能的代码、与执行相应功能的超级链接相关联的数据、以及一般地,用于调用一个或多个用户界面中的功能的任意数据。
映射表270中的信息,包括用户标识信息以及与和功能相关联的特征和特性相对应的信息,可以被实时、定期、或者根据系统200的管理员所设置的时间表进行更新。
接下来,系统200可以从进行请求的UI接收对提供用于调用缺少的兼容功能的指令的请求(S508)。例如,模块250可以从UI230接收对提供用于调用缺少的兼容功能的指令的请求(S508)。响应于接收到该请求,系统200(例如,模块250)可以通过参考映射表270而确定所请求的指令(例如,在进行请求的UI中调用缺少的兼容功能的指令)是否可用或者被存储(S510)。如果所请求的指令并不可用或并未被存储,则系统200(例如,模块250)可以向进行请求的UI传送指示用于调用缺少的兼容功能的指令并不可用的消息(S516)。
如果所请求的指令在系统200中可用或者被存储,则系统200(例如,模块250)可以确定进行请求的UI或者与进行请求的UI相关联的用户是否被授权以在进行请求的UI中调用缺少的兼容功能(S512)。系统200(例如,模块250)可以通过检查用户证书信息并且确定该用户是否被授权访问,来确定进行请求的UI或者与进行请求的UI相关联的用户是否被授权以调用缺少的兼容功能。例如,如果进行请求的UI已经请求了用于调用“合乘”功能的信息,则模块250可以通过检查用户证书来确定与进行请求的UI相关联的用户是否具有“合乘”成员资格或者是否被授权以执行“合乘”功能。模块250可以检查用户证书以访问用户成员资格和授权信息,诸如用于执行“合乘”功能的成员资格和授权。在一些实施方式中,如果执行“合乘”功能的“合乘”成员资格或授权不可用,则系统200(例如,模块250)可以通过进行请求的UI提示用户提供用于执行“合乘”功能的授权信息(例如,登录、密码)。如果系统200在提示用户之后确定与进行请求的UI相关联的用户不具有“合乘”成员资格或者并未被授权执行“合乘”功能,则系统200(例如,模块250)可以传送指示进行请求的UI并未被授权调用所请求的缺少的功能(例如,“合乘”功能)的消息(S518)。应当理解的是,针对在UI中执行功能的授权可以基于所请求的功能的类型和/或要在其上执行该功能的用户界面的类型。
如果进行请求的UI或者与进行请求的UI相关联的用户被授权在进行请求的UI中调用缺少的兼容功能,则系统200可以向进行请求的UI传送用于调用缺少的兼容功能的指令(S514)。例如,模块250可以通过参考映射表270而获得用于调用缺少的兼容功能的指令,并且将该用于调用缺少的兼容功能的指令传送至进行请求的UI。在一些实施方式中,模块250可以从对接收自进行请求的UI的指令的请求提取数据,并且识别正在针对其请求调用指令的功能。模块250随后可以在映射表270中查找所识别的功能,并且获得在映射表270中映射至所识别的功能的、用于在进行请求的UI中调用所识别功能的指令。所获得的指令随后被传送至进行请求的UI。这些指令随后被进行请求的UI用来调用缺少的兼容功能。
在上文已经描述了多种实施方式。然而应当理解的是,能够进行各种修改而并不背离本公开的精神和范围。例如,以上所示出的各种形式的流程可以在步骤被重新排序、有所添加、或移除的情况下得到使用。因此,其它实施方式处于本公开和权利要求的范围之内。
此外,虽然上文已经参考语音搜索功能、Google地图服务或应用、“合乘”功能、图像获取功能、和音频播放功能对示例进行了描述,但是应当理解的是,所公开的实施方式可以被用来在任意适当的用户界面中取得并提供连接至诸如互联网的一个或多个网络的任意功能。
本说明书中所描述的实施例以及所有的功能操作和/或动作可以以数字电路、或者计算机软件、固件或硬件来实现,包括在本说明书中所公开的结构及其结构等同形式,或者以它们中的一个或多个组合来实现。实施例可以被实现为一个或多个计算机程序产品,例如在计算机可读介质上进行编码以用于由数据处理装置执行或者对其操作进行控制的计算机程序指令的一个或多个模块。计算机可读存储介质可以是机器可读存储设备、机器可读存储基底、存储器设备、影响机器可读传播信号的事物组合、或者它们中一个或多个的组合。术语“数据处理装置”涵盖了用于处理数据的所有装置、设备、和机器,包括例如可编程处理器、计算机、或者多个处理器或计算机。除了硬件之外,该装置可以包括为所讨论的计算机程序创建执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中一个或多个的组合的代码。所传播信号是人为生成的信号,例如机器所生成的电、光、或电磁信号,其被生成以对信息进行编码以用于传输至适当的接收器装置。
计算机程序(也被称作程序、软件、软件应用、脚本、或代码)能够以任意形式的编程语言进行编写,包括编译或解释语言,并且其能够以任意形式进行部署,包括作为独立程序或者作为适于在计算环境中使用的模块、组件、子例程、或其它单元。计算机程序不需要与文件系统中的文件相对应。程序可以被存储在保存其它程序或数据的文件的一部分之中(例如,标记语言文档中所存储的一个或多个脚本)、存储在专用于所讨论程序的单个文件中、或者存储在多个协同文件(例如,存储一个或多个模块、子程序、或代码部分的文件)中。计算机程序能够被部署为在一台计算机上执行或者在位于一个地点或跨多个地点分布并且通过通信网络进行互连的多台计算机上执行。
本说明书中所描述的过程和逻辑流程能够由一个或多个可编程处理器执行,所述可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出而执行动作。该过程和逻辑流程也能够由例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路来执行,并且所述装置也可以被实施为上述专用逻辑电路。
作为示例,适于执行计算机程序的处理器包括通用和专用微处理器二者,以及任意类型的数字计算机的任意一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或者其二者接收指令和数据。
计算机的元件可以包括用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备或者与之操作地耦合以从其接收数据或向其转移数据或者此二者,上述大容量存储设备例如磁、磁性光盘、或光盘。然而,计算机可以不具有这样的设备。此外,计算机能够嵌入在另一个设备中,所述设备例如平板计算机、移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器,这仅是举出几个示例。适于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、媒体、和存储器设备,例如包括半导体存储器设备,例如EPROM、EEPROM、和闪存设备;磁盘,例如内部硬盘或可移动盘;磁性光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以被补充以专用逻辑电路或者整合于其中。
为了提供与用户的交互,实施例能够在具有用于向用户显示信息的显示设备以及用户能够通过其向计算机提供输入的键盘和指示设备的计算机上实现,该显示设备例如阴极射线管(CRT)、液晶显示器(LCD)、或发光二极管(LED)监视器,该指示设备例如鼠标或轨迹球。也能够使用其它类型的设备来提供与用户的交互;例如,提供给用户的反馈可以为任意形式的感觉反馈,例如视觉反馈、听觉反馈、或触觉反馈;并且来自用户的输入能够以任意形式被接收,包括声音、语音、或触觉输入。
实施例可以在计算系统中被实现,该计算系统包括例如数据服务器的后端组件、或者包括例如应用服务器的中间件组件、或者包括例如具有用户能够通过其与实施方式进行交互的图形用户界面或Web浏览器的客户端计算机的前端组件、或者包括这样的后端、中间件、或前端组件的任意组合。该系统的组件能够通过例如通信网络的任意形式或介质的数字数据通信进行互连。
该计算系统可以包括客户端和服务器。客户端和服务器一般彼此远离并且通常通过通信网络进行交互。客户端和服务器的关系借助于于在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
虽然该说明书包含许多细节,但是这些并不应当被解释为是对本公开或者可以要求的范围的限制,而是作为可能对特定于特定实施例的特征的描述。本说明书中以单独实施例为背景所描述的某些特征也能够在单个实施例中组合实现。相反,以单个实施例为背景所描述的各个特征也能够在多个实施例中单独实现或者以任意适当的子组合实现。此外,虽然特征在上文中可以被描述为以某种组合发生作用并且甚至最初如此要求,但是来自所要求的组合的一个或多个特征在一些情况下能够脱离该组合并且所要求的组合可以指向子组合或子组合的变化形式。
类似地,虽然在图中以特定顺序描绘了动作,但是这并不应当被理解为为了实现所期望的结果而要求这样的动作以所示出的特定顺序或以连续顺序来执行,或者执行所有所图示的动作。例如,在图5的一些实施方式中,动作S504可以在动作S502之前或者与其同时执行,并且动作S512可以在动作S510之前或与其同时执行。在某些情况下,多任务和并行处理可能是有利的。此外,在上述实施例中的各个系统组件的划分并不应当被理解为所有实施例中都要求这样的划分,并且应当理解的是,所描述的程序组件和系统一般能够共同集成在单个软件产品中或者被封装进多个软件产品。
在其中提及HTML文件的每个实例中,其它的文件类型或格式可以作为替代。例如,HTML文件可以被XML、JSON、普通文本或者其它类型的文件所替换。此外,在提及表格或散列表的情况下,可以使用其它数据结构(诸如电子表单、关系数据库、或结构文件)。
因此,已经对特定实施例进行了描述。其它实施例处于以下权利要求的范围之内。例如,权利要求中所引用的动作可以以不同顺序执行并且仍然实现所期望的结果。

Claims (14)

1.一种跨应用取得功能的方法,包括:
接收i)识别与第一用户界面相关联的第一功能的数据,以及ii)用于在一个或多个用户界面中调用所述第一功能的指令;
从第二用户界面接收用于调用所述第一功能的请求;
使用处理器选择被配置为在所述第二用户界面中调用所述第一功能的指令;
将所述指令传送至所述第二用户界面;以及
使用所传送的指令在与所述第二用户界面相关联的应用中调用所述第一功能。
2.根据权利要求1所述的方法,其中:
接收所述请求包括接收所述第二用户界面的用户的用户证书;并且
所述多个用户界面包括应用、设备、以及至与所述用户相关联的应用的入口。
3.根据权利要求2所述的方法,其中响应于基于所述第二用户界面的所述用户的所述用户证书而验证所述第二用户界面的所述用户被授权使用所述第一功能,用于调用所述第一功能的所述指令被选择。
4.根据权利要求1所述的方法,其中用于调用所述第一功能的所述请求根据优先级顺序被接收,所述优先级顺序基于用户对所述第一功能的使用频率、用户定制、用户状态、所述第一用户界面和所述第二用户界面之间的相似度阈值、以及所述第二用户界面的设计选择中的至少一个。
5.根据权利要求1所述的方法,其中接收用于调用所述第一功能的所述请求包括经由所述第二用户界面接收用于调用所述第一功能的用户选择。
6.根据权利要求1所述的方法,其中所述第二用户界面不同于所述第一用户界面。
7.根据权利要求1所述的方法,进一步包括:
将与网络连接性相关联的数据连同被配置为在所述第二用户界面中调用所述第一功能的指令一起进行传送,
其中,在与所述第二用户界面相关联的所述应用中调用所述第一功能包括:
基于与指示第一类型的网络连接的网络连接性相关联的数据使用第一执行调用所述第一功能;以及
基于与指示第二类型的网络连接的网络连接性相关联的数据使用第二执行调用所述第一功能。
8.一种跨应用取得功能的系统,包括:
用于接收i)识别与第一用户界面相关联的第一功能的数据,以及ii)用于在一个或多个用户界面中调用所述第一功能的指令的装置;
用于从第二用户界面接收用于调用所述第一功能的请求的装置;
用于使用处理器选择被配置为在所述第二用户界面中调用所述第一功能的指令的装置;
用于将所述指令传送至所述第二用户界面的装置;以及
用于使用所传送的指令在与所述第二用户界面相关联的应用中调用所述第一功能的装置。
9.根据权利要求8所述的系统,其中:
接收所述请求包括接收所述第二用户界面的用户的用户证书;并且
所述多个用户界面包括应用、设备、以及至与所述用户相关联的应用的入口。
10.根据权利要求9所述的系统,其中响应于基于所述第二用户界面的所述用户的所述用户证书而验证所述第二用户界面的所述用户被授权使用所述第一功能,用于调用所述第一功能的所述指令被选择。
11.根据权利要求8所述的系统,其中用于调用所述第一功能的所述请求根据优先级顺序被接收,所述优先级顺序基于用户对所述第一功能的使用频率、用户定制、用户状态、所述第一用户界面和所述第二用户界面之间的相似度阈值、以及所述第二用户界面的设计选择中的至少一个。
12.根据权利要求8所述的系统,其中接收用于调用所述第一功能的所述请求包括经由所述第二用户界面接收用于调用所述第一功能的用户选择。
13.根据权利要求8所述的系统,其中所述第二用户界面不同于所述第一用户界面。
14.根据权利要求8所述的系统,进一步包括:
用于将与网络连接性相关联的数据连同被配置为在所述第二用户界面中调用所述第一功能的指令一起进行传送的装置,
其中,在与所述第二用户界面相关联的所述应用中调用所述第一功能包括:
基于与指示第一类型的网络连接的网络连接性相关联的数据使用第一执行调用所述第一功能;以及
基于与指示第二类型的网络连接的网络连接性相关联的数据使用第二执行调用所述第一功能。
CN201510713789.XA 2014-12-01 2015-10-28 一种用于跨应用取得功能的方法和系统 Pending CN105653360A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201462086076P 2014-12-01 2014-12-01
US62/086,076 2014-12-01
US14/884,978 2015-10-16
US14/884,978 US10078740B2 (en) 2014-12-01 2015-10-16 Method to fetch functionality across applications

Publications (1)

Publication Number Publication Date
CN105653360A true CN105653360A (zh) 2016-06-08

Family

ID=56079237

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510713789.XA Pending CN105653360A (zh) 2014-12-01 2015-10-28 一种用于跨应用取得功能的方法和系统

Country Status (2)

Country Link
US (1) US10078740B2 (zh)
CN (1) CN105653360A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107957830A (zh) * 2016-10-14 2018-04-24 富士通株式会社 开发支持系统、开发支持设备、响应控制方法及响应控制设备
CN107977247A (zh) * 2016-10-19 2018-05-01 艾珀斯特股份有限公司 智能手表的手表界面设计生成方法及其装置
CN113409099A (zh) * 2020-03-17 2021-09-17 阿里巴巴集团控股有限公司 对象处理方法、装置、电子设备及计算机可读存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220129324A1 (en) * 2020-08-16 2022-04-28 observIQ, Inc. Remotely Controllable Monitoring Agent with a Dynamic Set of Subcomponents

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689638A (en) * 1994-12-13 1997-11-18 Microsoft Corporation Method for providing access to independent network resources by establishing connection using an application programming interface function call without prompting the user for authentication data
CN1288205A (zh) * 1999-09-14 2001-03-21 珠海市攀登科技有限公司 一种全兼容的互联网电子商贸和支付系统
US20080091800A1 (en) * 2006-10-13 2008-04-17 Xerox Corporation Local user interface support of remote services
CN101727491A (zh) * 2009-12-30 2010-06-09 山东大学 一种基于嵌入式web技术的浏览器功能改进方法
US20110099166A1 (en) * 2009-10-28 2011-04-28 Balendran Mugundan Extending types hosted in database to other platforms
US20110271184A1 (en) * 2010-04-28 2011-11-03 Microsoft Corporation Client application and web page integration
CN102624739A (zh) * 2012-03-30 2012-08-01 奇智软件(北京)有限公司 一种适用于客户端平台的认证授权方法和系统
CN103023893A (zh) * 2012-11-27 2013-04-03 香港应用科技研究院有限公司 利用资源转接平台访问在线资源
CN103155530A (zh) * 2010-08-13 2013-06-12 诺基亚西门子通信公司 包括将脚本命令下载至用户终端的网络-电信融合
WO2013163426A1 (en) * 2012-04-26 2013-10-31 Liveperson, Inc. Dynamic user interface customization
CN203689226U (zh) * 2013-11-25 2014-07-02 深圳市均方根科技有限公司 基于安卓系统的智能移动终端
CN104125063A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 授权认证方法、设备及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006278A (en) 1997-07-18 1999-12-21 Electronic Data Systems Corporation Method and system for importing remote functions to a network computer
US8365254B2 (en) 2005-06-23 2013-01-29 Microsoft Corporation Unified authorization for heterogeneous applications
KR20090065775A (ko) 2007-12-18 2009-06-23 삼성전자주식회사 응용프로그램의 기능을 구성하고 실행하는 방법 및 이를위한 휴대 단말기
US8732847B2 (en) 2009-08-31 2014-05-20 Oracle International Corporation Access control model of function privileges for enterprise-wide applications
US10175953B2 (en) * 2014-04-02 2019-01-08 Microsoft Technology Licensing, Llc User interface control and communication

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689638A (en) * 1994-12-13 1997-11-18 Microsoft Corporation Method for providing access to independent network resources by establishing connection using an application programming interface function call without prompting the user for authentication data
CN1288205A (zh) * 1999-09-14 2001-03-21 珠海市攀登科技有限公司 一种全兼容的互联网电子商贸和支付系统
US20080091800A1 (en) * 2006-10-13 2008-04-17 Xerox Corporation Local user interface support of remote services
US20110099166A1 (en) * 2009-10-28 2011-04-28 Balendran Mugundan Extending types hosted in database to other platforms
CN101727491A (zh) * 2009-12-30 2010-06-09 山东大学 一种基于嵌入式web技术的浏览器功能改进方法
US20110271184A1 (en) * 2010-04-28 2011-11-03 Microsoft Corporation Client application and web page integration
CN103155530A (zh) * 2010-08-13 2013-06-12 诺基亚西门子通信公司 包括将脚本命令下载至用户终端的网络-电信融合
CN102624739A (zh) * 2012-03-30 2012-08-01 奇智软件(北京)有限公司 一种适用于客户端平台的认证授权方法和系统
WO2013163426A1 (en) * 2012-04-26 2013-10-31 Liveperson, Inc. Dynamic user interface customization
CN103023893A (zh) * 2012-11-27 2013-04-03 香港应用科技研究院有限公司 利用资源转接平台访问在线资源
CN104125063A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 授权认证方法、设备及系统
CN203689226U (zh) * 2013-11-25 2014-07-02 深圳市均方根科技有限公司 基于安卓系统的智能移动终端

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
REGINA BERNHAUPT等: "Design Rationales for the Combination of Speech, Gesture and Touch for Mobile Phone Living Room Control Applications", 《INTERNATIONAL BROADCASTING CONVENTION (IBC) 2012 CONFERENCE》 *
刘宪涛: "基于Android平台的手机语音识别服务客户端系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
王文亮: "P2P多媒体群组通信平台多媒体技术的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
章文荣: "云平台可信监控框架研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107957830A (zh) * 2016-10-14 2018-04-24 富士通株式会社 开发支持系统、开发支持设备、响应控制方法及响应控制设备
CN107957830B (zh) * 2016-10-14 2021-04-23 富士通株式会社 开发支持系统、开发支持设备、响应控制方法及响应控制设备
CN107977247A (zh) * 2016-10-19 2018-05-01 艾珀斯特股份有限公司 智能手表的手表界面设计生成方法及其装置
CN113409099A (zh) * 2020-03-17 2021-09-17 阿里巴巴集团控股有限公司 对象处理方法、装置、电子设备及计算机可读存储介质
CN113409099B (zh) * 2020-03-17 2023-12-22 阿里巴巴集团控股有限公司 对象处理方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
US10078740B2 (en) 2018-09-18
US20160154557A1 (en) 2016-06-02

Similar Documents

Publication Publication Date Title
US20200169637A1 (en) Virtual assistant aided communication with 3rd party service in a communication session
US11740950B2 (en) Application program interface analyzer for a universal interaction platform
US10872000B2 (en) Late connection binding for bots
US9015730B1 (en) Natural language access to application programming interfaces
JP2021534493A (ja) 限られた知識ドメイン内でナレッジグラフを構築するための技術
US11355123B2 (en) Network data aligning
US9722964B2 (en) Social media message delivery based on user location
US10776444B1 (en) Methods and systems for universal deep linking across web and mobile applications
KR20100094021A (ko) 이동통신 단말기와 아이피 기반 정보 단말기를 이용한 맞춤, 지능형 심볼, 아이콘 인터넷 정보 검색시스템
US20190147059A1 (en) Method and apparatus for generating to-be-played multimedia content
US20120197937A1 (en) Method and system for providing detailed information in an interactive manner in a short message service (sms) environment
US20210294864A1 (en) Methods and systems for generating custom content using universal deep linking across web and mobile applications
US11106754B1 (en) Methods and systems for hyperlinking user-specific content on a website or mobile applications
KR20130037051A (ko) 전문가 매칭 서비스 제공 방법 및 서버
WO2011115471A1 (en) Integrated service delivery platform system and method thereof
CN105653360A (zh) 一种用于跨应用取得功能的方法和系统
CN103365893A (zh) 一种用于实现搜索用户的个体信息的方法和设备
US9602575B2 (en) Monitoring social media for specific issues
CN116956326A (zh) 权限数据的处理方法、装置、计算机设备及存储介质
US10417296B1 (en) Intelligent bookmarking with URL modification
US20220284319A1 (en) Intelligent guidance using machine learning for user navigation of multiple web pages
US20240045741A1 (en) Methods and systems for a three-tiered content notification system for a data exchange featuring non-homogenous data types
US20230267122A1 (en) Methods and systems for searching data exchanges that comprise information on assets with non-homogenous functionality and non-standardized data descriptions
US20230297957A1 (en) Telecommunication System
TW202011719A (zh) 具備行動加值服務之智能網路交換機系統

Legal Events

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

Address after: California, USA

Applicant after: Google limited liability company

Address before: California, USA

Applicant before: Google Inc.

CB02 Change of applicant information
AD01 Patent right deemed abandoned

Effective date of abandoning: 20220701

AD01 Patent right deemed abandoned