CN108139852B - 在非浏览器应用中集成内容 - Google Patents
在非浏览器应用中集成内容 Download PDFInfo
- Publication number
- CN108139852B CN108139852B CN201680056854.9A CN201680056854A CN108139852B CN 108139852 B CN108139852 B CN 108139852B CN 201680056854 A CN201680056854 A CN 201680056854A CN 108139852 B CN108139852 B CN 108139852B
- Authority
- CN
- China
- Prior art keywords
- browser application
- browser
- application
- user interface
- customized
- 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
Links
Images
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/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
- G06F3/0483—Interaction with page-structured environments, e.g. book metaphor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
-
- 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
-
- 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
- G06F3/04817—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 using icons
-
- 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
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- 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
-
- 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
- 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/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/134—Hyperlinking
-
- 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
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- 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/46—Multiprogramming arrangements
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在总体方面中,一种计算机实现的方法可包括:在计算设备上执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;以及接收所述链接已被选择的指示。响应于所述链接已被选择的所述指示,所述方法可包括:将浏览器应用的标签页分配给所述非浏览器应用;在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
Description
相关申请的交叉引用
本申请要求于2015年10月7日提交的标题为“INTEGRATION OF CONTENT IN NON-BROWSER APPLICATIONS”的美国非临时专利申请No.14/877,262的优先权并且是其继续部分,其全部公开内容通过引用并入在本文中。
技术领域
本公开涉及实现web内容的呈现的技术方面。更具体地,本公开涉及用于在非浏览器用户应用中集成web内容的显示的方法。
背景技术
应用开发者(例如,诸如移动计算空间中的应用开发者)具有用于显示与其应用对应的基于web的(例如,基于互联网的)内容的有限选项,所述基于web的内容诸如与包括在由所关联的应用显示的内容中的链接(例如,用于统一资源定位符(URL)的超链接)相关联的web内容。用于显示web内容的一种方法是让应用开发者在其应用界面(例如,图形用户界面)内实现它们自己的类似浏览器的功能性,诸如通过使用提供基本浏览器功能性的应用编程接口(API)。然而,此类方法可具有缺点,例如缺乏浏览安全性并且也无法跨越多个应用为用户提供统一的web浏览体验。
用于显示与应用相关联的web内容的另一方法是让应用开发者使应用意图输出给浏览器应用(例如,全功能浏览器应用)以显示(例如,示出、渲染等)所关联的web内容。因此,“意图输出(intent out)”意味着应用触发启动全功能浏览器应用(如果它尚未被启动的话),并且通过全功能浏览器应用来显示所关联的web内容。此外,全功能浏览器应用可以是独立于非浏览器应用的独立应用。虽然此类方法可以提供浏览安全性,但是它们需要从应用用户界面(UI)到浏览器UI的显著场境切换。这种场境切换可花费大量时间(例如,以启动浏览器应用,加载web内容并且渲染web内容),这可不利地影响用户体验。此外,用户可以从浏览器应用丢弃(例如,不返回)到应用(例如,由于浏览器应用中的延迟和/或继续),这对于应用开发者保持用户参与其应用来说是不希望的。因为非浏览器应用和浏览器应用作为具有单独的UI的单独的全功能应用而执行,所以与在非浏览器应用的界面内实现类似浏览器的功能性的以上方法中相比,可能需要更多的系统资源。
发明内容
根据一个总体方面,一种计算机实现的方法可包括:在计算设备上执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;以及接收所述链接已被选择的指示。所述计算机实现的方法也可包括:响应于所述链接已被选择的所述指示,将浏览器应用的标签页(tab)分配给所述非浏览器应用;在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
实施方式可包括以下特征中的一个或多个。例如,所述计算设备可以是移动计算设备。所述非浏览器应用和所分配的浏览器标签页可作为单独的进程由所述计算设备执行。所分配的浏览器标签页可包括由所述浏览器应用定义的至少一个菜单项;由所述非浏览器应用定义的至少一个菜单项;由所述浏览器应用定义的至少一个按钮;和/或由所述非浏览器应用定义的至少一个按钮。所述链接已被选择的所述指示可包括用于所分配的浏览器标签页的至少一个定制参数。
响应于所述显示到所述web内容的所述链接,所述方法可包括由所述非浏览器应用向所述浏览器应用发送前意图请求(pre-intent request),所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL)。响应于所述前意图请求,所述方法可包括由所述浏览器应用执行与显示所述web内容对应的至少一个操作。
所述前意图请求可包括用于所分配的浏览器标签页的至少一个定制参数。所述至少一个定制参数可包括下列中的一个或多个:菜单项和与所述菜单项相关联的对应动作;与所述非浏览器应用对应的图标;按钮和与所述按钮相关联的对应动作;与所述用户界面对应的颜色;以及要用于在所述用户界面内显示所分配的浏览器标签页的动画。
与显示所述web内容对应的所述至少一个操作可包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所下载的web内容。
在另一总体方面中,一种计算机实现的方法可包括:在计算设备上执行非浏览器应用;以及由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接。所述方法可进一步包括,响应于所述显示到所述web内容的所述链接,向浏览器应用发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL)。所述方法可再进一步包括,响应于所述前意图请求,由所述浏览器应用执行与显示所述web内容对应的至少一个操作并且接收指示对所述链接的选择的信号。响应于接收到所述信号,所述方法可包括:将所述浏览器应用的标签页分配给所述非浏览器应用,所述前意图请求进一步包括用于所分配的浏览器标签页的至少一个定制参数;根据所述至少一个定制参数在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
实施方式可包括以下特征中的一个或多个。例如,所述至少一个定制参数可包括下列中的一个或多个:菜单项和与所述菜单项相关联的对应动作;图标;按钮和与所述按钮相关联的对应动作;与所述用户界面对应的颜色;以及要用于在所述用户界面内显示所分配的浏览器标签页的动画。
与显示所述web内容对应的所述至少一个操作包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所述web内容。
所述非浏览器应用和所分配的浏览器标签页可作为单独的进程由所述计算设备执行。所述方法可包括在所分配的浏览器标签页中显示所述URL。所述方法可包括显示与在所分配的浏览器标签页中显示的所述web内容对应的安全端口层(SSL)状态。
所分配的浏览器标签页可能够访问所述浏览器应用的至少一个资源。所述浏览器应用的所述至少一个资源可包括下列中的一个或多个:电子支付服务;语言翻译服务;浏览历史;表单自动填充数据;以及密码保险库。
所述响应于所述前意图请求而执行与显示所述web内容对应的所述至少一个操作可包括在所述计算设备的后台浏览器进程中执行与显示所述web内容对应的所述至少一个操作,其中所述非浏览器应用作为所述计算设备的前台进程被执行。
在另一总体方面中,一种非暂时性计算机可读介质可具有存储在其上的指令。所述指令当由计算设备的至少一个处理器执行时,可使所述计算设备:执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;以及接收所述链接已被选择的指示。响应于所述链接已被选择的所述指示,所述指令当由所述至少一个处理器执行时,可使所述计算设备将浏览器应用的标签页分配给非浏览器应用。所述指令当由计算设备的至少一个处理器执行时,可进一步使所述计算设备在所述非浏览器应用的用户界面内显示所分配的浏览器标签页并且通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
实施方式可包括以下特征中的一个或多个。例如,所述指令当由所述至少一个处理器执行时,可使所述计算设备响应于所述显示到所述web内容的所述链接执行以下步骤:由所述非浏览器应用向所述浏览器发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL);以及响应于所述前意图请求,由所述浏览器应用在后台进程中执行与显示所述web内容对应的至少一个操作。
在另一总体方面中,一种计算机实现的方法可包括从非浏览器应用接收对第一类型的内容的请求。所述计算机实现的方法可进一步包括向所述非浏览器应用提供用于浏览器应用的用户界面元素。所述非浏览器应用可显示专门为所述非浏览器应用而创建的不同的第二类型的内容。所述计算机实现的方法也可包括针对所述非浏览器应用的用户界面修改所述用户界面元素以针对所述非浏览器应用显示所述第一类型的所述内容。
实施方式可包括以下特征中的一个或多个。例如,所述第一类型的所述内容可包括web内容。所述第一类型的所述内容可包括并非专门为了由所述非浏览器应用显示而创建的内容。所述用户界面元素可包括浏览器标签页。修改所述用户界面元素可包括对所述用户界面元素应用至少一个定制参数。
在下面的附图和描述中阐述了一个或多个实施方式的细节。其它特征将根据说明书和附图并根据权利要求显而易见。
附图说明
图1是根据实施方式的用于在非浏览器应用中集成web内容的系统的图。
图2是图示根据实施方式的图1的系统的示例客户端和服务器的框图。
图3A、图3B和图3C是根据实施方式图示计算设备上的非浏览器应用中的web内容的集成的图。
图4是图示根据实施方式的用于在非浏览器应用中集成web内容的方法的流程图。
图5是图示根据实施方式的用于在非浏览器应用中集成web内容的另一方法的流程图。
图6是图示根据实施方式的用于在非浏览器应用中集成web内容的另一方法的流程图。
图7是图示可用于实现这里所描述的技术的计算机设备和移动计算机设备的示例的图。
在各个附图中相同的附图标记指示相同的元素。
具体实施方式
在以下描述中,阐述了具体细节以提供对用于在非浏览器应用中集成web内容的系统和对应方法的示例实施方式的理解。然而,将显而易见的是,可在没有这些具体细节中的一些的情况下实践所公开的实施方式。在其它实例中,尚未详细地示出众所周知的结构和技术以免使本公开混淆。
在本文中所描述的方法中,在浏览器应用(例如,浏览器应用)与非浏览器应用之间提供接口(例如,API)。所提供的接口可用于方便非浏览器应用请求分配浏览器标签页。出于本公开的目的,“分配浏览器标签页”意在诸如使用本文中所描述的技术来在非浏览器应用的用户界面(UI)内获得、渲染和/或显示内容。在一些实施方式中,可在计算设备上执行非浏览器应用,其中非浏览器应用的执行可包括在应用的UI中显示应用内容(例如,并入在应用代码中的非web内容或专门为非浏览器应用而创建的其它内容),其中该应用内容可包括到其它内容(例如,web内容)的链接(例如,超链接)。在实施方式中,应用内容可包括到相应的web内容的多个链接。在所公开的实施方式中,非浏览器应用可采取任何数目的形式。例如,非浏览器应用可以是电子邮件应用、社交媒体应用、照片分享应用、新闻服务应用、消费者服务应用等。
非浏览器应用可经由界面进一步与浏览器应用交互,以必要时请求浏览器应用被初始化,并且请求浏览器应用在初始化之后预加载与包括在所显示的应用内容中的一个或多个链接相关联的web内容。被预加载的web内容可由非浏览器应用在对浏览器应用做出的请求中识别,或者浏览器应用它本身可基于其它信息(诸如用户浏览历史(例如,以识别要由用户选择的应用内容的最可能的链接))来识别要预加载的web内容。
图1是根据实施方式的用于在非浏览器应用中集成web内容的显示的系统100的图。系统100包括客户端110和服务器130。在系统100中,客户端110和服务器130通过网络(例如,数据网络,诸如互联网)150连接。
在系统100中,客户端110中的每一个可被配置成运行浏览器应用以用于访问、下载、渲染和/或显示web内容(web内容),诸如网站、可执行web内容等。在本文中所描述的方法中,浏览器应用可以实现用于渲染和显示web内容的独立浏览器标签页,其中每个浏览器标签页可用于显示相应的(例如,不同的)web内容,并且多个浏览器标签页可与单个浏览器应用进程相关联(例如,由单个浏览器应用进程实现)。
在某些实施方式中,客户端110可被配置成从服务器130中的一个下载并安装这种浏览器应用。浏览器应用可被配置成在作为移动计算设备和/或非移动设备计算设备的客户端130上运行。例如,客户端110可以是台式计算机、膝上型计算机、移动计算设备(例如,智能电话、平板计算机等)、机顶盒(例如,用于与电视(TV)一起使用))、智能TV、视频游戏控制台,或具有适当的处理器、存储器和数据网络通信能力的任何其它设备。
在本文中所描述的实施方式中,浏览器应用的标签页(浏览器标签页)可被分配给非浏览器应用,其中所分配的浏览器标签页可用于在非浏览器应用的用户界面内显示web内容。在此类实施方式中,所分配的浏览器标签页可被称为被嵌入非浏览器应用中、在非浏览器应用之上运行、被集成在非浏览器应用的用户界面(UI)中等。在一些实施方式中,分配的浏览器标签页可以用于在非浏览器应用的用户界面内显示web内容,其中浏览器标签页仍然在浏览器应用的控制下。在其它实施方式中,分配的浏览器标签页可用于在非浏览器应用的用户界面内显示web内容,其中所分配的浏览器标签页在非浏览器应用的控制下。在仍然其它的实施方式中,分配的浏览器标签页可以用于在非浏览器应用的用户界面内显示web内容,其中所分配的浏览器标签页协同地在非浏览器应用和浏览器应用的控制下。
在其它实施方式中,浏览器应用可用于预加载(例如,访问、下载和/或渲染)与包括在非浏览器应用(由其显示)的内容中的链接(超链接)对应的web内容。与响应于在由非浏览器应用显示的应用(非基于web的)内容中选择关联链接而加载并渲染该web内容相比,此类方法可以允许在几乎没有滞后时间情况下通过在非浏览器应用的UI内(在其之上、嵌入在其中等)的分配的浏览器标签页来显示该web内容。在某些实例中,包括本文中所公开的特征的浏览器应用的不同版本和/或配置可用于从服务器130下载并随后安装在客户端110上。这种下载和/或安装的详情可能至少取决于客户端110是移动计算设备还是非移动计算设备。浏览器应用一旦被安装在客户端110上,就可被配置成从被配置成托管web内容的多个服务器130中的任何一个或多个加载web内容(例如,web页面)。服务器130可以是具有适当的处理器、存储器和通信能力以用于托管被配置成安装web浏览器的数据文件和/或用于托管web内容的任何设备。
网络150可包括例如个人区域网(PAN)、局域网(LAN)、校园区域网(CAN)、城域网(MAN)、广域网(WAN)、宽带网络(BBN)、无线LAN(WLAN)、互联网等中的任何一个或多个。另外,网络150可包括但不限于以下网络拓扑中的任何一个或多个,包括总线网络、星形网络、环形网络、网状网络、星形总线网络、树形或层次网络等。
在实施方式中,浏览器应用当在客户端110上执行时,可被配置成接收来自非浏览器应用的在浏览器应用中加载web内容的请求(信号、指示等),其中浏览器应用(和任何关联的浏览器标签页)在后台中(例如,作为后台进程)运行,然而非浏览器应用在前台中(例如,作为前台进程)运行(执行等)。在一些实施方式中,如果浏览器应用尚未在后台中运行,则例如响应于来自非浏览器应用的加载web内容的请求,可在在后台中加载web内容之前在后台中使浏览器应用初始化(或“预热”)。要预加载的web内容可由非浏览器应用(例如,通过非浏览器应用中的链接)来识别或者由浏览器应用响应于其它数据(诸如浏览历史、最喜欢的web站点的列表、浏览cookie容器等)来识别。
图2是图示根据实施方式的图1的系统的示例客户端110和服务器130的框图。像在图1中一样,图2中的客户端110和服务器130通过网络150(例如,经由相应的网络适配器218和238)连接。网络适配器218和238可被配置成与网络150对接(interface)并且发送和接收信息,诸如给网络150上的其它设备的数据、请求、响应和命令。网络适配器218和238可以是例如蜂窝无线电、Wi-Fi适配器、以太网网络接口卡等。
如图2中所示,客户端110包括处理器212、网络适配器218和存储器220。在图2的示例中,客户端110的存储器220可包括浏览器应用222、非浏览器应用226和web内容224b的客户端副本。例如,web内容副本224b可由浏览器应用222(从服务器130中的web内容224a)获得,被渲染在web浏览器222中被分配给非浏览器应用226的标签页中并且显示(例如,使用客户端110的输出设备214(例如,显示器))在浏览器应用222的被包括在非浏览器应用226的UI中(显示在其中、分配给其等)的浏览器标签页中。如图1中所示,客户端110也可包括输入设备216,诸如键盘、触摸屏、触摸板或鼠标,以接收用户输入,诸如链接选择、文本输入等。
客户端110的处理器212可被配置成执行指令,诸如物理上编码到处理器212中的指令、从存储器240中的软件(例如,浏览器应用222和/或非浏览器应用)接收到的指令或两者的组合,以在浏览器应用222中预加载内容(例如,用于显示在非浏览器应用226的UI中的分配的浏览器标签页中)。例如,客户端110的处理器212可执行浏览器应用222的指令来接收(例如,经由浏览器应用222的接口)来自非浏览器应用226的在浏览器应用222的浏览器标签页(分配给非浏览器应用226)中加载或者预加载web内容副本224b的请求。
如图2中所图示,web内容副本224b可以是由浏览器应用222通过网络150从服务器130下载并且作为web内容副本224b存储在客户端110的存储器220中的web内容224a的副本。在一些实例中,要由浏览器应用222预加载的内容副本224b可以已经驻留在客户端110的存储器220中。例如,web内容副本224b可以是由浏览器应用222先前获得的并存储在客户端110的存储器220中的web内容224a的缓存副本。
从非浏览器应用226到浏览器应用222的请求可以响应于选择被包括在被显示在非浏览器应用的UI中的应用内容中(与之相关联)的链接。这种请求可被称为“意图(intent)”请求、“直接意图(direct intent)”请求等。在一个实例中,意图请求是“直接意图”请求,也被称为“直接”请求,并且在选择包括被显示在非浏览器应用的UI中的应用内容中的链接时被触发。在其它实例中,从非浏览器应用226到浏览器应用222的请求可以是预加载web内容224a(作为web内容副本224b)的在预期与web内容224a相关联的链接将被(例如由用户)选择时在浏览器应用222(例如,浏览器应用的标签页)中预加载web内容224a的“初步(preliminary)”请求,也被称为“前意图(pre-intent)”请求。这种初步请求可被称为“前意图”请求、“未决意图(pending-intent)”请求等。换句话说,可在选择包括在被显示在非浏览器应用226的UI中的应用内容中的对应链接之前发送这种初步请求。
请求(例如,直接的或初步的)可由浏览器应用222经由浏览器应用222的API从非浏览器应用226接收。响应于接收到请求,浏览器应用222可例如在分配给非浏览器应用226的浏览器标签页中加载或者预加载web内容224a(例如,作为web内容副本224b)。如本文中所描述的,非浏览器应用226在做出加载或者预加载web内容的请求时,可作为前台进程运行。所请求的web内容224a然后可由浏览器应用222(例如,在浏览器标签页中)在后台中加载和/或渲染。
如本文中所描述的,当从非浏览器应用226接收到请求时,浏览器应用222可以正在运行,或者可被初始化为后台进程,即,对用户不可见的应用进程。请求(例如,直接的或初步的)当被提供给浏览器应用222的API时,可以指示web内容224a将由浏览器应用222通过网络150从服务器130下载。一旦被下载,web内容224a然后就可作为web内容副本224b被存储在客户端110的存储器220中以供由浏览器应用222加载或者预加载(或者可被从网络适配器238直接地加载或者预加载到浏览器应用222中)。当浏览器应用222不在后台中(例如,作为后台进程)运行或者另外不处于要下载内容224a的状态下时,浏览器应用222可响应于来自非浏览器应用226的这种请求由浏览器应用222接收到时在后台中被初始化(重新初始化、启动、预热等)。一旦被初始化,浏览器应用222就可例如在分配给非浏览器应用226(与之相关联)的浏览器标签页中加载或者预加载web内容224a或web内容副本224b。
客户端110的处理器212也可被配置成响应于来自非浏览器应用226的请求(例如,直接的或初步的)和/或响应于(由用户)选择被包括在由非浏览器应用222显示的应用内容中(与之相关联)的链接(到web内容224a)而在浏览器应用222的浏览器标签页中加载或者预加载web内容224a或web内容副本224b。浏览器应用222可被配置成然后使用包括在非浏览器应用226的UI中(例如,嵌入在其中、在其之上运行等)的浏览器应用的分配的浏览器标签页来渲染和显示web内容224a(或web内容副本224b)。
在某些实施方式中,浏览器应用222可被配置成接收来自非浏览器应用226的指示不需要(预加载的)web内容224a或web内容副本224b(例如,非浏览器应用226的应用内容中的不同链接被选择)的另一(第二)请求。响应于该第二请求,浏览器应用222可被配置成从浏览器应用222中(例如,从浏览器应用222的浏览器标签页中)卸载(丢弃)已预加载的web内容。例如,如果非浏览器应用226最初请求浏览器应用在后台中预加载web内容224a(或web内容副本224b),但是稍后(例如,由非浏览器应用226)确定了不需要已预加载的web内容(例如,由于选择了与预测链接不同的链接),则非浏览器应用226可通知浏览器应用222不需要已预加载的web内容,并且浏览器应用222可从客户端110的存储器220中卸载或者以其它方式丢弃已预加载的web内容(例如,作为web内容副本224b存储的)。
非浏览器应用226可直接地识别要由浏览器应用222预加载的web内容224a,或者可向浏览器应用222提供信息作为其请求的一部分,使得浏览器应用222可评估来自非浏览器应用226的信息以确定要预加载的web内容224a。例如,要在浏览器应用222(例如,浏览器应用222的浏览器标签页)中预加载的web内容224a可以是web页面或其它适当的web内容。在此类实例中,当非浏览器应用226被配置成直接地识别要由浏览器应用222加载或者预加载的web内容224a时,来自非浏览器应用226的要预加载内容的请求可包括要由浏览器应用222(例如,在后台中)加载或者预加载的web内容224a的地址(例如,URL)。
在非浏览器应用226被配置成作为请求的一部分向浏览器应用222提供信息使得浏览器应用222可评估来自非浏览器应用226的信息以确定要预加载的web内容224a的其它实例中,来自非浏览器应用226的要预加载内容的请求可包括用户的浏览历史和/或要用于确定(例如,预测)要预加载什么web内容224a的其它信息。浏览器应用222然后可基于浏览历史和/或其它信息来识别要在浏览器应用222(例如,浏览器标签页)中预加载的内容224a。
在非浏览器应用226被配置成作为请求的一部分向浏览器应用222提供信息使得浏览器应用222可评估来自非浏览器应用226的信息以确定要预加载的web内容224a的其它实例中,浏览器应用222可以基于用户将在非浏览器应用226中选择针对要预加载的内容的链接的概率值来识别要在浏览器应用222中预加载的内容。例如,如果非浏览器应用226向浏览器应用222指示非浏览器应用226的用户当前正在查看关于本地餐馆的应用内容,则浏览器应用222可(例如,基于与已预加载的链接对应的餐馆满足它们最可能由用户在非浏览器应用226中选择的阈值概率的确定)预加载与被包括在正被显示在非浏览器应用226的UI中的应用内容中的针对一个或多个餐馆的链接对应的web内容。因此,要在浏览器应用222中预加载的内容不限于内容的一个项,而是可以是内容的多个项,诸如多个web页面。
在非浏览器应用226被配置成作为请求的一部分向浏览器应用222提供信息使得浏览器应用222可评估来自非浏览器应用226的信息以确定要预加载的web内容224a的实施方式中,来自非浏览器应用226的要预加载内容的请求可包括由用户在非浏览器应用226中(例如,使用输入设备216)录入的输入(例如,文本或其它输入)。浏览器应用222然后可基于由用户在非浏览器应用中当前录入的输入来识别要在浏览器应用222(的浏览器标签页)中预加载的内容224a。
例如,继续前一个示例,如果非浏览器应用226向浏览器应用222指示非浏览器应用226的用户已经在非浏览器应用226的搜索输入字段中录入了“Thai(泰国)”,则浏览器应用222可以预加载与针对泰国餐馆(例如,诸如与包括在由非浏览器应用226显示的应用内容中的链接对应的泰国餐馆)的一个或多个web页面对应的web内容。
图3A、图3B和图3C是图示根据实施方式的在移动计算设备(移动设备)300上运行(执行等)的非浏览器应用中的web内容的集成的图。图3A、图3B和图3C中所示的实施方式是作为示例且为了图示而给出的。在其它实施方式中,可使用其它配置来在非浏览器应用中集成web内容的显示(渲染(rendering))。在对图3A、图3B和图3C的讨论中,示意性地(例如,以框图形式)示出了一些元素,同时图式地示出了其它元素。给定实施方式的特定布置和细节将至少取决于正在显示(渲染)的特定非浏览器应用、浏览器应用和web内容。另外,出于图示的目的,将酌情进一步参考图1和图2描述图3A、图3B和图3C。例如,可以使用移动设备300来实现诸如图1和图2中所图示的客户端设备110。
图3A图示被显示在移动设备300的输出设备(例如,显示面板)(诸如客户端110的输出设备214)上的非浏览器应用(诸如非浏览器应用226)的用户界面(图形用户界面)310。在此示例中,用户界面310包括图标(icon)312、标题(title)314、菜单图标316和应用内容(application content)320。移动设备300也包括可用于控制移动设备300的各种操作和功能的导航按钮面板330,诸如智能电话上的导航按钮。也可使用与所关联的非浏览器应用226对应的颜色、字体和/或其它美学元素来显示用户界面310。在此示例实施方式中,此类颜色、字体和/或其它美学元素可由非浏览器应用226在意图请求(直接的或初步的)中指示,并且当在分配给非浏览器应用226的浏览器标签页中显示集成的web内容时使用。与执行到浏览器应用222的场境切换的当前方法对照,这种方法可在在非浏览器应用中查看web内容时给用户提供“无缝”视觉体验。
在图3A的用户界面310中,图标312可以是与非浏览器应用226对应的图标。同样地,标题314可用于显示指示这种执行的特定非浏览器应用226的名称(例如,风格化徽标),同时其用户界面310被显示在移动设备300上。菜单图标316可用于打开用于非浏览器应用226的菜单(例如,应用操作菜单)。与菜单图标316相关联的菜单可以包括除可由移动设备300的用户选择的菜单项外的各种菜单项以使非浏览器应用226执行非浏览器应用226的关联的动作(操作,任务等)。
应用内容320可以是由非浏览器应用226显示的图形内容或其它视觉内容(例如,视频内容、文本内容等)。在某些实施方式中,可与由移动设备300的音频系统(未示出)播放的音频内容相结合地显示应用内容320。如图3A中所图示,应用内容320可包括与相应的web内容相关联的链接(link)322、324、326和328(例如,包括相应的URL的超链接)。虽然在图3A中示出了四个链接,但是在其它实施方式中可使用更少或附加链接。
图3A中所示的链接322、324、326和328可各自分别与应用内容320的视觉元素(诸如图像、图标、文本、视频等)对应。如本文中所讨论的,可(在直接意图和/或初步意图请求中)将链接322、324、326和328中的一个或多个提供给浏览器应用222。出于清楚和图示的目的,将在被包括在意图请求(直接的或初步的)中的单个链接(链接322)的场境中描述图3A、图3B和图3C的剩余讨论。应了解的是,在某些实施方式中,用于多个链接的信息可被包括在意图请求中。在其它实施方式中,可针对每个链接发送单独的意图请求。
在接收到意图请求(直接的或初步的)之后。浏览器应用222然后可响应于这种意图请求而执行操作(例如,后台操作)以获得关联的web内容224a(例如,其可被存储为web内容副本224b),并且在分配给非浏览器应用226的浏览器标签页中加载和/或渲染所获得的web内容。如上面所指出的,意图请求可包括与非浏览器应用226对应的颜色、字体和/或其它美学元素的指示。浏览器应用222可根据那些指示来渲染web内容224b。所分配的浏览器标签页(在非浏览器应用226的用户界面内)中的web内容的显示因此可被渲染为使得它在美学上与应用内容320的显示一致。
在此示例中,响应于用户选择图3A中所示的链接322,由移动设备300显示的非浏览器应用226的用户界面可从显示应用内容320(如图3A中所示)过渡到在分配的浏览器标签页340中显示所对应的web内容224a(或web内容副本224b),如图3B中所示。如本文中所描述的,web内容224b在其在非浏览器应用226的用户界面内显示之前,可由浏览器应用222响应于意图请求来获得(作为web内容224a的副本)并且在后台中渲染在所分配的浏览器标签页340中,如图3B中所示。可根据由非浏览器应用(例如,在意图请求中)定义的动画来做出从图3A的显示到图3B的过渡。例如,过渡可以是滑入过渡、淡入/淡出过渡、渐显/渐隐过渡等。
如图3B中所示,所分配的浏览器标签页340可包括后退按钮342、安全状态图标344、域(domain)指示器346、图标和/或按钮347、菜单图标348、渲染的web内容350(从web内容224b渲染)以及浏览器辅助层352(其可以或者可以不包括与已渲染的web内容(renderedweb content)350一起显示的视觉元素)。在此示例中,对后退按钮342的选择可以使图3B中所图示的移动设备300上的(所分配的浏览器标签页140的)显示过渡回图3A中所示的(应用内容320的)显示。安全状态图标342可指示已渲染的web内容350是否是使用安全连接(例如,通过安全端口层(SSL))还是不安全连接获得的。域指示器346可用于指示从其获得已渲染的web内容350的域(例如,web位置或URL)。在一些实施方式中,域指示器346可以是仅显示(不可编辑的)指示器。
另外在所分配的浏览器标签页340中,图标和/或按钮347可以是与非浏览器应用226对应的图标。图标和/或按钮347可响应于对图标和/或按钮347的选择(例如,点击)而使非浏览器应用226(或浏览器应用)的动作(操作)被执行。与图标和/或按钮347相关联的特定动作将取决于具体实施方式,并且可被定义为对应的意图请求的一部分。另外,对菜单图标348的选择可导致菜单(例如,不同于与菜单图标316相关联的应用菜单)被显示,诸如图3C中所示的菜单360,将在下面对此进行更详细的讨论。
在图3B中所示的示例中,浏览器辅助层(browser assist layer)352可提供非浏览器应用226(例如,当显示所分配的浏览器标签页140时)对浏览器应用326的特征的访问。此类特征可包括浏览器cookie容器、浏览历史、语言翻译服务、密码保险库(vault)(储存库等)等等。在浏览器辅助层352中(经由、从其中等)可用的特定特征将至少取决于用于在移动设备300上渲染web内容的特定浏览器应用222。
如上面所指出的,图3C图示可以响应于对图3B中的菜单图标348的选择而显示的菜单360。如图3C中所示,菜单360可包括一个或多个浏览器菜单项(browser menu items)362和一个或多个应用菜单项(application menu items)364。在这种方法中,浏览器菜单项362(和关联的操作)可由浏览器应用222定义并且被包括在所分配的浏览器标签页340中,然而应用菜单项364(和关联的操作)可由非浏览器应用226定义(例如,在意图请求中)并且被包括在所分配的浏览器标签页340的菜单360中(例如,由浏览器应用222)。对浏览器菜单项362或应用菜单项364的选择可使移动设备300执行相应的关联的操作。与浏览器菜单项362和应用菜单项364相关联的特定操作将取决于特定实施方式。
图4是图示根据实施方式的用于在非浏览器应用中集成web内容(例如,web内容的显示和/或渲染)的方法400的流程图。在此示例实施方式中,可使用关于图2和图3A至图3C所描述的技术和方法来在图1中所示的系统100中实现方法400。因此,出于图示的目的,将进一步参考图1、图2和图3A至图3C描述方法400。然而,应了解的是,在其它实施方式中,可在具有其它布置的系统和设备中实现方法400。
在块410处,方法400可包括在移动设备300上执行非浏览器应用226。在块420处,方法400可包括由非浏览器应用226在移动设备300的显示器(输出设备214)上显示到web内容224a的链接(链接322)。在块430处,方法400可包括接收链接322已被选择的指示(选择)。在块440处,响应于链接322已被选择的指示,方法400可包括将浏览器应用222的浏览器标签页340分配给非浏览器应用226。在块450处,方法400可包括在非浏览器应用222的用户界面内显示所分配的浏览器标签页340。另外,方法400可包括在块460处通过所分配的浏览器标签页340(在其中、与其一起等)在非浏览器应用的用户界面内显示web内容224a(或web内容副本224b)。
在方法400中,在块420处已选择链接的指示可包括用于所分配的浏览器标签页的至少一个定制参数。所述至少一个定制参数可包括下列中的至少一个:菜单项和与所述菜单项相关联的对应动作;图标;按钮和与所述按钮相关联的对应动作;与用户界面对应的颜色;以及要用于在用户界面内显示所分配的浏览器标签页的动画。
在此示例中,非浏览器应用226和所分配的浏览器标签页340可作为单独的进程由移动设备300执行(例如,其中所分配的浏览器标签页作为与浏览器应用222相关联的进程的一部分被执行)。另外在方法400中,所分配的浏览器标签页可包括下列中的一个或多个:由所述浏览器应用定义的至少一个菜单项;由所述非浏览器应用定义的至少一个菜单项;由浏览器应用定义的至少一个按钮;以及由所述非浏览器应用定义的至少一个按钮。此类菜单项可使用本文中所描述的方法来操作。
图5是图示根据实施方式的用于在非浏览器应用中集成web内容(例如,渲染的web内容的显示)的另一方法500的流程图。在此示例实施方式中,与方法400一样,可使用参考图2和图3A至图3C所描述的技术和方法来在图1中所示的系统100中实现方法500。因此,出于图示的目的,也将进一步参考图1、图2和图3A至图3C描述方法500。然而,应了解的是,在其它实施方式中,可在具有其它布置的系统和设备中实现方法500。
在块510处,方法500可包括在移动设备300上执行非浏览器应用226,以及在块520处,由非浏览器应用226在移动设备300的显示器(例如,输出设备214)上显示到web内容224a的链接(例如,链接322)。响应于显示到web内容224a的链接322,方法500可包括在块530处向浏览器应用发送前意图请求。块530的前意图请求可包括与到web内容224a的链接相对应的统一资源定位符(URL)。在块540处,响应于前意图请求,方法500可包括由浏览器应用226执行与显示web内容224a相对应的至少一个(后台)操作。
在块550处,方法500可包括接收指示(例如,由移动设备300的用户)对链接322的选择的信号。响应于在块550处接收到信号,方法500可包括在块560处将浏览器应用222的标签页(浏览器标签页340)分配给非浏览器应用226。如本文中所描述的,块530的前意图请求可进一步包括用于所分配的浏览器标签页340的至少一个定制参数,诸如相对于方法400所描述的定制参数。
在块570处,方法500可包括根据块560的至少一个定制参数在非浏览器应用226的用户界面内显示所分配的浏览器标签页340。另外,方法500可包括在块580处通过所分配的浏览器标签页340在非浏览器应用的用户界面内显示web内容224a(或web内容副本224b),诸如图3B中所图示。
在方法500中,在块540处与显示web内容相对应的至少一个操作可包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所述web内容(例如,根据块560的至少一个定制参数)。在方法500中,与方法400一样,非浏览器应用226和所分配的浏览器标签页340可作为单独的进程由移动设备300执行。在其它实例中,非浏览器应用226和所分配的浏览器标签页340可作为移动设备300上的同一进程的一部分被执行,其中所分配的浏览器标签页340在非浏览器应用226的控制下。这是特别资源高效的实施方式。另外,在块540处响应于块530处的前意图请求而执行与显示web内容224a(或web内容副本224b)对应的至少一个操作可包括在移动设备300上的浏览器应用222的后台进程中执行与显示web内容(诸如上面所讨论的那些web内容)对应的至少一个操作,然而非浏览器应用226作为移动设备300上的前台进程被执行。
在块580处显示web内容可包括在所分配的浏览器标签页340中显示与web内容224a相关联的URL(域)。附加地,在块580处显示web内容也可包括显示与在所分配的浏览器标签页中显示的web内容(诸如与安全状态图标344)对应的安全端口层(SSL)状态。
在方法500中,所分配的浏览器标签页340可诸如经由浏览器辅助层352能够访问浏览器应用222的至少一个资源。浏览器应用222的此类资源可包括下列中的一个或多个:电子支付服务;语言翻译服务;浏览历史;表单自动填充数据;以及密码保险库,但是其它浏览器资源也可以是可访问的。
图6是图示根据实施方式的用于在非浏览器应用中集成内容(例如,显示并非专门为非浏览器应用而创建的内容)的另一方法600的流程图。在此示例实施方式中,与方法400和500一样,可使用与关于图2和图3A至图3C所描述的那些技术和方法类似的技术和方法来在图1中所示的系统100中实现方法600。因此,出于图示的目的,也将酌情进一步参考图1、图2和图3A至图3C描述方法600。然而,应了解的是,在其它实施方式中,可在具有其它布置的系统和设备中并在除web内容以外的内容情况下实现方法600。
在块610处,方法600可包括从非浏览器应用(例如,非浏览器应用226)接收对第一类型的内容的请求。第一种类型的内容可以是并非专门为由非浏览器应用显示而创建的内容。例如,在一个实施方式中,第一类型的内容可以是web内容224a或web内容(副本)224b。在其它实施方式中,第一类型的内容可以是除web内容以外的内容。在块620处,方法600可包括向非浏览器应用提供用于浏览器应用(例如,诸如浏览器应用222)的用户界面元素,其中非浏览器应用显示为了在非浏览器应用中使用/由非浏览器应用使用而专门配置(适配、格式化、生成等)的不同的第二类型的内容。第二类型的内容可包括文本、图像、超链接等。在实施方式中,用户界面元素可以是浏览器标签页。在其它实施方式中,用户界面元素能采取其它形式,诸如浏览器窗口、弹出窗口等。
在块630处,方法600可包括针对非浏览器应用的用户界面修改用户界面元素以针对非浏览器应用显示第一类型的内容。在块630处修改可包括诸如使用本文中所描述的方法来将用户界面元素(例如,浏览器标签页)集成到非浏览器应用的用户界面中。例如,修改用户界面元素可包括对用户界面元素应用至少一个定制参数,诸如本文中所描述的定制参数。
根据一个总体方面,一种计算机实现的方法可包括:在计算设备上执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;以及接收所述链接已被选择的指示。所述计算机实现的方法也可包括:响应于所述链接已被选择的所述指示,将浏览器应用的标签页分配给所述非浏览器应用;在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
实施方式可包括以下特征中的一个或多个。例如,所述计算设备可以是移动计算设备。所述非浏览器应用和所分配的浏览器标签页可作为单独的进程由所述计算设备执行。所分配的浏览器标签页可包括由所述浏览器应用定义的至少一个菜单项;由所述非浏览器应用定义的至少一个菜单项;由所述浏览器应用定义的至少一个按钮;和/或由所述非浏览器应用定义的至少一个按钮。所述链接已被选择的所述指示可包括用于所分配的浏览器标签页的至少一个定制参数。
响应于所述显示到所述web内容的所述链接,所述方法可包括由所述非浏览器应用向所述浏览器应用发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL)。响应于所述前意图请求,所述方法可包括由所述浏览器应用执行与显示所述web内容对应的至少一个操作。
所述前意图请求可包括用于所分配的浏览器标签页的至少一个定制参数。所述至少一个定制参数可包括下列中的一个或多个:菜单项和与所述菜单项相关联的对应动作;与所述非浏览器应用对应的图标;按钮和与所述按钮相关联的对应动作;与所述用户界面对应的颜色;以及要用于在所述用户界面内显示所分配的浏览器标签页的动画。
与显示所述web内容对应的所述至少一个操作可包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所下载的web内容。
在另一总体方面中,一种计算机实现的方法可包括:在计算设备上执行非浏览器应用;以及由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接。所述方法可进一步包括,响应于所述显示到所述web内容的所述链接,向浏览器应用发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL)。所述方法可再进一步包括,响应于所述前意图请求,由所述浏览器应用执行与显示所述web内容对应的至少一个操作并且接收指示对所述链接的选择的信号。响应于接收到所述信号,所述方法可包括:将所述浏览器应用的标签页分配给所述非浏览器应用,所述前意图请求还包括用于所分配的浏览器标签页的至少一个定制参数;根据所述至少一个定制参数在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
实施方式可包括以下特征中的一个或多个。例如,所述至少一个定制参数可包括下列中的一个或多个:菜单项和与所述菜单项相关联的对应动作;图标;按钮和与所述按钮相关联的对应动作;与所述用户界面相对应的颜色;以及要用于在所述用户界面内显示所分配的浏览器标签页的动画。
与显示所述web内容对应的所述至少一个操作包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所述web内容。
所述非浏览器应用和所分配的浏览器标签页可作为单独的进程由所述计算设备执行。所述方法可包括在所分配的浏览器标签页中显示所述URL。所述方法可包括显示与在所分配的浏览器标签页中显示的所述web内容对应的安全端口层(SSL)状态。
所分配的浏览器标签页可能够访问所述浏览器应用的至少一个资源。所述浏览器应用的所述至少一个资源可包括下列中的一个或多个:电子支付服务;语言翻译服务;浏览历史;表单自动填充数据;以及密码保险库。
所述响应于所述前意图请求而执行与显示所述web内容对应的所述至少一个操作可包括在所述计算设备的后台浏览器进程中执行与显示所述web内容对应的所述至少一个操作,其中所述非浏览器应用作为所述计算设备的前台进程被执行。
在另一总体方面中,一种非暂时性计算机可读介质可具有存储在其上的指令。所述指令当由计算设备的至少一个处理器执行时,可使所述计算设备执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;并且接收所述链接已被选择的指示。响应于所述链接已被选择的所述指示,所述指令当由所述至少一个处理器执行时,可使所述计算设备将浏览器应用的标签页分配给所述非浏览器应用。所述指令当由计算设备的至少一个处理器执行时,可进一步使所述计算设备在所述非浏览器应用的用户界面内显示所分配的浏览器标签页并且通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
实施方式可包括以下特征中的一个或多个。例如,所述指令当由所述至少一个处理器执行时,可使所述计算设备响应于所述显示到所述web内容的所述链接执行以下步骤:由所述非浏览器应用向所述浏览器发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL);以及响应于所述前意图请求,由所述浏览器应用在后台进程中执行与显示所述web内容对应的至少一个操作。
在另一总体方面中,一种计算机实现的方法可包括从非浏览器应用接收对第一类型的内容的请求。所述计算机实现的方法可进一步包括向所述非浏览器应用提供用于浏览器应用的用户界面元素。所述非浏览器应用可显示专门为所述非浏览器应用而创建的不同的第二类型的内容。所述计算机实现的方法也可包括针对所述非浏览器应用的用户界面修改所述用户界面元素以针对所述非浏览器应用显示所述第一类型的所述内容。
实施方式可包括以下特征中的一个或多个。例如,所述第一类型的内容可包括web内容。所述第一类型的内容可包括并非专门为了由所述非浏览器应用显示而创建的内容。所述用户界面元素可包括浏览器标签页。修改所述用户界面元素可包括对所述用户界面元素应用至少一个定制参数。
图7示出可以与这里所描述的技术一起使用的通用计算机设备700和通用移动计算机设备750的示例。计算设备700旨在表示各种形式的数字计算机,诸如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其它适当的计算机。计算设备750旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其它类似的计算设备。这里所示的组件、它们的连接和关系及其功能仅意在为示例性的,而不意在限制本文档中所描述和/或要求保护的本发明的实施方式。
计算设备700包括处理器702、存储器704、存储设备706、连接到存储器704和高速扩展端口710的高速接口708以及连接到低速总线714和存储设备706的低速接口712。组件702、704、706、708、710和712中的每一个使用各种总线互连,并且可以酌情被安装在公共母板上或者以其它方式安装。处理器702可处理在计算设备700内执行的指令,包括存储在存储器704中或在存储设备706上以在外部输入/输出设备(诸如耦合到高速接口708的显示器716)上显示用于GUI的图形信息的指令。在其它实施方式中,可以酌情使用多个处理器和/或多个总线以及多个存储器和多种类型的存储器。另外,可以连接多个计算设备700,其中每个设备提供必要操作的各部分(例如,作为服务器组、刀片服务器组或多处理器系统)。
存储器704存储计算设备700内的信息。在一个实施方式中,存储器704是一个或多个易失性存储器单元。在另一实施方式中,存储器704是一个或多个非易失性存储器单元。存储器704也可以是另一形式的计算机可读介质,诸如磁盘或光盘。
存储设备706能够为计算设备700提供海量存储。在一个实施方式中,存储设备706可以是或者包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备或磁带设备、闪速存储器或其它类似的固态存储器设备或这些设备的阵列,包括存储区域网络或其它配置中的设备。计算机程序产品可被有形地具体实现在信息载体中。计算机程序产品也可以包含指令,所述指令当被执行时,执行一个或多个方法,诸如上述的那些方法。信息载体是计算机或机器可读介质,诸如存储器704、存储设备706或处理器702上的存储器。
高速控制器708管理计算设备700的带宽密集操作,然而低速控制器712管理较低带宽密集操作。功能的这种分配仅仅是示例性的。在一个实施方式中,高速控制器708耦合到存储器704、显示器716(例如,通过图形处理器或加速器),并且耦合到可以接受各种扩展卡(未示出)的高速扩展端口710。在该实施方式中,低速控制器712耦合到存储设备706和低速扩展端口714。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、指针设备、扫描器或诸如交换机或路由器的联网设备。
如图中所示,可以以许多不同的形式实现计算设备700。例如,它可以作为标准服务器720被实现,或者在一组此类服务器中被实现多次。它也可以作为机架服务器系统724的一部分被实现。此外,它可以被实现在诸如膝上型计算机722的个人计算机中。可替选地,来自计算设备700的组件可以与移动设备(未示出)(诸如设备750)中的其它组件组合。此类设备中的每一个可以包含计算设备700、750中的一个或多个,并且整个系统可以由彼此通信的多个计算设备700、750组成。
计算设备750除了包括组件之外还包括处理器752、存储器764、诸如显示器754的输入/输出设备、通信接口766和收发器768。设备750也可以被提供有存储设备,诸如微型驱动器或其它设备,以提供附加存储。组件750、752、764、754、766和768中的每一个使用各种总线互连,并且若干组件可以酌情被安装在公共母板上或者以其它方式安装。
处理器752可执行计算设备750内的指令,包括存储在存储器764中的指令。处理器可以作为包括单独的和多个模拟和数字处理器的芯片的芯片集被实现。处理器可以例如提供对设备750的其它组件的协调,诸如对用户界面、由设备750运行的应用和由设备750进行的无线通信的控制。
处理器752可以通过耦合到显示器754的控制接口758和显示器接口756与用户进行通信。显示器754可以是例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器或其它适当的显示技术。显示接口756可以包括用于驱动显示器754以向用户呈现图形和其它信息的适当的电路。控制接口758可以接收来自用户的命令并且对它们进行转换以用于提交给处理器752。此外,可以提供与处理器752通信的外部接口762,以便使得能实现设备750与其它设备的近区域通信。外部接口762可以例如在一些实施方式中提供有线通信,或者在其它实施方式中提供无线通信,并且也可以使用多个接口。
存储器764存储计算设备750内的信息。存储器764可以作为一个或多个计算机可读介质、一个或多个易失性存储器单元或者一个或多个非易失性存储器单元中的一个或多个被实现。扩展存储器774也可以被提供并通过扩展接口772连接到设备750,所述扩展接口772可以包括例如SIMM(单列直插存储器模块)卡接口。这种扩展存储器774可以为设备750提供附加存储空间,或者也可以存储用于设备750的应用或其它信息。具体地,扩展存储器774可以包括用于执行或者补充上述的过程的指令,并且同样可以包括安全信息。因此,例如,扩展存储器774可以作为用于设备750的安全模块被提供,并且可以被编程有允许安全使用设备750的指令。此外,可以经由SIMM卡提供安全应用以及附加信息,诸如以不可破解的方式将识别信息放置在SIMM卡上。
如在下面所讨论的,存储器可以包括例如闪速存储器和/或NVRAM存储器。在一个实施方式中,计算机程序产品被有形地具体实现在信息载体中。计算机程序产品包含指令,所述指令当被执行时,执行一个或多个方法,诸如上述的那些方法。信息载体是可以例如通过收发器768或外部接口762接收的计算机或机器可读介质,诸如存储器764、扩展存储器774或处理器752上的存储器。
设备750可以通过通信接口766以无线方式通信,所述通信接口766在必要时可以包括数字信号处理电路。通信接口766可以在诸如GSM语音呼叫、SMS、EMS或MMS消息传送、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等的各种模式或协议下提供通信。这种通信可以例如通过射频收发器768发生。此外,可以发生短距离通信,诸如使用蓝牙、WiFi或其它这种收发器(未示出)。此外,GPS(全球定位系统)接收器模块770可以向设备750提供附加导航和位置相关无线数据,其可以酌情由在设备750上运行的应用使用。
设备750也可以使用音频编解码器760可听地通信,所述音频编解码器760可以接收来自用户的口头信息并将它转换为可用的数字信息。音频编解码器760可以同样地诸如通过扬声器(例如,在设备750的头戴式耳机中)为用户生成可听声音。这种声音可以包括来自语音电话呼叫的声音,可以包括录制声音(例如,语音消息、音乐文件等)并且也可以包括由在设备750上操作的应用所生成的声音。
如图中所示,可以以许多不同的形式实现计算设备750。例如,它可以作为蜂窝电话780被实现。它也可以作为智能电话782、个人数字助理或其它类似的移动设备的一部分被实现。
这里所描述的系统和技术的各种实施方式可用数字电子电路、集成电路、专门地设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合加以实现。这些各种实施方式可包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,所述可编程系统包括至少一个可编程处理器,其可以是专用的或通用的,耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,并且向存储系统、至少一个输入设备和至少一个输出设备发送数据和指令。
这些计算机程序(也被称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以用高级过程和/或面向对象编程语言和/或用汇编/机器语言加以实现。如本文中所使用的,术语“机器可读介质”、“计算机可读介质”指代用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”指代用于向可编程处理器提供机器指令和/或数据的任何信号。
为了提供与用户的交互,可在计算机上实现这里所描述的系统和技术,所述计算机具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以用来向该计算机提供输入的键盘和指针设备(例如,鼠标或轨迹球)。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以任何形式(包括声、语音或触觉输入)接收来自用户的输入。
可在计算系统中实现这里所描述的系统和技术,所述计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有用户可以用来与这里所描述的系统和技术的实施方式交互的图形用户界面或Web浏览器的客户端计算机),或者包括此类后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)和互联网。
计算系统可包括客户端和服务器。客户端和服务器一般地彼此远离并且通常通过通信网络来交互。客户端和服务器之间的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
已经描述了许多实施方式。然而,应理解的是,可在不脱离本发明的精神和范围的情况下做出各种修改。
此外,图中所描绘的逻辑流程不要求所示的特定次序或顺序次序来实现所希望的结果。此外,可以提供其它步骤,或者可以从所描述的流程中消除步骤,并且其它组件可以被添加到所描述的系统或者从所描述的系统中移除。因此,其它实施方式在以下权利要求的范围内。
在以下示例中概括了另外的实施方式:
示例1.一种计算机实现的方法,所述方法包括:在计算设备上执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;接收所述链接已被选择的指示;响应于所述链接已被选择的所述指示,将浏览器应用的标签页分配给所述非浏览器应用;在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
示例2.根据示例1所述的计算机实现的方法,其中,所述计算设备是移动计算设备。
示例3.根据示例1或2所述的计算机实现的方法,其中,响应于所述显示到所述web内容的所述链接,所述方法进一步包括:由所述非浏览器应用向所述浏览器应用发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL);以及响应于所述前意图请求,由所述浏览器应用执行与显示所述web内容对应的至少一个操作。
示例4.根据示例3所述的计算机实现的方法,其中,所述前意图请求包括用于所分配的浏览器标签页的至少一个定制参数。
示例5.根据示例4所述的计算机实现的方法,其中,所述至少一个定制参数包括下列中的一个或多个:菜单项和与所述菜单项相关联的对应动作;与所述非浏览器应用对应的图标;按钮和与所述按钮相关联的对应动作;与所述用户界面对应的颜色;以及要用于在所述用户界面内显示所分配的浏览器标签页的动画。
示例6.根据示例3至5中的一项所述的计算机实现的方法,其中,与显示所述web内容对应的所述至少一个操作包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所下载的web内容。
示例7.根据示例1至6中的一项所述的计算机实现的方法,其中,所述链接已被选择的所述指示包括用于所分配的浏览器标签页的至少一个定制参数。
示例8.根据示例1至7中的一项所述的计算机实现的方法,其中,所述非浏览器应用和所分配的浏览器标签页作为单独的进程由所述计算设备执行。
示例9.根据示例1至8中的一项的计算机实现的方法,其中,所分配的浏览器标签页包括:由所述浏览器应用定义的至少一个菜单项;由所述非浏览器应用定义的至少一个菜单项;由所述浏览器应用定义的至少一个按钮;以及由所述非浏览器应用定义的至少一个按钮。
示例10.一种计算机实现的方法,所述方法包括:在计算设备上执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;响应于所述显示到所述web内容的所述链接,向浏览器应用发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL);响应于所述前意图请求,由所述浏览器应用执行与显示所述web内容对应的至少一个操作;接收指示对所述链接的选择的信号;响应于接收到所述信号,将所述浏览器应用的标签页分配给所述非浏览器应用,所述前意图请求进一步包括用于所分配的浏览器标签页的至少一个定制参数;根据所述至少一个定制参数在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
示例11.根据示例10所述的计算机实现的方法,其中,所述至少一个定制参数包括下列中的一个或多个:菜单项和与所述菜单项相关联的对应动作;图标;按钮和与所述按钮相关联的对应动作;与所述用户界面对应的颜色;以及要用于在所述用户界面内显示所分配的浏览器标签页的动画。
示例12.根据示例10或11所述的计算机实现的方法,其中,与显示所述web内容对应的所述至少一个操作包括下列中的一个或多个:启动所述浏览器应用;加载所述浏览器应用的本地库;基于所述URL执行域名系统(DNS)查找;连接到与所述DNS查找对应的服务器;从所述服务器下载所述web内容;以及渲染所述web内容。
示例13.根据示例10至12中的一项所述的计算机实现的方法,其中,所述非浏览器应用和所分配的浏览器标签页作为单独的进程由所述计算设备执行。
示例14.根据示例10至13中的一项所述的计算机实现的方法,进一步包括在所分配的浏览器标签页中显示所述URL。
示例15.根据示例10至14所述的计算机实现的方法,进一步包括显示与在所分配的浏览器标签页中显示的所述web内容对应的安全端口层(SSL)状态。
示例16.根据示例10至15所述的计算机实现的方法,其中,所分配的浏览器标签页能够访问所述浏览器应用的至少一个资源。
示例17.根据示例16所述的计算机实现的方法,其中,所述浏览器应用的所述至少一个资源包括下列中的一个或多个:电子支付服务;语言翻译服务;浏览历史;表单自动填充数据;以及密码保险库。
示例18.根据示例10至17中的一项所述的计算机实现的方法,其中,所述响应于所述前意图请求而执行与显示所述web内容对应的所述至少一个操作包括在所述计算设备的后台浏览器进程中执行与显示所述web内容对应的所述至少一个操作,其中所述非浏览器应用作为所述计算设备的前台进程被执行。
示例19.一种其上存储有指令的非暂时性计算机可读介质,所述指令当由计算设备的至少一个处理器执行时,使所述计算设备:执行非浏览器应用;由所述非浏览器应用在所述计算设备的显示器上显示到web内容的链接;接收所述链接已被选择的指示;响应于所述链接已被选择的所述指示,将浏览器应用的标签页分配给所述非浏览器应用;在所述非浏览器应用的用户界面内显示所分配的浏览器标签页;以及通过所分配的浏览器标签页在所述用户界面内显示所述web内容。
示例20.根据示例19所述的非暂时性计算机可读介质,其中,所述指令当由所述至少一个处理器执行时,使所述计算设备响应于所述显示到所述web内容的所述链接执行以下步骤:由所述非浏览器应用向所述浏览器应用发送前意图请求,所述前意图请求包括与到所述web内容的所述链接对应的统一资源定位符(URL);以及响应于所述前意图请求,由所述浏览器应用在后台进程中执行与显示所述web内容对应的至少一个操作。
示例21.一种计算机实现的方法,所述方法包括:从非浏览器应用接收对第一类型的内容的请求;向所述非浏览器应用提供用于浏览器应用的用户界面元素,其中,所述非浏览器应用显示专门为所述非浏览器应用而创建的不同的第二类型的内容;以及针对所述非浏览器应用的用户界面修改所述用户界面元素以针对所述非浏览器应用显示所述第一类型的所述内容。
示例22.根据示例21所述的计算机实现的方法,其中,所述第一类型的所述内容包括web内容。
示例23.根据示例21或22所述的计算机实现的方法,其中,所述用户界面元素包括浏览器标签页。
示例24.根据示例21至23中的一项所述的计算机实现的方法,其中,修改所述用户界面元素包括对所述用户界面元素应用至少一个定制参数。
Claims (21)
1.一种用于在非浏览器应用中使用所分配的浏览器标签页来集成web内容的显示的计算机实现的方法,所述方法包括:
在能够由移动计算设备执行的非浏览器应用的用户界面上渲染应用内容和到web内容的链接;
响应于所述链接已经被选择的指示,向能够由所述移动计算设备执行的web浏览器应用的应用编程接口API发送意图请求,所述意图请求包括对所述web浏览器应用的浏览器标签页进行定制的定制参数,其中所述定制参数定义能够由所述非浏览器应用执行的动作的定制用户界面项;以及
根据所述定制参数来在所述非浏览器应用的所述用户界面内渲染所定制的浏览器标签页,使得所述应用内容被替换为所定制的浏览器标签页,其中所定制的浏览器标签页包括所述定制用户界面项和能够由所述web浏览器应用执行的动作的用户界面项。
2.根据权利要求1所述的计算机实现的方法,进一步包括:
响应于所述定制用户界面项已经被选择的指示,执行所述定制用户界面项的动作。
3.根据权利要求1所述的计算机实现的方法,其中,所述定制参数定义过渡动画特征,所述过渡动画特征用于从所述非浏览器应用的所述用户界面中的所述应用内容过渡到所定制的浏览器标签页。
4.根据权利要求1所述的计算机实现的方法,其中,所述定制参数定义所定制的浏览器标签页上的美学元素。
5.根据权利要求1所述的计算机实现的方法,其中,所定制的浏览器标签页包括浏览器辅助层,所述浏览器辅助层被配置来向所述非浏览器应用提供对所述web浏览器应用的一个或多个特征的访问,所述web浏览器应用的所述一个或多个特征包括浏览器cookie容器、浏览历史和语言翻译服务中的至少一个。
6.根据权利要求1所述的计算机实现的方法,其中,在所述非浏览器应用的所述用户界面内渲染的所定制的浏览器标签页包括:
由所述web浏览器应用定义的至少一个用户界面UI元素按钮;以及
由所述非浏览器应用定义的至少一个UI元素。
7.根据权利要求1所述的计算机实现的方法,其中,所述非浏览器应用和所述web浏览器应用中的每一个已经被单独地安装在所述移动计算设备上。
8.一种其上存储有指令的非暂时性计算机可读介质,所述指令当由至少一个处理器执行时,使所述至少一个处理器:
在能够由移动计算设备执行的非浏览器应用的用户界面上渲染应用内容和到web内容的链接;
发送前意图请求来在能够由所述移动计算设备执行的web浏览器应用中预加载web内容,所述前意图请求用于确定将被预加载的web内容的信息,所述信息包括以下中的至少一个:由所述非浏览器应用的用户所查看的应用内容以及由所述非浏览器应用的用户录入的输入;
响应于所述链接已经被选择的指示,向所述web浏览器应用的应用编程接口API发送意图请求,所述前意图请求或所述意图请求包括对所述web浏览器应用的浏览器标签页进行定制的定制参数,其中所述定制参数定义能够由所述非浏览器应用执行的动作的定制用户界面项;以及
根据所述定制参数来在所述非浏览器应用的所述用户界面内渲染所定制的浏览器标签页,使得所述应用内容被替换为所定制的浏览器标签页,其中所定制的浏览器标签页包括所述定制用户界面项和能够由所述web浏览器应用执行的动作的用户界面项。
9.根据权利要求8所述的非暂时性计算机可读介质,其中,所述指令包括当由所述至少一个处理器执行时使所述至少一个处理器进行以下操作的指令:
响应于所述定制用户界面项已经被选择的指示,执行所述定制用户界面项的动作。
10.根据权利要求8所述的非暂时性计算机可读介质,其中,所述定制参数定义过渡动画特征,所述过渡动画特征用于从所述非浏览器应用的所述用户界面中的所述应用内容过渡到所定制的浏览器标签页。
11.根据权利要求8所述的非暂时性计算机可读介质,其中,所述定制参数定义所定制的浏览器标签页上的美学元素,所述美学元素包括所定制的浏览器标签页的工具栏颜色。
12.根据权利要求8所述的非暂时性计算机可读介质,其中,所定制的浏览器标签页在所定制的浏览器标签页的地址栏中显示所述web内容的统一资源定位符URL,以及所定制的浏览器标签页显示与所述web内容对应的安全端口层(SSL)状态。
13.根据权利要求8所述的非暂时性计算机可读介质,其中,在接收到所述链接已经被选择的所述指示之前,向所述web浏览器应用的所述API发送所述前意图请求。
14.根据权利要求8所述的非暂时性计算机可读介质,其中,所述非浏览器应用和所述web浏览器应用作为单独的进程由所述移动计算设备执行,使得所述浏览器应用被配置来在所述web浏览器应用的用户界面中生成和渲染非定制的浏览器标签页。
15.一种装置,包括:
至少一个处理器;以及
其上存储有指令的非暂时性计算机可读介质,所述指令当由所述至少一个处理器执行时,使所述至少一个处理器:
在能够由移动计算设备执行的非浏览器应用的用户界面上渲染应用内容和到web内容的链接;
响应于所述链接已经被选择的指示,向能够由所述移动计算设备执行的web浏览器应用的应用编程接口API发送意图请求,所述意图请求包括对所述web浏览器应用的浏览器标签页进行定制的多个定制参数,其中所述多个定制参数包括第一定制参数,所述第一定制参数定义能够由所述非浏览器应用执行的动作的定制用户界面项;以及
根据所述多个定制参数来在所述非浏览器应用的所述用户界面内渲染所定制的浏览器标签页,使得所述应用内容被替换为所定制的浏览器标签页,其中所定制的浏览器标签页包括所述定制用户界面项和能够由所述web浏览器应用执行的动作的用户界面项。
16.根据权利要求15所述的装置,其中,所述多个定制参数包括第二定制参数,所述第二定制参数定义过渡动画特征。
17.根据权利要求16所述的装置,其中,所述指令包括当由所述至少一个处理器执行时使所述至少一个处理器进行以下操作的指令:
根据所述第二定制参数,从所述非浏览器应用的所述用户界面中的所述应用内容过渡到所定制的浏览器标签页;以及
响应于所述定制用户界面项已经被选择的指示,执行所述定制用户界面项的动作。
18.根据权利要求16所述的装置,其中,所述多个定制参数包括第三定制参数,所述第三定制参数定义所定制的浏览器标签页的所述用户界面上的美学元素。
19.根据权利要求15所述的装置,其中,所定制的浏览器标签页包括浏览器辅助层,所述浏览器辅助层被配置来向所述非浏览器应用提供对所述web浏览器应用的一个或多个特征的访问。
20.根据权利要求19所述的装置,其中,所述web浏览器应用的所述一个多个特征包括下列中的四个或更多个:
电子支付服务;
语言翻译服务;
浏览历史;
表单自动填充数据;以及
密码保险库。
21.根据权利要求15所述的装置,其中,被渲染的所定制的浏览器标签页保持在所述web浏览器应用的控制下。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111094116.2A CN113885762B (zh) | 2015-10-07 | 2016-09-26 | 在非浏览器应用中集成内容 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/877,262 | 2015-10-07 | ||
US14/877,262 US10613713B2 (en) | 2015-10-07 | 2015-10-07 | Integration of content in non-browser applications |
PCT/US2016/053737 WO2017062203A1 (en) | 2015-10-07 | 2016-09-26 | Integration of content in non-browser applications |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111094116.2A Division CN113885762B (zh) | 2015-10-07 | 2016-09-26 | 在非浏览器应用中集成内容 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108139852A CN108139852A (zh) | 2018-06-08 |
CN108139852B true CN108139852B (zh) | 2021-10-15 |
Family
ID=58488305
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680056854.9A Active CN108139852B (zh) | 2015-10-07 | 2016-09-26 | 在非浏览器应用中集成内容 |
CN202111094116.2A Active CN113885762B (zh) | 2015-10-07 | 2016-09-26 | 在非浏览器应用中集成内容 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111094116.2A Active CN113885762B (zh) | 2015-10-07 | 2016-09-26 | 在非浏览器应用中集成内容 |
Country Status (7)
Country | Link |
---|---|
US (3) | US10613713B2 (zh) |
EP (1) | EP3360032A4 (zh) |
JP (2) | JP6677805B2 (zh) |
KR (1) | KR102147714B1 (zh) |
CN (2) | CN108139852B (zh) |
MX (1) | MX2018004130A (zh) |
WO (1) | WO2017062203A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10432748B2 (en) | 2014-07-16 | 2019-10-01 | Tensera Networks Ltd. | Efficient content delivery over wireless networks using guaranteed prefetching at selected times-of-day |
US11095743B2 (en) * | 2014-07-16 | 2021-08-17 | Tensera Networks Ltd. | Optimized content-delivery network (CDN) for the wireless last mile |
US10613713B2 (en) | 2015-10-07 | 2020-04-07 | Google Llc | Integration of content in non-browser applications |
US10372289B2 (en) * | 2015-12-31 | 2019-08-06 | Beijing Pico Technology Co., Ltd. | Wraparound interface layout method, content switching method under three-dimensional immersive environment, and list switching method |
US12099856B2 (en) | 2018-03-05 | 2024-09-24 | Tensera Networks Ltd. | Robust application preloading with accurate user experience |
US11922187B2 (en) | 2018-03-05 | 2024-03-05 | Tensera Networks Ltd. | Robust application preloading with accurate user experience |
WO2019171237A1 (en) | 2018-03-05 | 2019-09-12 | Tensera Networks Ltd. | Application preloading in the presence of user actions |
US11010466B2 (en) * | 2018-09-04 | 2021-05-18 | International Business Machines Corporation | Keyboard injection of passwords |
US11238211B2 (en) * | 2018-10-30 | 2022-02-01 | Google Llc | Automatic hyperlinking of documents |
WO2020209840A1 (en) * | 2019-04-09 | 2020-10-15 | Hewlett-Packard Development Company, L.P. | Applying directionality to audio by encoding input data |
CN114144777A (zh) | 2019-07-30 | 2022-03-04 | 腾赛拉网络有限公司 | 用户设备中应用用户界面的预渲染 |
JP7490472B2 (ja) * | 2020-07-06 | 2024-05-27 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
US20240012677A1 (en) * | 2020-09-09 | 2024-01-11 | Google Llc | Pre-launching an application using interprocess communication |
WO2022118131A1 (en) | 2020-12-03 | 2022-06-09 | Tensera Networks | Preloading of applications having an existing task |
WO2022130156A1 (en) | 2020-12-20 | 2022-06-23 | Tensera Networks Ltd. | Preloading of applications transparently to user |
US11789963B2 (en) * | 2021-03-18 | 2023-10-17 | Capital One Services, Llc | Systems and methods for presenting web application content |
JP2024528556A (ja) * | 2021-06-29 | 2024-07-30 | フェアリ インク | 使用者端末の利用情報獲得方法および装置 |
KR102616188B1 (ko) * | 2021-06-29 | 2023-12-21 | 주식회사 페어리 | 네트워크 정보를 이용한 이용 서비스의 결제 수단 혜택 정보 출력 방법 및 그 장치 |
US12067070B2 (en) | 2022-06-24 | 2024-08-20 | Microsoft Technology Licensing, Llc | Transferring link context from desktop application to browser |
US12073061B2 (en) * | 2022-06-24 | 2024-08-27 | Microsoft Technology Licensing, Llc | Systems for enabling a user to defer decisions presented in a web browser |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103594B1 (en) * | 1994-09-02 | 2006-09-05 | Wolfe Mark A | System and method for information retrieval employing a preloading procedure |
CN101073073A (zh) * | 2004-09-30 | 2007-11-14 | 百利国际游戏有限公司 | 基于可分统一资源定位器因特网浏览器的游戏系统 |
US8510406B2 (en) * | 1999-04-26 | 2013-08-13 | Mainstream Scientific, Llc | Component for accessing and displaying internet content |
US8656265B1 (en) * | 2012-09-11 | 2014-02-18 | Google Inc. | Low-latency transition into embedded web view |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3941253B2 (ja) | 1998-08-11 | 2007-07-04 | 富士ゼロックス株式会社 | ハイパーテキスト・システム及びハイパーテキストを扱う方法 |
US6414677B1 (en) * | 1998-09-14 | 2002-07-02 | Microsoft Corporation | Methods, apparatus and data structures for providing a user interface, which exploits spatial memory in three-dimensions, to objects and which visually groups proximally located objects |
IL130972A0 (en) * | 1999-07-15 | 2001-01-28 | Hotbar Com Israel Ltd | Method for the dynamic improvement of internet browser appearance and connectivity |
US6529948B1 (en) * | 1999-08-31 | 2003-03-04 | Accenture Llp | Multi-object fetch component |
JP2003263255A (ja) | 2002-03-11 | 2003-09-19 | Fujitsu Ltd | 通信を行うためのプログラム |
JP2005266929A (ja) | 2004-03-16 | 2005-09-29 | Canon Inc | 情報処理方法及び装置 |
US7606821B2 (en) * | 2004-06-30 | 2009-10-20 | Ebay Inc. | Method and system for preventing fraudulent activities |
US7840911B2 (en) * | 2004-09-27 | 2010-11-23 | Scott Milener | Method and apparatus for enhanced browsing |
JP4230978B2 (ja) * | 2004-10-05 | 2009-02-25 | 秀和 近藤 | 情報処理装置 |
US20070244900A1 (en) * | 2005-02-22 | 2007-10-18 | Kevin Hopkins | Internet-based search system and method of use |
US8069215B2 (en) * | 2005-05-16 | 2011-11-29 | Cisco Technology, Inc. | Configurable downloading of content pointed to in electronic messages |
US8863013B2 (en) | 2008-04-01 | 2014-10-14 | International Business Machines Corporation | Generating a user defined page having representations of content in other pages |
US8745018B1 (en) | 2008-07-10 | 2014-06-03 | Google Inc. | Search application and web browser interaction |
US9197486B2 (en) | 2008-08-29 | 2015-11-24 | Google Inc. | Adaptive accelerated application startup |
JP2010128994A (ja) | 2008-11-28 | 2010-06-10 | Kyocera Mita Corp | 表示制御装置、画像形成装置、及び表示制御プログラム |
US8356247B2 (en) * | 2008-12-16 | 2013-01-15 | Rich Media Worldwide, Llc | Content rendering control system and method |
CN102483742B (zh) * | 2009-09-04 | 2016-06-22 | Iii控股2有限责任公司 | 用于管理因特网媒体内容的系统和方法 |
JP4941533B2 (ja) | 2009-09-30 | 2012-05-30 | ブラザー工業株式会社 | 情報閲覧システム、情報閲覧方法、情報閲覧端末 |
US9715332B1 (en) * | 2010-08-26 | 2017-07-25 | Cypress Lake Software, Inc. | Methods, systems, and computer program products for navigating between visual components |
US20110307808A1 (en) | 2010-06-10 | 2011-12-15 | Microsoft Corporation | Rendering incompatible content within a user interface |
US20120066634A1 (en) * | 2010-09-14 | 2012-03-15 | Microsoft Corporation | Branded browser frame |
US20120239504A1 (en) * | 2011-03-15 | 2012-09-20 | Microsoft Corporation | Virtual Shopping Assistance |
US8881250B2 (en) * | 2011-06-17 | 2014-11-04 | Ebay Inc. | Passporting credentials between a mobile app and a web browser |
US9146909B2 (en) * | 2011-07-27 | 2015-09-29 | Qualcomm Incorporated | Web browsing enhanced by cloud computing |
US20130073399A1 (en) * | 2011-09-15 | 2013-03-21 | Admotion Srl | Sidetabs |
US8949739B2 (en) * | 2011-10-28 | 2015-02-03 | Microsoft Technology Licensing, Llc | Creating and maintaining images of browsed documents |
US8509816B2 (en) * | 2011-11-11 | 2013-08-13 | International Business Machines Corporation | Data pre-fetching based on user demographics |
US9294582B2 (en) * | 2011-12-16 | 2016-03-22 | Microsoft Technology Licensing, Llc | Application-driven CDN pre-caching |
US9325806B2 (en) * | 2012-02-24 | 2016-04-26 | Qualcomm Incorporated | Cooperative loading of webpages based on shared meta information |
US9449094B2 (en) * | 2012-07-13 | 2016-09-20 | Google Inc. | Navigating among content items in a set |
CN103777967B (zh) | 2012-10-17 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 页面返回方法、页面生成方法和装置 |
US20150207854A1 (en) | 2012-10-29 | 2015-07-23 | Google Inc. | External application request |
CN103473047B (zh) * | 2013-08-29 | 2017-03-29 | 贝壳网际(北京)安全技术有限公司 | 浏览器中标签页背景的管理方法、装置和客户端 |
JP5963815B2 (ja) | 2013-11-08 | 2016-08-03 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置および情報処理方法 |
CN105849724A (zh) * | 2013-12-22 | 2016-08-10 | 交互数字专利控股公司 | 使用个性化缓存或预渲染的网络应用加速 |
CN104063415B (zh) * | 2014-02-27 | 2018-07-10 | 优视科技有限公司 | 显示网页自定义内容的方法及系统 |
US9411947B2 (en) * | 2014-05-30 | 2016-08-09 | Apple Inc. | Method for managing security of a data processing system with configurable security restrictions |
US9959506B1 (en) * | 2014-06-17 | 2018-05-01 | Amazon Technologies, Inc. | Predictive content retrieval using device movements |
US20160117611A1 (en) * | 2014-10-09 | 2016-04-28 | Wrap Media, LLC | Creating and delivering a wrapped package of cards as a digital companion accompanying the purchase of ticket(s) for an event |
JP5931243B1 (ja) * | 2015-03-20 | 2016-06-08 | ヤフー株式会社 | 情報処理装置、端末装置、情報処理方法、及び情報処理プログラム |
US10613713B2 (en) | 2015-10-07 | 2020-04-07 | Google Llc | Integration of content in non-browser applications |
-
2015
- 2015-10-07 US US14/877,262 patent/US10613713B2/en active Active
-
2016
- 2016-09-26 CN CN201680056854.9A patent/CN108139852B/zh active Active
- 2016-09-26 WO PCT/US2016/053737 patent/WO2017062203A1/en active Application Filing
- 2016-09-26 MX MX2018004130A patent/MX2018004130A/es unknown
- 2016-09-26 EP EP16854085.4A patent/EP3360032A4/en active Pending
- 2016-09-26 CN CN202111094116.2A patent/CN113885762B/zh active Active
- 2016-09-26 JP JP2018516170A patent/JP6677805B2/ja active Active
- 2016-09-26 KR KR1020187009907A patent/KR102147714B1/ko active IP Right Grant
-
2020
- 2020-03-13 JP JP2020044077A patent/JP6853397B2/ja active Active
- 2020-03-23 US US16/827,197 patent/US11151303B2/en active Active
-
2021
- 2021-09-17 US US17/447,992 patent/US11995393B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103594B1 (en) * | 1994-09-02 | 2006-09-05 | Wolfe Mark A | System and method for information retrieval employing a preloading procedure |
US8510406B2 (en) * | 1999-04-26 | 2013-08-13 | Mainstream Scientific, Llc | Component for accessing and displaying internet content |
CN101073073A (zh) * | 2004-09-30 | 2007-11-14 | 百利国际游戏有限公司 | 基于可分统一资源定位器因特网浏览器的游戏系统 |
US8656265B1 (en) * | 2012-09-11 | 2014-02-18 | Google Inc. | Low-latency transition into embedded web view |
Also Published As
Publication number | Publication date |
---|---|
US20200225818A1 (en) | 2020-07-16 |
JP2018531454A (ja) | 2018-10-25 |
US11995393B2 (en) | 2024-05-28 |
JP6853397B2 (ja) | 2021-03-31 |
CN113885762B (zh) | 2024-08-20 |
JP6677805B2 (ja) | 2020-04-08 |
MX2018004130A (es) | 2018-05-17 |
EP3360032A4 (en) | 2019-05-08 |
US20220004699A1 (en) | 2022-01-06 |
EP3360032A1 (en) | 2018-08-15 |
US20170102845A1 (en) | 2017-04-13 |
US11151303B2 (en) | 2021-10-19 |
KR20180051590A (ko) | 2018-05-16 |
CN113885762A (zh) | 2022-01-04 |
JP2020109685A (ja) | 2020-07-16 |
US10613713B2 (en) | 2020-04-07 |
WO2017062203A1 (en) | 2017-04-13 |
CN108139852A (zh) | 2018-06-08 |
KR102147714B1 (ko) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108139852B (zh) | 在非浏览器应用中集成内容 | |
JP2018531454A6 (ja) | 非ブラウザアプリケーションにおけるコンテンツの統合 | |
US11778430B2 (en) | Layers in messaging applications | |
US10244039B2 (en) | Shell integration on a mobile device for an application executing remotely on a server | |
US9537925B2 (en) | Browser notifications | |
EP3627311B1 (en) | Computer application promotion | |
US9600258B2 (en) | Suggestions to install and/or open a native application | |
CN107656768B (zh) | 控制页面跳转的方法及其系统 | |
US10592063B1 (en) | Controlling actions for browser extensions | |
US9805181B1 (en) | Messaging channel for web pages and web applications | |
US20220397995A1 (en) | Dashboard explore mode | |
WO2022265775A1 (en) | Service-driven widgets with multiple forms of authentication displayed in a widgets board | |
US9906621B2 (en) | Providing language recommendations | |
US10025574B1 (en) | Packaged installation file based on automatic detection of device capabilities | |
CN110083321B (zh) | 内容展示方法及装置、智能投屏终端和可读存储介质 | |
CN112114735B (zh) | 用于管理任务的方法和装置 | |
US20220398079A1 (en) | In-application store user interface |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |