CN108701041A - 通过数据绑定构建用户界面 - Google Patents
通过数据绑定构建用户界面 Download PDFInfo
- Publication number
- CN108701041A CN108701041A CN201680081800.8A CN201680081800A CN108701041A CN 108701041 A CN108701041 A CN 108701041A CN 201680081800 A CN201680081800 A CN 201680081800A CN 108701041 A CN108701041 A CN 108701041A
- Authority
- CN
- China
- Prior art keywords
- application
- user interface
- data
- request
- supplementary data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本技术涉及将应用集成到单个用户界面中。一个或多个计算设备(120)可以显示包括对应于第一应用的关联数据的用户界面(300)并且生成对补充数据的请求。可以由一个或多个计算设备识别能够满足对补充数据的请求的第二应用,并且一个或多个计算设备(120)可以生成并且显示指示第二应用可以提供所请求的补充数据的通知。可以由一个或多个计算设备接收对通知的选择,并且可以将对应于第二应用的第二用户界面(610,620)集成到用户界面(300)中,其中,第二用户界面显示所请求的补充数据。
Description
相关申请的交叉引用
本申请是2016年5月3日提交的美国专利申请No.15/145,009的继续申请,其公开内容通过引用结合于此。
背景技术
诸如移动设备的计算设备通常缺少屏幕空间来向用户显示足够信息量。另外,每个应用通常能够仅提供用户可能需要的一小部分信息。因此,用户可能需要在多个应用之间切换,或手动搜索所需信息。因此,收集和查看所有所需信息会变得麻烦且耗时。
发明内容
本公开内的实施例通常涉及制造结构形式。一个方面包括一种用于将应用集成到单个用户界面中的计算机实现的方法。一个或多个计算设备可以显示对应于第一应用的包括关联数据的用户界面。一个或多个计算设备可以生成对补充数据的请求,并且识别能够满足对补充数据的请求的第二应用。所述一个或多个计算设备可以生成并且显示指示所述第二应用可以提供所请求的补充数据的通知。所述一个或多个计算设备可以接收所述通知的选择,并且将对应于所述第二应用的第二用户界面集成到所述用户界面中,其中,所述第二用户界面显示所请求的补充数据。
在一些实施例中,所述一个或多个计算设备生成对补充数据的第二请求;识别能够满足所述对补充数据的第二请求的第三应用;生成并且显示指示所述第三应用可以提供所述第二请求的补充数据的第二通知;并且在接收到对所述第二通知的选择后,将对应于所述第三应用的第三用户界面集成到所述用户界面中,其中,所述第三用户界面显示所述第二请求的补充数据。
在一些实施例中,对补充数据的请求基于在所述一个或多个计算设备上显示的关联数据。
在一些实施例中,对补充数据的第二请求基于在所述第二用户界面中显示的所请求的补充数据。
在一些实施例中,对补充数据的请求包括对通过所述第一应用不可用的特定类型数据的请求。
在一些实施例中,当在所述用户界面上显示的所述关联数据改变时,更新所述第二用户界面。
在一些实施例中,当在所述用户界面上显示的关联数据改变时,移除所述第二用户界面。
另一方面包括一种调度输入数据的系统。该系统可以包括具有一个或多个处理器的一个或多个计算设备;以及存储指令的存储器。指令可由所述一个或多个处理器执行,并且可以包括显示对应于第一应用的包括关联数据的用户界面;生成对补充数据的请求;识别能够满足对补充数据的请求的第二应用;生成并且显示指示所述第二应用可以提供所请求的补充数据的通知;接收所述通知的选择;将对应于所述第二应用的第二用户界面集成到所述用户界面中,其中,所述第二用户界面显示所请求的补充数据。
另一方面包括一种存储指令的非瞬时计算机可读介质。指令当由一个或多个处理器执行时,使所述一个或多个处理器显示对应于第一应用的包括关联数据的用户界面;生成对补充数据的请求;识别能够满足对补充数据的请求的第二应用;生成并且显示指示所述第二应用可以提供所请求的补充数据的通知;接收所述通知的选择;将对应于所述第二应用的第二用户界面集成到所述用户界面中,其中,所述第二用户界面显示所请求的补充数据。
附图说明
本技术通过示例而非限制的方式示出,在附图中,相同的附图标记表示类似的元件,包括:
图1是根据本公开的方面的示例性系统的功能图。
图2是图1的示例性系统的示意图。
图3是根据本公开的方面的示例性应用界面。
图4是根据本公开的方面的另一示例性应用界面。
图5是根据本公开的方面的示例性应用的一部分。
图6示出了根据本公开的方面,覆盖在示例性应用界面的一部分上的通知。
图7示出了根据本公开的方面,集成到示例性应用中的另一应用。
图8示出了根据本公开的方面,覆盖在示例性应用界面的一部分上的另一通知。
图9示出了根据实施例,集成到示例性应用程序中的多个应用。
图10示出了根据实施例,改变集成到示例性应用中的多个应用的补充数据。
图11是根据实施例的流程图。
具体实施方式
该技术涉及通过其他应用的数据和用户界面来扩充计算设备上的应用的显示。在这方面,在设备上运行的应用可以将其他应用的用户界面锚定在其自己的用户界面中。例如,用户可以打开应用,并且可以通过该应用的用户界面填充显示器。在显示应用时,在计算设备上运行的程序可以确定其他应用能够提供用户界面以及从当前在设备上运行的应用不可获得的附加信息。程序可以为用户呈现允许应用将用户界面和附加信息合并到应用的用户界面中的选项。在用户选择合并其他应用的选项时,可以向用户提供由其他应用及其相应的用户界面提供的附加信息和功能,同时保持在该应用内。
在一个实施例中,计算设备可以加载应用。应用可以包括显示元素,诸如用户界面,以及覆盖在用户界面上的相关数据。例如,应用可以是移动应用,诸如餐馆推荐应用。餐馆推荐应用可以包括用于显示诸如受欢迎的餐馆的清单的相关数据的用户界面。
应用可以指示补充数据可以被添加到显示器和/或由应用提供。在这方面,基于在用户界面中显示的相关数据,应用可以生成一个或多个声明,指示补充数据可以由应用供给和/或提供。这样的补充数据可以包括日历数据、位置数据、地址簿数据、联系人数据、映射数据或任何其他数据。其他应用还可以生成声明,指示可以供给和提供的补充数据的特定类型。
声明可以包括数据标识符。数据标识符可以包括输入标识符和/或输出标识符,其指示应用可以分别供给和/或提供的补充数据的特定类型。可以命名数据标识符,使得它们包括每个数据标识符与之相关的补充数据的类型的描述,确保应用与其他应用之间的兼容性。例如,数据标识符的名称可以基于描述性术语,使得当任何应用生成提供和/或供给特定类型的补充数据的声明时,与这些声明相关联的数据标识符将确保提供和/或供给的数据之间的兼容性。
声明还可以包括显示标识符。显示标识符可以指示可以由应用供给和/或提供的用户界面的类型。在这方面,显示标识符可以包括分别指示可以提供和供给的用户界面的特定类型的显示标识符和组成标识符。
数据管理应用可以监视计算设备上的应用以确定是否可以满足一个或多个声明中的任何一个。在这方面,数据管理应用可以被集成到在计算设备上执行的操作系统中,并且可以连续地监视应用以确定是否已经生成了任何声明。
在确定已经生成了一个或多个声明之后,数据管理应用可以提取数据并且显示与每个声明相关联的标识符。基于所提取的数据和显示标识符,数据管理应用可以查询计算设备上的其他应用中的每一个以通过由所提到的标识符识别的特定类型的补充数据,确定其他应用的任何一个是否可以满足声明。
在确定满足至少一个声明时,可以提供指示匹配补充数据可用的一个或多个相应的通知。另外,通过将通知压缩并且放置在第一通知之后,可以以节省空间的布置呈现通知。这样的布置可以允许在不超过应用的显示的情况下呈现通知。
在接收到对通知之一的选择之后,数据管理应用可以将与所选择的通知相关联的其他应用的用户界面和补充数据集成到该应用的用户界面中。例如,当用户选择第一通知时,预订应用可以接收提供与预订应用声明相关联的用户界面和补充数据的请求。
数据管理可以通过将由其他应用提供的补充数据和用户界面设置在应用中来将所选择的其他应用集成到用户界面中。然后,应用可以将由其他应用提供的用户界面连同相应的补充数据一起集成在其自己的用户界面中。
可以由集成到应用的用户界面中的其他应用生成附加声明。在这方面,其他应用可以基于在用户界面中显示的相关数据和补充数据,生成用于附加补充数据的声明。
如前所述,数据管理应用可以监视应用和其他应用以确定是否可以满足用于附加补充数据的任何声明。在这方面,数据管理应用可以查询每个其他应用以确定它们是否可以提供在针对附加补充数据的一个或多个请求中指定的特定类型数据的附加补充数据。数据管理模块可以通过在由应用提供的位置中设置附加补充数据和相应的显示元素,将所选择的其他应用集成到用户界面中。
集成到用户界面中的其他应用可以基于在用户界面中显示的数据来更新其相应的显示元素和补充的相关数据。
本文所述的特征可以允许多个应用的用户界面一起显示,以提供连贯且丰富的用户体验。通过在单个显示器中一起显示多个用户界面,用户能够在单一时间利用多个应用及其相应的数据,不必在不同的屏幕之间导航。另外,上述特征可以允许计算设备预测用户的需要,从而在请求之前向用户提供信息。此外,不需要编程多个应用以使它们彼此了解。相反,系统可以根据它们相应的用户界面和数据来组织多个应用的协作,从而允许应用之间的更大集成。
示例性系统
图1和2包括示例性系统100,在其中可以实现上述特征。不应当视为限制本公开的范围或本文所述的特征的有用性。在该示例中,系统100可以包括计算设备110、120和130以及存储系统150。每个计算设备可以包含一个或多个处理器112、存储器114和通常存在于通用计算设备中的其他组件。计算设备110、120和130中的每一个的存储器114可以存储可由一个或多个处理器112访问的信息,包括可以由一个或多个处理器112执行的指令116。
存储器还可以包括可以由处理器检索、操纵或存储的数据118。存储器可以是能够存储可由处理器访问的信息的任何非瞬时型,诸如硬盘、存储卡、ROM、RAM、DVD、CD-ROM、可写入和只读存储器。
指令116可以是将由一个或多个处理器直接执行的任何指令集,诸如机器代码,或将由一个或多个处理器间接执行的任何指令集,例如脚本。在这方面,术语“指令”、“应用”、“步骤”和“程序”在本文中可互换使用。指令可以以目标代码格式存储,以便由处理器直接处理,或者以任何其他计算设备语言存储,包括按需解释或预先编译的独立源代码模块的脚本或集合。在下文中,更详细地解释指令的功能、方法和例程。
可以由一个或多个处理器112根据指令116来检索、存储和修改数据118。例如,尽管本文所述的主题不受任何特定数据结构的限制,但是数据可以在计算机寄存器中,被作为具有许多不同字段和记录的表,或XML文档存储在关系数据库中。还可以以任何计算设备可读格式,诸如但不限于二进制值、ASCII或Unicode格式化数据。此外,数据可以包括足以识别相关信息的任何信息,例如数字、描述性文本、专有代码、指针、对存储在诸如其他网络位置处的其他存储器中的数据的引用,或者由函数使用来计算相关数据的信息。
一个或多个处理器112可以是任何传统处理器,诸如商用CPU。替选地,处理器可以是专用组件,诸如专用集成电路(“ASIC”)或其他基于硬件的处理器。虽然不是必需的,但是计算设备110、120和130中的一个或多个可以包括更快或更有效地执行特定计算过程,诸如解码视频、将视频帧与图像匹配、失真视频、编码失真视频等的专用硬件组件。
尽管图1在功能上将处理器、存储器和计算设备的其他元件示为在同一块内,但处理器、计算机、计算设备或存储器实际上可以包括可以贮存在同一物理外壳内或可以不贮存在同一物理外壳内的多个处理器、计算机、计算设备或存储器。例如,存储器144可以是位于与计算设备110的外壳不同的外壳中的硬盘或其他存储介质。
对处理器、计算机、计算设备或存储器的引用将被理解为包括对可以或可以不并行操作的处理器、计算机、计算设备或存储器的集合的引用。例如,计算设备110可以包括操作为负载平衡服务器群、分布式系统等的服务器计算设备。此外,尽管下文所述的一些功能被指示为发生在具有单个处理器的单个计算设备上,但是本文所述的主题的各方面可以由多个计算设备实现,例如,通过网络160传送信息。
每个计算设备可以处于网络160的不同节点处并且能够与网络160的其他节点直接和间接地通信。尽管在图1-2中仅图示了少量计算设备110、120和130,但应当理解到,典型系统可以包括大量连接的计算设备,每个不同的计算设备处于网络160的不同节点处。可以使用各种协议和系统来互连本文所述的网络160和中间节点,使得网络可以是因特网、万维网、特定内联网、广域网或本地网络的一部分。网络可以利用标准通信协议,诸如以太网、WiFi和HTTP、一个或多个公司专有的协议,以及上述的各种组合。尽管如上所述,当发送或接收信息时获得了某些优点,但是本文描述的主题的其他方面不限于信息传输的任何特定方式。
作为示例,每个计算设备110可以包括能够经由网络与存储系统150以及计算设备120和130通信的web服务器。例如,服务器计算设备110中的一个或多个可以使用网络160来传送并且在诸如计算设备120或130的显示器122或132的显示器上向诸如用户220或230的用户呈现信息。在该方面,计算设备120和130可以被视为客户端计算设备,并且可以执行本文所述的所有或一些特征。
客户端计算设备120和130中的每一个可以与服务器计算设备110类似地配置,具有如上所述的一个或多个处理器、存储器和指令。每个客户端计算设备120或130可以是旨在由用户220或230使用的个人计算设备,并且具有通常与个人计算设备相关的所有组件,诸如中央处理单元(CPU)、存储数据和指令的存储器(例如RAM和内部硬盘)、诸如显示器122或132的显示器(例如,具有屏幕的监视器、触摸屏、投影仪、电视或可操作以显示信息的其他设备)以及用户输入设备124(例如,鼠标、键盘、触摸屏或麦克风)。客户端计算设备还可以包括用于记录视频流和/或捕获图像的相机、扬声器、网络接口设备,以及用于将这些元件彼此连接的所有组件。
尽管客户端计算设备120和130可以分别包括全尺寸个人计算设备,但是它们可以替代地包括能够通过诸如互联网的网络,与诸如服务器计算设备110的服务器无线地交换数据的移动计算设备。仅作为示例,客户端计算设备120可以是移动电话或诸如支持无线的PDA、平板PC或能够经由互联网获得信息的笔记本的设备。在另一示例中,客户端计算设备130可以是平板电脑或手提电脑。作为示例,用户可以使用小键盘、辅助键盘、麦克风,使用具有相机的视觉信号或触摸屏来输入信息。
与存储器114一样,存储系统150可以是能够存储服务器计算设备110可访问的信息的任何类型的计算机化存储器,诸如硬盘、存储卡、ROM、RAM、DVD、CD-ROM、可写入和只读存储器。另外,存储系统150可以包括分布式存储系统,其中,数据被存储在多个不同的存储设备上,这些存储设备可以物理地位于相同或不同的地理位置。存储系统150可以经由网络160连接到计算设备,如图1所示,和/或可以直接连接到计算设备110,120和130中的任何一个(未示出)。
存储器114和存储系统150可以包括一个或多个数据库。在一个示例中,存储器114可以包括由存储包括补充数据源的公共和私有数据的多个数据库组成的数据库。这样的补充数据可以包括日历数据、位置数据、地址簿数据、联系人数据、映射数据或任何其他这样的数据。补充数据可以被存储在网络浏览历史数据库、搜索历史数据库、地图历史数据库、地址簿数据库、电子邮件存档数据库、日历条目数据库等中。例如,地址簿数据库可以包括对应于用户联系人的个人数据,诸如联系人姓名、电话号码、地址等。在一些实施例中,数据库可以包括包含私有和/或公共数据的多个不同数据库。
存储在这些数据库中的每一个中的信息可以与特定程序或应用类型相关联,或者与计算设备120和130的整体操作相关联。例如,web浏览历史和搜索历史数据库可以与一个或多个Web浏览器,诸如Edge、Safari、Firefox或Chrome Web浏览器,相关联。地图历史数据库也可以与Web浏览器或诸如Google Earth的其他应用相关联。地址簿和电子邮件存档数据库可以链接到消息收发应用,诸如Gmail或MicrosoftOutlook。日历条目数据库可以类似地链接到消息收发应用或诸如Google Calendar的其他应用。虽然上文已经识别了许多不同的数据库,但是也可以采用可以包含位置相关信息的其他数据库,诸如与GoogleLatitude相关联的数据库、让用户与朋友分享他们的当前位置的工具。
示例性方法
为了通过其他应用的数据和用户界面来扩充应用的显示,诸如计算设备120或130的计算设备可以加载应用。应用可以包括在计算设备的显示器(诸如显示器122或132)上的显示元素,诸如用户界面,以及覆盖在用户界面上的相关数据。在一个示例中,应用可以是移动应用,诸如餐馆推荐应用,如图3所示。餐馆推荐应用可以包括用于显示相关数据的用户界面300,诸如受欢迎的餐馆列表320、标题330和小标题340。
用户可以与应用交互,诸如通过滚动并且从用户界面选择相关数据。例如,如图4所示,诸如用户220的用户可以以从底部到顶部的动作轻扫餐馆推荐应用的用户界面300,如箭头410所示。这样,标题330可以移出计算设备的显示,同时子标题340向上移动。在受欢迎的餐馆列表320中的另外的餐馆可以移动到屏幕上。
基于在用户界面中显示的关联数据,应用可以生成一个或多个声明,指示可以由应用供给和/或提供补充数据。在这方面,应用可以在应用启动时或者当用户导航到应用的特定部分时,基于预编程的参数生成声明。补充数据可以包括与应用的关联数据相关的数据或应用指示所需的数据。这样的补充数据可以包括日历数据、位置数据、地址簿数据、联系人数据、映射数据或任何其他数据。
声明可以包括数据标识符。数据标识符可以包括输入标识符和/或输出标识符,其指示应用可以分别供给和/或提供的补充数据的特定类型。可以命名数据标识符,使得根据公开可用的标准或指南,它们是全球唯一的。在一个示例中,应用可以查询在网站或数据库上公开可用的标识符名称的列表,以确定数据标识符的适当名称。在一些实施例中,可以基于应用被编程以管理的关联和补充数据,预先确定应用使用的数据标识符的名称。换句话说,应用可以具有存储在其代码内的数据标识符的名称。
可以命名数据标识符,使得它们包括每个数据标识符名称与之相关联的补充数据的类型的描述,确保应用与其他应用之间的兼容性。例如,数据标识符的名称可以基于描述性术语,使得当任何应用生成提供和/或供给特定类型的补充数据的声明时,与这些声明相关联的数据标识符将确保提供和/或供给的数据之间的兼容性。在一些实施例中,多个数据标识符可以引用相同类型的补充数据。
声明还可以包括显示标识符。显示标识符可以指示可以由应用供给和/或提供的用户界面的类型。在这方面,显示标识符可以包括分别指示可以提供和供给的用户界面的特定类型的显示标识符和组成标识符。
与数据标识符一样,显示标识符可以是全局唯一的并且根据公开可用的标准或指南命名。在一个示例中,应用可以查询在网站或数据库上公开可用的标识符名称的列表,以确定显示标识符的适当名称。在一些实施例中,可以预先确定应用使用的显示标识符的名称,并且将其编程到应用代码中。另外,多个显示标识符可以引用相同类型的用户界面。
可由应用供给和/或提供的用户界面的类型可以具有任何形状和大小,并且可以进一步包括所有类型的设计元素。在这方面,用户界面的类型可以是任何类型,包括部分或全屏用户界面,以及相对于显示器的特定尺寸的用户界面,诸如卡片。例如,卡片用户界面可以被定义为矩形形状并且包括25%的可视显示器。每种用户界面可以包括用户界面元素,诸如用户界面布局,界面元素,诸如按钮和文本,界面元素的位置,以及通常在用户界面中找到的其他这样的信息。
在一个示例中,在用户从流行餐馆列表320中选择“Circle Pizza”时,餐馆推荐应用可以导航到并且显示应用的“Circle Pizza”部分500。这样,位于应用的“Circle Pizza”部分内的相关数据,诸如“位置”520和“营业时间”530,可以由应用显示在用户界面300上,如图5所示。
在显示“位置”520和“营业时间”530的相关数据时,可以由餐馆推荐应用生成用于补充数据的两个声明。补充数据的两个声明可以包括第一声明和第二声明,第一声明包括对应于餐馆营业时间的第一输入标识符,第二声明包括对应于该位置的第二输入标识符。表A显示了第一和第二声明的内容:
表A
第一声明:
a.输入标识符:预订
b.输出标识符:餐厅
c.组成:卡片
第二声明:
a.输入标识符:位置
b.输出标识符:地址
c.组成:卡片和全屏幕
如本文所述,其他应用还可以生成指示可以供给和提供的补充数据的特定类型的声明。例如,如表B所示,在计算设备操作或存在于计算设备上的两个其他应用,预订应用和方向应用可以生成下述声明。
表B:
预订应用声明:
a.输入标识符:餐厅
b.输出标识符:预订
c.显示:卡片
方向应用声明:
a.输入标识符:地址
b.输出标识符:位置
c.显示:全屏
数据管理应用可以监视计算设备上的应用以确定是否可以满足一个或多个声明中的任何一个。在这方面,数据管理应用可以被集成到在计算设备上执行的操作系统中,并且可以连续地监视应用以确定是否已经生成了任何声明。例如,数据管理应用可以监视餐馆推荐应用并且确定生成了第一和第二声明。
在确定已经生成了一个或多个声明之后,数据管理应用可以提取与每个声明相关联的数据和显示标识符。例如,数据管理应用可以分别从第一和第二声明中提取“预订”和“位置”输入标识符,以及“餐厅”和“地址”输出标识符。另外,数据管理应用可以提取相应的“卡片”和“卡片和全屏”显示标识符。
基于所提取的数据和显示标识符,数据管理应用可以查询计算设备上的每个其他应用以通过由提取的标识符识别的特定类型的补充数据,确定它们是否满足声明。在一些实施例中,数据管理应用可以监视外部应用或信息源,诸如基于web的应用或网站,以确定这些源是否已生成任何声明。这样的外部应用或信息源可以在服务器,诸如服务器110上。
当来自应用的声明的数据和显示标识符与至少一个其他应用的数据和显示标识符匹配时,满足声明。在这方面,一个声明的输入、输出和显示标识符应当与第二声明的输出、输入和显示标识符匹配。在一些实施例中,声明可以仅包括输入或输出标识符,以及显示标识符。这样,数据管理应用可以仅确定所提供的标识符是否匹配。在一些实施例中,当输出和显示标识符与第二声明的输入和显示标识符匹配时,可以满足声明。
例如,可以将第一声明与数据管理应用的预订应用声明和方向应用声明比较。在这方面,数据管理应用可以将如表A所示的、所提取的第一声明的输入、输出和显示标识符中的每一个与如表B所示的、所提取的预订和方向应用声明的输出、输入和显示标识符比较。当所提取的第一声明的输入、输出和组成标识符与所提取的预订应用声明的输出、输入和显示标识符匹配时,预订应用声明可以满足第一声明。相反,当所提取的第一声明的标识符与所提取的方向应用声明的标识符不匹配时,数据管理可以确定方向应用声明不满足第一声明。
在另一示例中,数据管理应用可以将所提取的第一声明的输出和显示标识符的每一个(如表A所示)与所提取的预订和方向应用声明的输出和显示标识符(如表B所示)比较。当所提取的第一声明的输出和组成标识符与所提取的预订应用声明的输入和显示标识符匹配时,预订应用声明可以满足第一声明。
然后,数据管理应用可以将如表A所示的第二声明与如表B所示的预订应用声明和方向应用声明比较。在这方面,数据管理应用可以确定方向应用声明满足第二声明。另外,数据管理应用可以确定预订应用声明不满足第二声明。
在一些实施例中,数据管理应用可以在每个其他应用以及应用中间歇地查询声明和包含在声明中的特定类型的标识符,以确定应用能够供给和/或提供的补充数据的类型。在这方面,数据管理应用可以维护与各个应用能够供给和/或提供的特定类型的补充数据和/或标识符相关联的所有声明的数据库。这样,数据管理应用可以通过查询数据库来确定是否满足由第一应用生成的声明,而无需查询每个其他应用。
在确定满足至少一个声明时,可以提供指示匹配补充数据可用的一个或多个相应的通知。一个或多个通知可以显示在设备上,并且可以包括可选择的条幅、弹出通知、部分或全屏覆盖,或警告用户匹配补充数据可从另一应用获得的其他此类通知。
例如,如图6所示,指示包括Circle Pizza的预订和到Circle Pizza的路线指引的匹配补充数据可用的条幅通知610和620可以覆盖在应用的用户界面300的底部上。通知可以显示与每个通知610和620相关联的匹配补充数据的概述(即,摘要)。在一些实施例中,可以显示指示提供与各个通知相关联的匹配补充数据的其他应用的名称数据。
可以通过压缩通知并且将它们放置在第一通知之后,以节省空间的布置来呈现通知。压缩的第二通知可以仅包括第二补充数据的摘要,并且可以提供第二其他应用的名称,该第二其他应用提供第二补充数据以节省显示器上的空间。这样的布置可以允许在不超过应用的显示的情况下呈现通知。例如,如图6所示,在显示器底部上,条幅通知620可以被压缩在条幅通知610之后。这样,条幅通知610可以被认为是第一通知。
在接收到对通知之一的选择之后,数据管理应用可以将与所选择的通知相关联的其他应用的用户界面和补充数据集成到应用的用户界面中。例如,当用户选择条幅通知610时,预订应用可以接收提供与预订应用声明相关联的用户界面和补充数据(如表B所示)的请求。在一些实施例中,应用可以从与所选择的通知相关联的其他应用直接请求补充数据和用户界面。
数据管理可以通过将由其他应用提供的补充数据和用户界面设置在应用中,将所选择的其他应用集成到用户界面中。例如,数据管理应用可以接收由与所选择的通知相关联的预订应用提供的补充数据和用户界面,并且将其转发到餐馆推荐应用。如图7所示,餐馆推荐应用的用户界面300可以通过以卡片的形式组成由预订应用提供的用户界面连同在其自己的用户界面内的相应的补充数据720-740,来整合预订应用710。相应的补充数据可以包括预订时间720、请求预订的日期730,以及预订的客人数量740。可以由预订应用710显示另外的(或更少的)相应的补充数据。
附加声明可以由集成到应用的用户界面中的其他应用生成。在这方面,其他应用可以基于在用户界面中显示的相关数据和补充数据来生成用于附加补充数据的声明。例如,预订应用710可以监视由计算设备显示的关联数据520和530以及补充数据720-740,并且基于所显示的数据来生成用于附加补充数据的一个或多个声明。
如前所述,数据管理应用可以监视应用和其他应用以确定是否可以满足用于附加补充数据的任何声明。在这方面,数据管理应用可以周期性地查询每个其他应用以确定它们是否可以提供在对附加补充数据的一个或多个请求中指定的特定类型数据的附加补充数据。
在确定满足用于附加补充数据的至少一个声明时,可以提供指示匹配补充数据可用的一个或多个相应的通知。例如,如图8所示,可以在在餐馆推荐应用的用户界面300上显示第二通知810,其指示与在由预订应用710的补充数据720和730所指示的潜在预订时间期间发生的预定日历约会有关的附加补充数据。
在选择第二通知时,数据管理模块可以通过将附加补充数据和相应的显示元素布置在由应用提供的位置中,将与第二通知相关联的其他应用集成到用户界面中。例如,如图9所示,日历应用910可以集成为餐馆推荐应用的用户界面300内的第二卡片。这样,应用300的用户界面,包括应用的“Circle Pizza”部分500、预订应用710和日历应用910,可以被集成到单个显示器中。
集成到用户界面中的其他应用可以基于在用户界面中显示的数据来更新其相应的显示元素和补充的关联数据。例如,如图10所示,当用户从对应于Circle Pizza的餐馆推荐应用中的第一位置导航到对应于概述页面的第二位置时,由其他应用提供的数据会改变。在这方面,由于关联数据不再包括餐馆选择,因此预订应用可以默认为通用补充数据750,包括日期“明天”和默认客人数量“4人”。另外,日历应用910可以响应于预订应用内的补充数据的变化,并且显示“明天”的日历。在一些实施例中,当其他应用满足的声明的标识符不再匹配时,可以移除其他应用的集成。
在一些实施例中,当来自应用的声明的数据和显示标识符与两个或以上其他应用的数据和显示标识符匹配时,可以满足声明。在这方面,一个或一组其他应用可以向第二个其他应用提供补充数据。然后,第二个其他应用可以将其用户界面集成到应用中,并且显示由一个或一组其他应用提供的补充数据。
上述特征可以允许一起显示多个应用的用户界面,以提供连贯且丰富的用户体验。通过在单个显示器中一起显示多个用户界面,用户能够在单个时间利用多个应用而无需在不同屏幕之间导航。另外,上述特征可以允许计算设备预测用户的需要,从而在请求之前向用户提供信息。
图11的流程图1100是可以由诸如客户端计算设备120或130的一个或多个计算设备执行的上述一些方面的示例性流程图。应理解到,本文所讨论的步骤仅仅是示例;这些步骤可以以不同的顺序发生,可以添加步骤,并且可以省略步骤。在该示例中,在框901处,一个或多个计算设备可以显示对应于第一应用的包括关联数据的用户界面。如框1104所示,一个或多个计算设备可以生成对补充数据的请求,并且如框1106所示,识别可以满足对补充数据的请求的第二应用。如框1108所示,一个或多个计算设备可以生成并且显示指示第二应用可以提供所请求的补充数据的通知。可以由一个或多个计算设备接收对通知的选择,如框1110所示,并且可以将对应于第二应用的第二用户界面集成到用户界面中,其中,第二用户界面显示所请求的补充数据,如框1112所示。
大多数上述替选性示例不是相互排他的,而是可以以各种组合实现以达到独特的优势。由于可以在不背离由权利要求限定的主题的情况下利用上述特征的这些和其他变化和组合,因此,实施例的上述描述应当通过例证而不是限定由权利要求所定义的主题来取得。作为示例,不必以上述精确的顺序执行前述操作。相反,可以以不同的顺序,例如颠倒或同步地处理各种步骤。除非另有说明,否则也可以省略步骤。另外,提供本文所述的示例以及表述为“诸如”、“包括”等的措辞不应当被解释为将权利要求的主题限定到特定的示例;相反,示例旨在仅说明许多可能的实施例中的一个。此外,不同附图中的相同附图标记可以标识相同或相似的元件。
Claims (20)
1.一种用于将应用集成到单个用户界面中的计算机实现的方法,所述方法包括:
利用一个或多个计算设备显示对应于第一应用的、包括关联数据的用户界面;
利用所述一个或多个计算设备生成对补充数据的请求;
利用所述一个或多个计算设备识别能够满足对补充数据的所述请求的第二应用;
由所述一个或多个计算设备生成并且显示指示所述第二应用能够提供所请求的补充数据的通知;
由所述一个或多个计算设备接收所述通知的选择;
由所述一个或多个计算设备将对应于所述第二应用的第二用户界面集成到所述用户界面中,其中,所述第二用户界面显示所请求的补充数据。
2.根据权利要求1所述的方法,进一步包括:
利用所述一个或多个计算设备生成对补充数据的第二请求;
利用所述一个或多个计算设备识别能够满足对补充数据的所述第二请求的第三应用;
由所述一个或多个计算设备生成并且显示指示所述第三应用能够提供第二请求的补充数据的第二通知;以及
在接收到对所述第二通知的选择后,由所述一个或多个计算设备将对应于所述第三应用的第三用户界面集成到所述用户界面中,其中,所述第三用户界面显示所述第二请求的补充数据。
3.根据权利要求1所述的方法,其中,对补充数据的所述请求基于在所述一个或多个计算设备上显示的所述关联数据。
4.根据权利要求2所述的方法,其中,对补充数据的所述第二请求基于在所述第二用户界面中显示的所请求的补充数据。
5.根据权利要求1所述的方法,其中,对补充数据的所述请求包括对通过所述第一应用不可用的特定类型数据的请求。
6.根据权利要求1所述的方法,进一步包括:
当在所述用户界面上显示的所述关联数据改变时,更新所述第二用户界面。
7.根据权利要求1所述的方法,进一步包括:
当在所述用户界面上显示的所述关联数据改变时,移除所述第二用户界面。
8.一种用于将应用集成到单个用户界面中的系统,所述方法包括:
具有一个或多个处理器的一个或多个计算设备;以及
存储指令的存储器,所述指令可由所述一个或多个处理器执行;
其中,所述指令包括:
显示对应于第一应用的、包括关联数据的用户界面;
生成对补充数据的请求;
识别能够满足对补充数据的所述请求的第二应用;
生成并且显示指示所述第二应用能够提供所请求的补充数据的通知;
接收所述通知的选择;
将对应于所述第二应用的第二用户界面集成到所述用户界面中,其中,所述第二用户界面显示所请求的补充数据。
9.根据权利要求8所述的系统,其中,所述指令进一步包括:
生成对补充数据的第二请求;
识别能够满足对补充数据的所述第二请求的第三应用;
生成并且显示指示所述第三应用能够提供第二请求的补充数据的第二通知;以及
在接收到对所述第二通知的选择后,由所述一个或多个计算设备将对应于所述第三应用的第三用户界面集成到所述用户界面中,其中,所述第三用户界面显示所述第二请求的补充数据。
10.根据权利要求8所述的系统,其中,对补充数据的所述请求基于在所述一个或多个计算设备上显示的所述关联数据。
11.根据权利要求9所述的系统,其中,对补充数据的所述第二请求基于在所述第二用户界面中显示的所请求的补充数据。
12.根据权利要求8所述的系统,其中,对补充数据的所述请求包括对通过所述第一应用不可用的特定类型数据的请求。
13.根据权利要求8所述的系统,其中,所述指令进一步包括:
当在所述用户界面上显示的所述关联数据改变时,更新所述第二用户界面。
14.根据权利要求8所述的系统,其中,所述指令进一步包括:
当在所述用户界面上显示的所述关联数据改变时,移除所述第二用户界面。
15.一种存储指令的非瞬时计算机可读介质,所述指令当由一个或多个处理器执行时,使所述一个或多个处理器:
显示对应于第一应用的、包括关联数据的用户界面;
生成对补充数据的请求;
识别能够满足对补充数据的所述请求的第二应用;
生成并且显示指示所述第二应用能够提供所请求的补充数据的通知;
接收所述通知的选择;
将对应于所述第二应用的第二用户界面集成到所述用户界面中,其中,所述第二用户界面显示所请求的补充数据。
16.根据权利要求15所述的非瞬时计算机可读介质,其中,所述指令进一步使所述一个或多个处理器:
生成对补充数据的第二请求;
识别能够满足对补充数据的所述第二请求的第三应用;
生成并且显示指示所述第三应用能够提供第二请求的补充数据的第二通知;以及
在接收到对所述第二通知的选择后,将对应于所述第三应用的第三用户界面集成到所述用户界面中,其中,所述第三用户界面显示所述第二请求的补充数据。
17.根据权利要求15所述的非瞬时计算机可读介质,其中,对补充数据的所述请求基于所显示的关联数据。
18.根据权利要求15所述的非瞬时计算机可读介质,其中,对补充数据的所述请求包括对通过所述第一应用不可用的特定类型数据的请求。
19.根据权利要求15所述的非瞬时计算机可读介质,其中,所述指令进一步使所述一个或多个处理器:
当在所述用户界面上显示的所述关联数据改变时,更新所述第二用户界面。
20.根据权利要求15所述的非瞬时计算机可读介质,其中,所述指令进一步使所述一个或多个处理器:
当在所述用户界面上显示的所述关联数据改变时,移除所述第二用户界面。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/145,009 US20170322704A1 (en) | 2016-05-03 | 2016-05-03 | Composition of a user interface through data binding |
US15/145,009 | 2016-05-03 | ||
PCT/US2016/069125 WO2017192178A1 (en) | 2016-05-03 | 2016-12-29 | Composition of a user interface through data binding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108701041A true CN108701041A (zh) | 2018-10-23 |
Family
ID=57838531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680081800.8A Pending CN108701041A (zh) | 2016-05-03 | 2016-12-29 | 通过数据绑定构建用户界面 |
Country Status (4)
Country | Link |
---|---|
US (2) | US20170322704A1 (zh) |
EP (1) | EP3452899A1 (zh) |
CN (1) | CN108701041A (zh) |
WO (1) | WO2017192178A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170322704A1 (en) * | 2016-05-03 | 2017-11-09 | Google Inc. | Composition of a user interface through data binding |
CN110221885B (zh) * | 2019-04-23 | 2022-04-01 | 维沃软件技术有限公司 | 一种界面显示方法及终端设备 |
US20210056935A1 (en) | 2019-08-21 | 2021-02-25 | Aveva Software, Llc | Responsive layout system and server |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103180849A (zh) * | 2010-10-21 | 2013-06-26 | 惠普发展公司,有限责任合伙企业 | 使用移动计算装置搜索多数据源 |
CN103620583A (zh) * | 2011-06-16 | 2014-03-05 | 微软公司 | 根据浏览活动显现应用 |
CN103744683A (zh) * | 2014-01-24 | 2014-04-23 | 中科创达软件股份有限公司 | 一种信息融合方法和装置 |
CN103823677A (zh) * | 2009-10-12 | 2014-05-28 | 微软公司 | 将用户数据录入路由到应用程序 |
US20140250147A1 (en) * | 2013-03-01 | 2014-09-04 | Quixey, Inc. | Generating Search Results Containing State Links to Applications |
CN104216972A (zh) * | 2014-08-28 | 2014-12-17 | 小米科技有限责任公司 | 一种发送打车业务请求的方法和装置 |
US20150234930A1 (en) * | 2014-02-19 | 2015-08-20 | Google Inc. | Methods and systems for providing functional extensions with a landing page of a creative |
CN104969163A (zh) * | 2014-06-20 | 2015-10-07 | 华为技术有限公司 | 应用界面的展示方法、装置及电子设备 |
US20150371263A1 (en) * | 2014-06-24 | 2015-12-24 | Quixey, Inc. | Generating Advertisements For Search Results That Reference Software Applications |
US20160085514A1 (en) * | 2014-09-23 | 2016-03-24 | Quixey, Inc. | Development System and Method for Providing External Functionality |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1947858B1 (en) * | 2000-10-11 | 2014-07-02 | United Video Properties, Inc. | Systems and methods for supplementing on-demand media |
US7293275B1 (en) * | 2002-02-08 | 2007-11-06 | Microsoft Corporation | Enhanced video content information associated with video programs |
US7853880B2 (en) * | 2004-07-28 | 2010-12-14 | Hewlett-Packard Development Company, L.P. | Displaying network properties in a graphical user interface |
US20110271184A1 (en) * | 2010-04-28 | 2011-11-03 | Microsoft Corporation | Client application and web page integration |
US9317621B2 (en) * | 2011-01-06 | 2016-04-19 | Microsoft Technology Licensing, Llc | Providing deep links in association with toolbars |
CA2854142A1 (en) * | 2011-11-01 | 2013-05-10 | Google Inc. | Launching applications from webpages |
US10068295B1 (en) * | 2012-05-30 | 2018-09-04 | Vpay, Inc. | Merchant portal system with explanation of benefits |
US9852223B2 (en) * | 2012-12-20 | 2017-12-26 | Ebay Inc. | Enhancing search results with social networking data |
US9608870B1 (en) * | 2014-02-28 | 2017-03-28 | Google Inc. | Deep link verification for native applications |
US10552013B2 (en) * | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US20170046438A1 (en) * | 2015-08-13 | 2017-02-16 | Quixey, Inc. | Cloud-Enabled Caching Architecture for On-Demand Native Application Crawling |
US10691473B2 (en) * | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US20170185656A1 (en) * | 2015-12-29 | 2017-06-29 | Quixey, Inc. | Combining Search Results That Specify Software Application Functions |
US9984132B2 (en) * | 2015-12-31 | 2018-05-29 | Samsung Electronics Co., Ltd. | Combining search results to generate customized software application functions |
US20170322704A1 (en) * | 2016-05-03 | 2017-11-09 | Google Inc. | Composition of a user interface through data binding |
-
2016
- 2016-05-03 US US15/145,009 patent/US20170322704A1/en not_active Abandoned
- 2016-12-29 EP EP16828879.3A patent/EP3452899A1/en not_active Withdrawn
- 2016-12-29 WO PCT/US2016/069125 patent/WO2017192178A1/en unknown
- 2016-12-29 CN CN201680081800.8A patent/CN108701041A/zh active Pending
-
2021
- 2021-06-18 US US17/351,971 patent/US12039153B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823677A (zh) * | 2009-10-12 | 2014-05-28 | 微软公司 | 将用户数据录入路由到应用程序 |
CN103180849A (zh) * | 2010-10-21 | 2013-06-26 | 惠普发展公司,有限责任合伙企业 | 使用移动计算装置搜索多数据源 |
CN103620583A (zh) * | 2011-06-16 | 2014-03-05 | 微软公司 | 根据浏览活动显现应用 |
US20140250147A1 (en) * | 2013-03-01 | 2014-09-04 | Quixey, Inc. | Generating Search Results Containing State Links to Applications |
CN103744683A (zh) * | 2014-01-24 | 2014-04-23 | 中科创达软件股份有限公司 | 一种信息融合方法和装置 |
US20150234930A1 (en) * | 2014-02-19 | 2015-08-20 | Google Inc. | Methods and systems for providing functional extensions with a landing page of a creative |
CN104969163A (zh) * | 2014-06-20 | 2015-10-07 | 华为技术有限公司 | 应用界面的展示方法、装置及电子设备 |
US20150371263A1 (en) * | 2014-06-24 | 2015-12-24 | Quixey, Inc. | Generating Advertisements For Search Results That Reference Software Applications |
CN104216972A (zh) * | 2014-08-28 | 2014-12-17 | 小米科技有限责任公司 | 一种发送打车业务请求的方法和装置 |
US20160085514A1 (en) * | 2014-09-23 | 2016-03-24 | Quixey, Inc. | Development System and Method for Providing External Functionality |
Also Published As
Publication number | Publication date |
---|---|
EP3452899A1 (en) | 2019-03-13 |
US20170322704A1 (en) | 2017-11-09 |
US12039153B2 (en) | 2024-07-16 |
US20210311615A1 (en) | 2021-10-07 |
WO2017192178A1 (en) | 2017-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109902224A (zh) | 基于用户行为分析的房源推荐方法、装置、设备和介质 | |
US20150134603A1 (en) | Systems, methods, and computer program products for contact information | |
US10540386B2 (en) | Method for processing and displaying real-time social data on map | |
EP2400408A1 (en) | Service personalizing system and method based on ontology | |
CN103812880B (zh) | 一种网络数据的推送方法、设备及系统 | |
CN102098211A (zh) | 客户端和服务器动态协助的业务聚合方法、服务器和客户端 | |
US12039153B2 (en) | Composition of a user interface through data binding | |
US20200050906A1 (en) | Dynamic contextual data capture | |
CN110866200A (zh) | 一种业务界面的渲染方法和装置 | |
CN107408065A (zh) | 监视应用加载 | |
CN105808642B (zh) | 推荐方法及装置 | |
CN113568699A (zh) | 一种内容显示方法、装置、设备及存储介质 | |
US10929371B2 (en) | System and method for supporting contact reminding | |
CN105635215A (zh) | 联系人信息的同步方法、装置及云服务器 | |
CN108509236A (zh) | 主题更换方法及装置、人脸识别系统主题更换方法及装置 | |
CN115146146A (zh) | 一种信息显示方法、装置、终端设备及存储介质 | |
JP5476571B2 (ja) | コメント評価装置、コメント評価方法及びプログラム | |
CN104166665A (zh) | 信息处理装置及其控制方法 | |
Piarsa et al. | Web-based gis by using spatial decision support system (sdss) concept for searching commercial marketplace-using google map api | |
KR20230120709A (ko) | 사용자 맞춤형 정책 추천 방법 및 시스템 | |
KR20170047986A (ko) | NFC Tag 식별정보를 통한 다중서비스 제공 시스템 및 이용 방법. | |
KR101740528B1 (ko) | Poi 주소록 구축을 통한 쿠폰 서비스 시스템 및 방법 | |
US9767207B1 (en) | Adaptive user interface for directories | |
EP3002665B1 (en) | Communication device crawler | |
KR102315353B1 (ko) | 지리 식별자 체계 기반 콘텐츠 관리 방법 및 서버 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |