CN105765529A - 渲染由分立的应用定义的界面对象 - Google Patents

渲染由分立的应用定义的界面对象 Download PDF

Info

Publication number
CN105765529A
CN105765529A CN201480064336.2A CN201480064336A CN105765529A CN 105765529 A CN105765529 A CN 105765529A CN 201480064336 A CN201480064336 A CN 201480064336A CN 105765529 A CN105765529 A CN 105765529A
Authority
CN
China
Prior art keywords
application
instruction
computer
served
calculation element
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
CN201480064336.2A
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 CN105765529A publication Critical patent/CN105765529A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

应用系统向一个或多个计算装置上的第一应用提供渲染和更新界面对象的规范。第一应用从在所述一个或多个计算装置上操作的第二应用接收提供用于呈现对象的指令的请求。第一应用将用于呈现对象的指令通信给第二应用。所述通信可经由所述一个或多个计算装置的操作系统或者以另一合适的方式来进行。第一应用从应用提供者或其它应用系统接收用于向第二应用呈现对象的所述指令的更新。第一应用将用于呈现所述对象的所更新的指令通信给第二应用。

Description

渲染由分立的应用定义的界面对象
相关申请
本申请要求2013年10月16日提交的题为“RenderingInterfaceObjectsDefinedbyaSeparateApplication”的美国专利申请No.14/055,464的优先权。上述申请的全部内容通过引用完全并入本文。
技术领域
本公开通常涉及更新应用的用户界面,更具体地讲,涉及使用该应用来经由分立的应用渲染和更新界面对象。
背景技术
在诸如移动电话、平板计算机或膝上型计算机的用户计算装置上操作的应用常常显示由第三方定义的界面对象。在一个示例中,数字钱包应用可显示用于打开至发卡方账户的链接的按钮。在另一示例中,数字媒体播放器可显示打开数字钱包应用模块从而可进行购买的按钮。在另一示例中,游戏应用可显示打开来自广告商的应用的按钮。
可由使用按钮来访问的内容的提供者向主应用提供诸如链接、按钮、广告或者其它合适的对象的界面对象。例如,数字钱包应用模块的提供者可提供用于在主应用上显示按钮的编程代码。该示例中的数字钱包应用模块的提供者可能期望按钮具有特定外观。数字钱包应用模块的提供者还可能期望在未来更改按钮的外观或功能。主应用可能期望按钮符合一组尺寸和外观的约束。
在传统技术中,主应用上的按钮可经由网络请求从使用按钮来访问的内容的提供者的服务器加载。可经由网络请求加载渲染代码。此处理的影响类似于“直接链接”。直接链接是表示这样的实践的术语:通过链接至另一网站上的同一图像或对象来在网站上显示图像或对象,而不是在将显示图像的网站上保存图像或对象的副本。移动广告可使用渲染广告的第三方应用中的web查看应用。如果需要,广告可按照类似于按钮的方式来渲染。
在传统技术中,如果该示例中的数字钱包应用模块的提供者期望改变按钮的外观,则提供数字钱包应用模块的系统必须向主应用的集成商发送新的编程代码。主应用的集成商必须重新编译和更新主应用以合并这一改变。
发明内容
在本文所述的特定示例方面中,提供了一种渲染和更新界面对象的计算机实现的方法。应用系统向一个或多个计算装置上的第一应用提供渲染和更新界面对象的规范。第一应用从在所述一个或多个计算装置上操作的第二应用接收提供用于呈现对象的指令的请求。第一应用将用于呈现对象的指令通信给第二应用。所述通信可经由所述一个或多个计算装置的操作系统或者以另一合适的方式来进行。第一应用从应用提供者或其它应用系统接收用于呈现对象的所述指令的更新。第一应用将用于呈现所述对象的所更新的指令通信给第二应用。
在其它示例方面中,提供了一种渲染和更新界面对象的系统和计算机程序产品。
对于本领域普通技术人员而言,通过考虑所示的示例实施例的以下详细描述,示例实施例的这些和其它方面、目的、特征和优点将变得显而易见。
附图说明
图1是描绘了根据特定示例实施例的通过分立的应用来渲染和更新应用上的界面对象的系统的框图。
图2是描绘了根据特定示例实施例的通过分立的应用来渲染和更新应用上的界面对象的方法的流程框图。
图3是描绘了根据特定示例实施例的应用向第三方应用提供界面对象指令的方法的流程框图。
图4是根据特定示例实施例的显示界面对象的应用的示例用户界面的示图。
图5是描绘了根据特定示例实施例的计算机机器和模块的框图。
具体实施方式
概述
本文所述的示例实施例提供了应用渲染和更新另一应用上的界面对象的方法、系统和计算机程序产品。服务应用系统向用户计算装置上的服务应用提供编程代码。服务应用向第三方应用提供界面对象规范并且准备满足第三方应用用户界面的约束的界面对象。使用该界面对象规范,第三方应用能够在用户界面上提供界面对象。服务应用上的界面对象规范可由服务应用系统来更新。所更新的界面对象在第三方应用上自动地被更新,而无需从第三方应用提供者来输入或者更新。
更具体地讲,在特定示例实施例中,服务应用系统向用户计算装置提供服务应用。该服务应用可以是独立应用、用户计算装置操作系统的功能、分立的应用的功能、或者任何合适的硬件、软件或固件功能。服务应用可由用户从服务应用系统的网站或者从任何合适的位置下载。服务应用可由用户计算装置的制造商或者由用户计算装置的操作系统的提供者安装在用户计算装置上。服务应用可从任何合适的来源来获得并以任何合适的方式被安装在用户计算装置上。服务应用可提供启用各种功能的其它合适的应用。例如,服务应用可向其它应用提供图像、代码、功能和其它合适的数据。
服务应用使得用于界面对象的指令、规范和其它代码可用于第三方应用。界面对象可以是链接、按钮、广告、其它控件、或者其它合适的对象。例如,界面对象能够是第三方应用的用户界面上的虚拟按钮,当该虚拟按钮被致动时打开与服务应用关联的应用。在此示例中,按钮可打开数字钱包应用模块。如果媒体提供者应用将按钮置于用户界面上,则用户可从媒体提供者应用打开数字钱包应用模块以允许购买媒体。在此示例中的服务应用可以是与用户计算装置的操作系统或者其它关联方关联的应用。服务应用包括用于一个或多个界面对象以及其它对象的指令。可从服务应用系统或者从任何合适的来源接收用于新对象或者修正对象的指令。
服务应用向第三方应用提供用于渲染界面对象的界面对象指令。第三方应用可以是请求在用户界面上显示界面对象的任何合适的应用。可由第三方应用,由配置用户界面的运营商,或者由任何合适的一方来向服务应用提供请求。该请求包括由服务应用用来提供指令的信息。
可经由用户计算装置的操作系统来发送请求。即,可在不联系第三方应用提供者或服务应用系统的情况下发送请求。可由服务应用从第三方应用读取新指令。在另一实施例中,第三方应用可按照任何合适的方式向服务应用发送请求。
在示例中,请求可包括界面对象所需的尺寸约束。尺寸约束可提供对象可用的最小和最大尺寸。尺寸约束可仅提供一个维度的尺寸约束,诸如,水平维度。另选地,尺寸约束可提供多个维度的约束,例如,水平和垂直维度。请求可包括将允许界面对象执行的功能的约束。例如,对象可被限制为文本和图像显示。对象可允许将被发起的链接,但是不允许将打开的另一应用。请求可包括关于界面对象的外观的限制。例如,颜色限制可限制对象可呈现的颜色的类型。任何合适的约束或偏好可包括在请求中。
服务应用向第三方应用提供界面对象指令。服务应用从第三方应用接收请求以及任何约束。如果没有从第三方应用接收到约束,则服务应用可发送对约束的请求,诸如将使用的用户界面的类型、分配给界面选项的空间的尺寸或者任何其它合适的约束。
服务应用确定用于界面对象的参数以满足第三方应用的约束。例如,如果分配给界面对象的空间为200像素宽,则服务应用定义限定该尺寸的按钮的界面对象指令集。可提供对象的层列表,各个层由图像宽度、高度和对齐参数来限定。层的位置可由绝对位置(例如,比前一层小20像素)或者相对位置(例如,比前一层小20%)来限定。界面对象可按照任何方式被拉伸或缩放以满足第三方应用的约束。
可由第三方应用从服务应用读取界面对象指令。即,可使得指令可用于第三方应用来访问并且将其并入第三方应用的用户界面中。服务应用按照任何合适的方式向第三方应用发送界面对象指令。例如,如果服务应用和第三方应用在同一用户计算装置上的同一操作系统上操作,则第三方应用可直接从服务应用访问指令。在另一示例中,服务应用可将指令上传至应用、程序、网页或者任何合适的形式,以向第三方应用发送指令。
第三方应用接收指令,将指令并入用户界面代码中,并且在用户界面上显示界面对象。界面对象在第三方应用被打开时出现在第三方应用的用户界面上。界面对象显示在用户界面的所请求的位置中。如果用户致动界面对象,则该界面对象可用于执行所请求的功能。
服务应用从服务应用系统接收更新。更新可以是对界面对象的外观的更新。例如,可改变外观的颜色、文本、徽标、尺寸或其它属性。可更新界面对象的功能。例如,可改变通过致动对象而访问的应用。可接收任何合适的更新。可通过诸如网络之上的互联网连接的任何合适的技术从服务应用系统接收更新。
服务应用自动地更新第三方应用上的界面对象。服务应用可向第三方应用发送请求以接收更新的指令的传送。可经由用户计算装置的操作系统来发送请求。即,可在不联系第三方应用提供者或服务应用系统的情况下发送请求。可由第三方应用从服务应用读取新指令。在另一实施例中,服务应用可按照任何合适的方式将更新的界面对象指令发送给第三方应用。
第三方应用将更新的界面对象显示在第三方应用的用户界面上。该显示并入了由来自服务应用的指令所指示的新参数。第三方应用并入了更新的指令而无需来自系统管理员或其它操作者的输入。第三方应用并入了更新的指令而无需重新编译第三方应用编程代码。更新的指令从服务应用直接加载到第三方应用中。
在特定实施例中,可由第三方应用从服务应用读取更新的界面对象指令。即,使得更新的指令可用于第三方应用来访问并且将其并入第三方应用的用户界面中。服务应用按照任何合适的方式将更新的界面对象指令发送至第三方应用。例如,如果服务应用和第三方应用在同一用户计算装置的同一操作系统上操作,则第三方应用可直接从服务应用访问更新的指令。在另一示例中,服务应用可将更新的指令上传至应用、程序、网页或者任何合适的形式,以向第三方应用发送指令。
示例系统架构
现在转向附图,其中贯穿附图相似的标号指代相似(但未必相同)的元件,详细描述了示例实施例。
图1是描绘了根据特定示例实施例的通过分立的应用来渲染和更新应用上的界面对象的系统的框图。如图1中所描绘的,示例操作环境100包括被配置为经由一个或多个网络105彼此通信的用户网络计算装置110、服务应用计算系统170和第三方应用提供者计算系统130。在一些实施例中,与装置关联的用户必须安装应用和/或进行特征选择以获得本文所描述的技术的益处。
各个网络105包括网络装置(包括装置110、130和170)能够通过其交换数据的有线或无线电信手段。例如,网络105能够包括局域网(“LAN”)、广域网(“WAN”)、内联网、互联网、移动电话网或者其任何组合。应该理解,贯穿示例实施例的讨论,术语“数据”和“信息”在本文中可互换使用以表示文本、图像、音频、视频或者能够存在于基于计算机的环境中的任何其它形式的信息。
各个网络计算装置110、130和170包括具有能够在网络105上发送和接收数据的通信模块的装置。例如,各个网络装置110、130和170能够包括服务器、台式计算机、膝上型计算机、平板计算机、具有嵌入其中和/或耦合至其上的一个或多个处理器的电视、智能电话、手持计算机、个人数字助理(“PDA”)或者任何其它有线或无线的处理器驱动的装置。在图1所描绘的示例实施例中,网络装置110、130和170分别由终端用户或消费者、第三方应用提供者系统运营商和服务应用系统运营商来操作。
用户101能够使用诸如web浏览器应用或独立应用的通信应用113来经由分布式网络105查看、下载、上传或者以其它方式访问文档或网页。网络105包括网络装置(包括装置110、130和170)能够通过其交换数据的有线或无线电信系统或装置。例如,网络105能够包括局域网(“LAN”)、广域网(“WAN”)、内联网、互联网、存储区域网(“SAN”)、个域网(“PAN”)、城域网(“MAN”)、无线局域网(“WLAN”)、虚拟专用网(“VPN”)、蜂窝或其它移动通信网络、蓝牙、NFC或其任何组合、或者便于信号、数据和/或消息的通信的任何其它适当的架构或系统。应该理解,贯穿示例实施例的讨论,术语“数据”和“信息”在本文中可互换使用以表示文本、图像、音频、视频或者能够存在于基于计算机的环境中的任何其它形式的信息。通信应用113可与连接到网络105的web服务器或包括用户网络装置110、服务应用系统170的web服务器172和第三方应用提供者系统130的web服务器132的其它计算装置交互。
用户装置110能够包括被配置为经由通信应用113与第三方应用提供者系统170交互和通信的第三方应用112。例如,第三方应用112能够与通信应用113交互,通信应用113进而能够用于并被配置为经由网络105与第三方应用提供者系统170通信和共享数据。第三方应用112还能够用于并被配置为与第三方应用提供者系统130通信和共享数据。例如,第三方应用112能够与通信应用113交互,通信应用113进而能够用于并被配置为经由网络105与第三方应用提供者系统130通信和共享数据。
第三方应用112可涵盖用户装置110能够用其来执行用户计算装置110上的功能的任何应用、硬件、软件或处理。第三方应用112能够如本文所述与通信应用113交互,或者能够被具体实现为通信应用113的伙伴应用。作为伙伴应用,第三方应用112在通信应用113内执行。即,第三方应用111能够是嵌入在通信应用113中的应用程序。用户装置110可包括适当的技术,该技术包括或耦合至web服务器(例如,web浏览器应用或者用于与网页文件交互的其它合适的应用)。用户101能够与第三方应用112所提供的用户界面交互以对第三方应用112添加、修改或移除信息。在web浏览器伙伴应用实施例中,能够经由web浏览器提供此用户界面。
用户装置110可包括服务应用115,服务应用115被配置为经由通信应用113、用户计算装置110上的其它应用、用于用户计算装置110的一个或多个用户界面系统或者任何其它合适的应用、装置或系统来与一个或多个服务应用系统130交互和通信。例如,服务应用115能够与通信应用113交互,通信应用113进而能够用于并被配置为经由网络105与服务应用系统130通信和共享数据。服务应用115还能够用于并被配置为与服务应用系统130通信和共享数据。例如,服务应用115能够与通信应用113交互,通信应用113进而能够用于并被配置为经由网络105与服务应用系统130通信和共享数据。
服务应用115可涵盖用户装置110能够用其来执行用户计算装置110上的功能的任何应用、硬件、软件或处理。服务应用115能够如本文所述与通信应用113交互,或者能够被具体实现为通信应用113的伙伴应用。作为伙伴应用,服务应用115在通信应用113内执行。即,服务应用115能够是嵌入在通信应用113中的应用程序。用户装置110可包括适当的技术,该技术包括或耦合至web服务器(例如,web浏览器应用或者用于与网页文件交互的其它合适的应用)。
用户101能够与第三方应用112所提供的用户界面交互以对服务应用115添加、修改或移除信息。服务应用在用户计算装置110上按照任何合适的方式与第三方应用112或其它应用通信。例如,在web浏览器伙伴应用实施例中,能够经由web浏览器114提供此用户界面。可使得来自服务应用115的数据可用于诸如所述应用的其它应用来访问并且将其并入应用中。服务应用按照任何合适的方式来向应用发送数据。例如,如果服务应用和所述应用在同一用户计算装置上的同一操作系统上操作,则应用可访问来自服务应用的数据。在另一示例中,服务应用可将数据上传至应用、程序、网页或者任何合适的形式,以向应用发送指令。
用户装置110还包括可由第三方应用112、服务应用115和web浏览器114访问的数据存储单元111。示例数据存储单元111可包括一个或多个有形计算机可读存储装置。数据存储单元111能够存储在用户装置110上,或者能够逻辑上耦合至用户装置110。例如,数据存储单元111能够包括板载闪存和/或一个或多个可移除存储卡或可移除闪存。
服务应用系统170包括web服务器172、网站173和数字钱包账户174。web服务器172能够表示服务应用系统170用其来托管服务应用系统170的网站173的计算机实现的系统。例如,服务应用系统170的web服务器172和关联的网站173能够表示服务应用系统170用其来为用户101提供和维护服务应用115的计算机实现的系统。在特定示例实施例中,服务应用系统170能够在用户装置110的服务应用115内执行和操作,或者能够作为用户装置110的服务应用115的伙伴应用来执行和操作。另选地,服务应用系统170能够独立于用户装置110的服务应用115来执行和操作。在这样的实施例中,例如,服务应用系统170被配置为经由网络105与用户装置110通信。服务应用系统170还包括可访问的数据存储单元171,数据存储单元171可包括板载闪存和/或一个或多个可移除存储卡或可移除闪存。
服务应用系统170被配置为经由网络105来接收和存储内容并且与服务应用115通信。例如,服务应用系统170能够更新服务应用115上的界面对象和其它数据,并且将更新发送给用户计算装置110上的服务应用115。
第三方应用提供者系统130包括第三方应用服务器132,第三方应用服务器132能够表示金融账户发行方系统130用其来托管第三方应用提供者系统130的网站133的计算机实现的系统。第三方应用提供者系统130的第三方应用web服务器132和关联的网站133可表示第三方应用提供者系统130用其来创建、提供、维护第三方应用112的计算机实现的系统。第三方应用提供者系统130还包括数据存储单元131,数据存储单元131能够用于存储与用户金融账户134关联的金融账户信息。
将理解,所示的网络连接是示例,并且能够使用在计算机与装置之间建立通信链路的其它手段。此外,受益于本公开的本领域的普通技术人员将理解,图1所示的用户装置110、服务应用系统170和第三方应用提供者系统130能够具有多种其它合适的计算机系统配置中的任何配置。例如,用户装置110能够被具体实现为可包括或者不包括上述所有组件的移动电话或者手持计算机。
示例过程
以下参照示例操作环境100的组件来描述图2-3所示的示例方法。还可与其它系统一起以及在其它环境中执行图2-3的示例方法。
图2是描绘了根据特定示例实施例的通过分立的应用来渲染和更新应用上的界面对象的方法的框图。
参照图2,在方框205中,服务应用系统170向用户计算装置110提供服务应用115。服务应用115可以是独立应用、用户计算装置110操作系统的功能、分立的应用的功能或者任何合适的硬件、软件或固件功能。服务应用115可由用户101从服务应用系统170的网站或者从任何合适的位置下载。服务应用115可由用户计算装置110的制造商或者由用户计算装置110的操作系统的提供者安装在用户计算装置110上。服务应用115可从任何合适的来源获得并按照任何合适的方式被安装在用户计算装置110上。服务应用115可提供启用各种功能的其它合适的应用。例如,服务应用115可向其它应用提供图像、代码、功能和其它合适的数据。
在方框210中,服务应用115使得用于界面对象的指令、规范和其它代码可用于第三方应用112。界面对象可以是链接、按钮、广告或者其它合适的对象。例如,界面对象是第三方应用112的用户界面上的虚拟按钮,当该虚拟按钮被致动时打开与服务应用115关联的应用。在此示例中,按钮可打开数字钱包应用模块。如果媒体提供者应用将按钮置于用户界面上,则用户101可从媒体提供者应用打开数字钱包应用模块以允许购买媒体。在此示例中的服务应用115可以是与用户计算装置110的操作系统或者其它关联方关联的应用。服务应用115包括用于一个或多个界面对象以及其它对象的指令。可从服务应用系统170或者从任何合适的来源接收用于新对象或者修正对象的指令。
在方框215中,服务应用115向第三方应用112提供用于渲染界面对象的界面对象指令。将在图3的方法215中更详细地描述方框215。
图3是描绘了根据特定示例实施例的应用向第三方应用提供界面对象指令的方法215的方框流程图。
在方框305中,第三方应用112请求发起与服务应用115关联的界面的界面对象。第三方应用112可以是请求在用户界面上显示界面对象的任何合适的应用。可由第三方应用112,由配置用户界面的运营商,或者由任何合适的一方来向服务应用115提供请求。该请求包括服务应用115提供指令所需的任何信息。
可经由用户计算装置110的操作系统来发送请求。即,可在不联系第三方应用提供者130或服务应用系统170的情况下发送请求。可由服务应用115从第三方应用112读取新指令。在另一实施例中,第三方应用112可按照任何合适的方式向服务应用115发送请求。
在示例中,请求可包括界面对象所需的尺寸约束。尺寸约束可提供对象尺寸可用的最小和最大尺寸。尺寸约束可仅提供一个维度的尺寸约束,诸如,水平维度。请求可包括将允许界面对象执行的功能的约束。例如,对象可被限制为文本和图像显示。对象可允许将发起的链接,但是不允许将打开的另一应用。请求可包括关于界面对象的外观的限制。例如,颜色限制可限制对象可呈现的颜色的类型。任何合适的约束或偏好可包括在请求中。
在方框310中,服务应用115向第三方应用112提供界面对象指令。服务应用115从第三方应用112接收请求以及任何约束。如果没有从第三方应用112接收到约束,则服务应用115可发送对约束的请求,诸如将使用的用户界面的类型、分配给界面选项的空间的尺寸或者任何其它合适的约束。
在方框315中,服务应用115确定了用于界面对象的参数以满足第三方应用112的约束。例如,如果分配给界面对象的空间为200像素宽,则服务应用115定义了限定该尺寸的按钮的界面对象指令集。可提供对象的层列表,各个层由图像宽度、高度和对齐参数来限定。层的位置可由绝对位置(例如,比前一层小20像素)或者相对位置(例如,比前一层小20%)来限定。界面对象可按照任何方式被拉伸或缩放以满足第三方应用112的约束。
可由第三方应用112从服务应用115读取界面对象指令。即,可使得指令可用于第三方应用112来访问并且将其并入第三方应用112的用户界面中。服务应用115按照任何合适的方式向第三方应用112发送界面对象指令。例如,如果服务应用115和第三方应用112在同一用户计算装置110上的同一操作系统上操作,则第三方应用112可直接从服务应用115访问指令。在另一示例中,服务应用115可将指令上传至应用、程序、网页或者任何合适的形式,以向第三方应用112发送指令。
在方框320中,第三方应用112接收指令,将指令并入用户界面代码中,并且在用户界面上显示界面对象。界面对象在第三方应用112被打开时或者在任何合适的时间出现在第三方应用112的用户界面上。界面对象显示在用户界面的所请求的位置中。如果用户101致动界面对象,则该界面对象可用于执行所请求的功能。
图4是根据特定示例实施例的显示界面对象的应用的示例用户界面的示图。在该示例中,第三方应用112由应用A405来表示。应用405包括开始按钮410和菜单按钮415。
应用405用户界面显示了如启动应用B420所示的界面对象。在此示例中,致动按钮将促使打开应用B。应用B可在用户界面上的另一窗口中、另一标签卡中、在应用A内或者以任何合适的方式打开。
返回图2,在方框220中,服务应用115从服务应用系统170接收更新。更新可以是对界面对象的外观的更新。例如,可改变外观的颜色、文本、徽标或其它属性。可更新界面对象的功能。例如,可改变通过致动对象而访问的应用。可接收任何合适的更新。可通过诸如网络之上的互联网连接的任何合适的技术从服务应用系统170接收更新。
在方框225中,服务应用115自动地更新第三方应用112上的界面对象。服务应用可向第三方应用112发送请求以接收更新的指令的传送。可经由用户计算装置110的操作系统来发送请求。即,可在不联系第三方应用提供者130或服务应用系统170的情况下发送请求。可由第三方应用112从服务应用115读取新指令。在另一实施例中,服务应用115可按照任何合适的方式将更新的界面对象指令发送给第三方应用112。
在方框230中,第三方应用112将更新的界面对象显示在第三方应用112的用户界面上。该显示并入了由来自服务应用115的指令所指示的新参数。第三方应用112并入了更新的指令而无需来自系统管理员或其它操作者的输入。第三方应用112并入了更新的指令而无需重新编译第三方应用112编程代码。更新的指令从服务应用直接加载到第三方应用112中。
可由第三方应用112从服务应用115读取更新的界面对象指令。即,可使得更新的指令可用于第三方应用112来访问并且将其并入第三方应用112的用户界面中。服务应用115按照任何合适的方式将更新的界面对象指令发送至第三方应用112。例如,如果服务应用115和第三方应用112在同一用户计算装置的同一操作系统上操作,则第三方应用112可直接从服务应用115访问更新的指令。在另一示例中,服务应用115可将更新的指令上传至应用、程序、网页或者任何合适的形式,以向第三方应用112发送指令。
其它示例实施例
图5描绘了根据特定示例实施例的计算机器2000和模块2050。计算机器2000可对应于各种计算机、服务器、移动装置、嵌入式系统或者本文所呈现的计算系统中的任一个。模块2050可包括被配置为便于计算机器2000执行本文所呈现的各种方法和处理功能的一个或多个硬件或软件元件。计算机器2000可包括各种内部或附接的组件,诸如处理器2010、系统总线2020、系统存储器2030、存储介质2040、输入/输出接口2060以及用于与网络2080通信的网络接口2070。
计算机器2000可被实现为传统计算机系统、嵌入式控制器、膝上型计算机、服务器、移动装置、智能电话、机顶盒、咨询亭、车载信息系统、与电视关联的一个或多个处理器、定制化机器、任何其它硬件平台或者其任何组合或多样性。计算机器2000可以是被配置为使用经由数据网络或总线系统互连的多个计算机器来工作的分布式系统。
处理器2010可被配置为执行代码或指令以执行本文所描述的操作和功能,管理请求流程和地址映射,并且执行计算并生成命令。处理器2010可被配置为监测和控制计算机器2000中的组件的操作。处理器2010可以是通用处理器、处理器核、多处理器、可重配置处理器、微控制器、数字信号处理器(“DSP”)、专用集成电路(“ASIC”)、图形处理单元(“GPU”)、现场可编程门阵列(“FPGA”)、可编程逻辑器件(“PLD”)、控制器、状态机、门控逻辑、分立的硬件组件、任何其它处理单元或者其任何组合或多样性。处理器2010可以是单个处理单元、多个处理单元、单个处理核、多个处理核、专用处理核、协同处理器或其任何组合。根据特定实施例,处理器2010连同计算机器2000的其它组件一起可以是在一个或多个其它计算机器内执行的虚拟化计算机器。
系统存储器2030可包括非易失性存储器,诸如只读存储器(“ROM”)、可编程只读存储器(“PROM”)、可擦除可编程只读存储器(“EPROM”)、闪存、或者能够在施加电力或者未施加电力的情况下存储程序指令或数据的任何其它装置。系统存储器2030还可包括易失性存储器,诸如随机存取存储器(“RAM”)、静态随机存取存储器(“SRAM”)、动态随机存取存储器(“DRAM”)和同步动态随机存取存储器(“SDRAM”)。其它类型的RAM也可用于实现系统存储器2030。系统存储器2030可使用单个存储器模块或者多个存储器模块来实现。尽管系统存储器2030被描绘为是计算机器2000的一部分,但是本领域技术人员将理解,在不脱离本主题技术的范围的情况下,系统存储器2030可与计算机器2000分离。还应该理解,系统存储器2030可包括诸如存储介质2040的非易失性存储装置,或者与其结合操作。
存储介质2040可包括硬盘、软盘、压缩盘只读存储器(“CD-ROM”)、数字多功能盘(“DVD”)、蓝光盘、磁带、闪存、其它非易失性存储器装置、固态驱动器(“SSD”)、任何磁存储装置、任何光学存储装置、任何电存储装置、任何半导体存储装置、任何基于物理的存储装置、任何其它数据存储装置或者其任何组合或多样性。存储介质2040可存储一个或多个操作系统、应用程序和诸如模块2050的程序模块、数据或任何其它信息。存储介质2040可以是计算机器2000的一部分或者连接到计算机器2000。存储介质2040还可以是与计算机器2000通信的诸如服务器、数据库服务器、云存储、联网存储等的一个或多个其它计算机器的一部分。
模块2050可包括被配置为便于计算机器2000执行本文所呈现的各种方法和处理功能的一个或多个硬件或软件元件。模块2050可包括与系统存储器2030、存储介质2040或二者关联地作为软件或固件存储的一个或多个指令序列。存储介质2040可因此表示在其上可存储用于处理器2010执行的指令或代码的机器或计算机可读介质的示例。机器或计算机可读介质通常可涉及用于向处理器2010提供指令的任何介质或媒体。与模块2050关联的这种机器或计算机可读介质可包括计算机软件产品。应该理解,包括模块2050的计算机软件产品也可与经由网络2080、任何信号承载介质或者任何其它通信或传递技术向计算机器2000传递模块2050的一个或多个处理或方法关联。模块2050还可包括硬件电路或者用于配置硬件电路的信息,诸如用于FPGA或其它PLD的微码或配置信息。
输入/输出(“I/O”)接口2060可被配置为耦合至一个或多个外部装置,以从一个或多个外部装置接收数据以及向一个或多个外部装置发送数据。这种外部装置连同各种内部装置一起也可被称为外围装置。I/O接口2060可包括用于在操作上将各种外围装置耦合至计算机器2000或处理器2010的电连接和物理连接二者。I/O接口2060可被配置为在外围装置、计算机器2000或处理器2010之间通信数据、地址和控制信号。I/O接口2060可被配置为实现任何标准接口,诸如小型计算机系统接口(“SCSI”)、串行附接SCSI(“SAS”)、光纤通道、外围组件互连(“PCI”)、高速PCI(PCIe)、串行总线、并行总线、高级技术附件(“ATA”)、串行ATA(“SATA”)、通用串行总线(“USB”)、雷电(Thunderbolt)、火线、各种视频总线等。I/O接口2060可被配置为仅实现一个接口或总线技术。另选地,I/O接口2060可被配置为实现多个接口或总线技术。I/O接口2060可被配置成系统总线2020的一部分、全部或者与其结合操作。I/O接口2060可包括一个或多个缓冲器,该缓冲器用于缓冲一个或多个外部装置、内部装置、计算机器2000或处理器2010之间的传输。
I/O接口2060可将计算机器2000耦合至各种输入装置,包括鼠标、触摸屏、扫描仪、电子数字化仪器、传感器、接收机、触摸板、轨迹球、相机、麦克风、键盘、任何其它指向装置或者其任何组合。I/O接口2060可将计算机器2000耦合至各种输出装置,包括视频显示器、扬声器、打印机、投影仪、触觉反馈装置、自动控制、机器人组件、致动器、电机、风扇、螺线管、阀、泵、发送机、信号发射器、灯等。
可在联网环境下使用通过网络接口2070至横跨网络2080的一个或多个其它系统或计算机器的逻辑连接操作计算机器2000。网络2080可包括广域网(WAN)、局域网(LAN)、内联网、互联网、无线接入网络、有线网络、移动网络、电话网络、光网络或其组合。网络2080可以是任何拓扑结构的分组交换、电路交换,并且可使用任何通信协议。网络2080内的通信链路可涉及各种数字或模拟通信介质,诸如光纤线缆、自由空间光学器件、波导、导电体、无线链路、天线、射频通信等。
处理器2010可通过系统总线2020连接至本文所讨论的计算机器2000的其它元件或者各种外设。应该理解,系统总线2020可在处理器2010之内、在处理器2010之外或者这二者。根据一些实施例,本文所讨论的处理器2010、计算机器2000的其它元件或者各种外设中的任一个可被集成到诸如片上系统(“SOC”)、封装上系统(“SOP”)或ASIC装置的单个装置中。
在此处所讨论的系统收集关于用户的个人信息或者可能使用个人信息的情况下,可向用户提供机会或选择,以控制程序或特征是否收集用户信息(例如,关于用户的社交网络、社交行为或活动、职业、用户的偏好或者用户的当前位置的信息),或者控制是否和/或如何从内容服务器接收可能与用户更加相关的内容。另外,在存储或使用特定数据之前可按照一种或多种方式来对其处理,从而去除个人可识别信息。例如,可以处理用户的身份以使得没有被用来确定用户的个人识别信息,或者在获得位置信息的情况下可将用户的地理位置一般化(诸如,一般化至城市、邮政编码或州级别),以使得无法确定用户的具体位置。因此,用户可控制内容服务器如何收集关于用户的信息和如何使用该信息。
实施例可包括具体实现了本文所描述和示出的功能的计算机程序,其中,计算机程序被实现于计算机系统中,该计算机系统包括存储在机器可读介质中的指令以及执行所述指令的处理器。然而,应显而易见的是,可存在以计算机编程来实现实施例的许多不同的方式,并且实施例不应被解释为限于任何计算机程序指令集合。另外,有经验的程序员将能够基于所附的流程图以及申请文本中的关联描述编写这种计算机程序,以实现所公开的实施例的实施例。因此,对具体程序代码指令集合的公开不被认为是对充分理解如何做出和使用实施例所必须的。另外,本领域技术人员将理解,本文所公开的实施例的一个或多个方面可由如可具体实现于一个或多个计算系统中的硬件、软件或其组合来执行。此外,任何提及将由计算机执行的行为不应被解释为将由单个计算机来执行,因为不止一个计算机可执行该行为。
本文所描述的示例实施例能够与执行先前所描述的方法和处理功能的计算机硬件和软件一起使用。本文所描述的系统、方法和过程能够被具体实现于可编程计算机、计算机可执行软件或数字电路中。软件能够被存储在计算机可读介质上。例如,计算机可读介质能够包括软盘、RAM、ROM、硬盘、可移除介质、闪存、记忆棒、光学介质、磁光介质、CD-ROM等。数字电路能够包括集成电路、门阵列、模块逻辑、现场可编程门阵列(FPGA)等。
先前呈现的实施例中所描述的示例系统、方法和行为是示例性的,以及在另选实施例中,在不脱离各种实施例的范围和精神的情况下,能够按照不同的顺序执行、彼此并行地执行、完全省略地执行特定行为,和/或能够在不同的示例实施例之间组合特定行为,和/或能够执行特定附加行为。因此,这种另选实施例包括在本文所描述的发明中。
尽管上文已经详细描述了具体实施例,但该描述仅用于说明目的。因此应该理解,上面所描述的许多方面并非意为为必须的或基本的元素,除非另外明确地指明。除了上面所描述的那些以外,在不脱离以下权利要求书中所限定的实施例的精神和范围的情况下,受益于本公开的本领域的普通技术人员能够做出所公开的示例实施例的方面的修改以及与其对应的等同组件或行为,其范围将依照最宽解释以涵盖这种修改和等同结构。

Claims (20)

1.一种渲染和更新界面对象的计算机实现的方法,包括:
由在一个或多个计算装置上操作的第一应用接收提供用于呈现对象的指令的请求,所述请求接收自在所述一个或多个计算装置上操作的第二应用;
由在所述一个或多个计算装置上操作的所述第一应用将用于呈现所述对象的所述指令通信给所述第二应用,以便所述第二应用根据所述指令经由所述一个或多个计算装置的用户界面渲染所述对象;
由在所述一个或多个计算装置上操作的所述第一应用接收用于呈现所述对象的所述指令的更新;以及
由在所述一个或多个计算装置上操作的所述第一应用将用于呈现所述对象的所更新的指令通信给所述第二应用,以便所述第二应用根据所更新的指令经由所述一个或多个计算装置的用户界面渲染所更新的对象。
2.根据权利要求1所述的方法,其中,所述第二应用在不更新所述第二应用的编程代码的情况下渲染所更新的对象。
3.根据权利要求1所述的方法,其中,所述第二应用在无需来自操作者的输入的情况下渲染所更新的对象。
4.根据权利要求1所述的方法,其中,所述第一应用和所述第二应用在同一计算装置上操作。
5.根据权利要求1所述的方法,其中,所述第一应用和所述第二应用在不同的计算装置上操作。
6.根据权利要求1所述的方法,进一步包括:
由在所述一个或多个计算装置上操作的所述第一应用接收用于显示所述对象的所述第二应用上可用的约束集合;以及
由在所述一个或多个计算装置上操作的所述第一应用配置用于呈现所述对象的所述指令和所更新的指令,以满足所述约束集合。
7.根据权利要求6所述的方法,其中,配置所述指令包括缩放由所述指令描述的所述对象的尺寸,以符合包括在所述约束集合中的尺寸约束。
8.根据权利要求1所述的方法,其中,所述第一应用经由所述一个或多个计算装置的操作系统来通信所述指令和所更新的指令。
9.一种渲染和更新界面对象的系统,包括:
存储装置;
处理器,所述处理器在通信上耦合至所述存储装置,其中所述处理器执行存储在所述存储装置中的应用代码指令以使得所述系统:
接收提供用于呈现对象的指令的请求,所述请求接收自在一个或多个计算装置上操作的第二应用;
将用于呈现所述对象的所述指令通信给所述第二应用,以便所述第二应用根据所述指令经由所述一个或多个计算装置的用户界面渲染所述对象;
接收用于呈现所述对象的所述指令的更新;以及
将用于呈现所述对象的所更新的指令通信给所述第二应用,以便所述第二应用根据所更新的指令经由所述一个或多个计算装置的用户界面渲染所更新的对象。
10.根据权利要求9所述的系统,其中,所述第二应用在不更新所述第二应用的编程代码的情况下渲染所更新的对象。
11.根据权利要求9所述的系统,其中,所述第二应用在无需来自操作者的输入的情况下渲染所更新的对象。
12.根据权利要求9所述的系统,其中,所述第一应用和所述第二应用在同一计算装置上操作。
13.根据权利要求9所述的系统,其中,所述第一应用和所述第二应用在不同的计算装置上操作。
14.根据权利要求9所述的系统,进一步包括应用代码指令以:
接收用于显示所述对象的所述第二应用上可用的约束集合;以及
配置用于呈现所述对象的所述指令和所更新的指令,以满足所述约束集合。
15.根据权利要求14所述的系统,其中,配置所述指令包括缩放由所述指令描述的所述对象的尺寸,以符合包括在所述约束集合中的尺寸约束。
16.根据权利要求9所述的系统,其中,所述第一应用经由所述一个或多个计算装置的操作系统来通信所述指令和所更新的指令。
17.一种计算机程序产品,包括:
非暂时性计算机可读存储装置,其上实现有计算机可读程序指令,所述计算机可读程序指令在被计算机执行时使得所述计算机渲染和更新界面对象,所述计算机可执行程序指令包括:
接收提供用于呈现对象的指令的请求的计算机可执行程序指令,所述请求接收自在一个或多个计算装置上操作的第二应用;
将用于呈现所述对象的所述指令通信给所述第二应用以便所述第二应用根据所述指令经由所述一个或多个计算装置的用户界面渲染所述对象的计算机可执行程序指令;
接收用于呈现所述对象的所述指令的更新的计算机可执行程序指令;以及
将用于呈现所述对象的所更新的指令通信给所述第二应用以便所述第二应用根据所更新的指令经由所述一个或多个计算装置的用户界面渲染所更新的对象的计算机可执行程序指令。
18.根据权利要求17所述的计算机程序产品,进一步包括:
接收用于显示所述对象的所述第二应用上可用的约束集合的计算机可执行程序指令;以及
配置用于呈现所述对象的所述指令和所更新的指令以满足所述约束集合的计算机可执行程序指令。
19.根据权利要求18所述的计算机程序产品,其中,配置所述指令包括缩放由所述指令描述的所述对象的尺寸,以符合包括在所述约束集合中的尺寸约束。
20.根据权利要求17所述的计算机程序产品,其中,所述第一应用经由所述一个或多个计算装置的操作系统来通信所述指令和所更新的指令。
CN201480064336.2A 2013-10-16 2014-10-15 渲染由分立的应用定义的界面对象 Pending CN105765529A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/055,464 US9223565B2 (en) 2013-10-16 2013-10-16 Rendering interface objects defined by a separate application
US14/055,464 2013-10-16
PCT/US2014/060786 WO2015057902A1 (en) 2013-10-16 2014-10-15 Rendering interface objects defined by a separate application

Publications (1)

Publication Number Publication Date
CN105765529A true CN105765529A (zh) 2016-07-13

Family

ID=52810778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480064336.2A Pending CN105765529A (zh) 2013-10-16 2014-10-15 渲染由分立的应用定义的界面对象

Country Status (5)

Country Link
US (3) US9223565B2 (zh)
EP (1) EP3058450B1 (zh)
KR (1) KR101686981B1 (zh)
CN (1) CN105765529A (zh)
WO (1) WO2015057902A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9223565B2 (en) 2013-10-16 2015-12-29 Google Inc. Rendering interface objects defined by a separate application
US10331532B2 (en) * 2017-01-19 2019-06-25 Qualcomm Incorporated Periodic non-intrusive diagnosis of lockstep systems
US10592077B1 (en) * 2019-07-17 2020-03-17 Capital One Services, Llc AI-powered tagging and UI/UX optimization engine

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040075623A1 (en) * 2002-10-17 2004-04-22 Microsoft Corporation Method and system for displaying images on multiple monitors
US7788662B2 (en) * 2004-07-28 2010-08-31 Microsoft Corporation Automatic upgrade of pluggable components
CN103180822A (zh) * 2010-08-12 2013-06-26 谷歌公司 使用共享工作器的子组件实例和同步

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7546576B2 (en) * 2001-06-15 2009-06-09 Lightsurf Technology, Inc. Software framework for web-based applications
US7607137B2 (en) 2002-07-01 2009-10-20 Sap Ag Integration of heterogeneous applications
KR100582589B1 (ko) * 2003-12-26 2006-05-23 한국전자통신연구원 임베디드 시스템에서의 플래시를 이용한 데스크탑 매니저시스템
US8327290B2 (en) 2004-04-06 2012-12-04 International Business Machines Corporation User task interface in a web application
KR101560183B1 (ko) * 2008-04-17 2015-10-15 삼성전자주식회사 사용자 인터페이스를 제공/수신하는 방법 및 장치
US8793709B2 (en) 2008-11-20 2014-07-29 SAP France S.A. Dynamic data coordination between multiple applications
US8561038B1 (en) * 2009-12-31 2013-10-15 Google Inc. High performance execution environment
KR20120039237A (ko) * 2010-10-15 2012-04-25 삼성전자주식회사 사용자 인터페이스 갱신 방법 및 장치
US8788627B2 (en) 2011-09-30 2014-07-22 Apple Inc. Interactive web application framework
US9823917B2 (en) 2011-10-20 2017-11-21 Facebook, Inc. Update application user interfaces on client devices
US20140258968A1 (en) * 2013-03-05 2014-09-11 Research In Motion Limited Visual Representation Of Edits For Collaborative Application Development
TWI497311B (zh) * 2013-03-28 2015-08-21 Quanta Comp Inc 跨裝置通訊傳輸系統及其方法
US9223565B2 (en) * 2013-10-16 2015-12-29 Google Inc. Rendering interface objects defined by a separate application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040075623A1 (en) * 2002-10-17 2004-04-22 Microsoft Corporation Method and system for displaying images on multiple monitors
US7788662B2 (en) * 2004-07-28 2010-08-31 Microsoft Corporation Automatic upgrade of pluggable components
CN103180822A (zh) * 2010-08-12 2013-06-26 谷歌公司 使用共享工作器的子组件实例和同步

Also Published As

Publication number Publication date
EP3058450A4 (en) 2017-08-16
KR20160066044A (ko) 2016-06-09
US9223565B2 (en) 2015-12-29
WO2015057902A1 (en) 2015-04-23
US20170344347A1 (en) 2017-11-30
US9766863B2 (en) 2017-09-19
EP3058450A1 (en) 2016-08-24
EP3058450B1 (en) 2019-08-07
US20160077815A1 (en) 2016-03-17
KR101686981B1 (ko) 2016-12-16
US20150106799A1 (en) 2015-04-16

Similar Documents

Publication Publication Date Title
US9727300B2 (en) Identifying the positioning in a multiple display grid
CN109344352B (zh) 页面加载方法、装置及电子设备
US11030805B2 (en) Displaying data lineage using three dimensional virtual reality model
CN110199271A (zh) 现场可编程门阵列虚拟化
CN105373397A (zh) 专门的应用开发和部署系统及方法
CN102713848A (zh) 用于使用轻量级客户端通过网络来与虚拟化计算服务对接的方法
US10678413B2 (en) Application for auto deletion of images
US10489013B2 (en) Intelligent taskbar shortcut menu for webpage control
CN104137071A (zh) 用于脚本编译的简档数据的持久性存储
CN109634608A (zh) 界面动态生成方法、系统、设备以及介质
CN105786593A (zh) 用于重启上下文相关的应用集的方法和系统
US20180276721A1 (en) Real-time advertising placement
CN105103149A (zh) 根据移动推断网络偏好
CN105765529A (zh) 渲染由分立的应用定义的界面对象
US10324706B1 (en) Automated software deployment for electromechanical systems
US11010013B2 (en) Providing visual control guidance on a display
CN105518618B (zh) 将针对视觉元素的输入路由到图形框架的方法和系统
CN110430253A (zh) 一种提供小说更新通知信息的方法与设备
CN109976832A (zh) 一种提供寄宿程序的方法与设备
US10140651B1 (en) Displaying item information relative to selection regions of an item image
CN104866620B (zh) 背景式焦点图的实现方法、装置及系统
KR20160019526A (ko) 그래픽 동작들 통합
US20130036374A1 (en) Method and apparatus for providing a banner on a website
KR20230056498A (ko) 공동주택 하자 관리 장치 및 방법
KR102325647B1 (ko) 라이트맵 기반 모바일 게임의 3d 객체 데이터 처리 방법, 장치 및 시스템

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

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20160713

RJ01 Rejection of invention patent application after publication