CN102934080A - 网络应用主页按钮 - Google Patents

网络应用主页按钮 Download PDF

Info

Publication number
CN102934080A
CN102934080A CN2011800288121A CN201180028812A CN102934080A CN 102934080 A CN102934080 A CN 102934080A CN 2011800288121 A CN2011800288121 A CN 2011800288121A CN 201180028812 A CN201180028812 A CN 201180028812A CN 102934080 A CN102934080 A CN 102934080A
Authority
CN
China
Prior art keywords
network application
website
user
browser
button
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.)
Granted
Application number
CN2011800288121A
Other languages
English (en)
Other versions
CN102934080B (zh
Inventor
J.T.金
M-L.威廉斯
M.J.霍尔
J.S.霍尔布鲁克
B.A.摩根
A.H.马列克
I.希勒里奥
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN102934080A publication Critical patent/CN102934080A/zh
Application granted granted Critical
Publication of CN102934080B publication Critical patent/CN102934080B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • 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
    • G06F3/04842Selection of displayed objects or displayed text elements

Abstract

各种实施例提供一种允许终端用户将网络应用和网络站点安装到他们的桌面上的机制。根据一个或多个实施例,可以使用客户端代码来允许与网络站点关联的开发人员定义与用户交互关联的边界,并且使那些边界被运行时引擎施行。在至少某些实施例中,开发人员可以通过JavaScript代码和/或HTML标记提供用于开始菜单快捷键创建、导航和所谓的跳转列表集成的各种配置。

Description

网络应用主页按钮
背景技术
最近,行业已开始聚焦于将网络应用或网络站点与用户的计算机桌面环境或“桌面”集成的概念。虽然如此,存在与这样做相关联的挑战。例如,现在对于网络站点来说难以定义用于桌面集成目的的其站点边界。由此,留给终端用户通过其自己开发的客户端脚本定义边界。这可能是有问题的,因为终端用户可能未必知道特定网络站点是如何被构造的。例如,终端用户可能未必知道全部的链接、网络属性之间的关系或网络站点用于为用户提供功能的其它细微差别。相应地,终端用户的脚本可能未认识到这些链接或细微差别,并且因此可能导致不合意或蹩脚的用户体验。
另外,用户现在面临称为双引导(dual boot)的问题。确切地说,用户被迫引导其个人计算机、开启其浏览器,并且最后启动其希望在其中进行操作的特定网络应用。该问题复合了这一事实:浏览器可以为用户提供太多干扰,例如出现在浏览器chrome中的那些,并且不允许用户简单地专心于与网络应用关联的手边的特定任务。
发明内容
提供本发明内容来以简化形式介绍下面在具体实施方式中进一步描述的概念的选摘。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,其也不旨在用于限制所要求保护的主题的范围。
各种实施例提供一种允许终端用户将网络应用或网络站点安装到例如客户端设备桌面的客户端设备的机制。根据一个或多个实施例,客户端代码可以用于允许与网络站点关联的开发人员定义与用户交互关联的边界,并且使得那些边界通过运行时引擎来施行。在至少某些实施例中,开发人员可以通过JavaScript代码提供用于开始菜单快捷键的创建、导航和所谓的跳转列表集成以及许多其它特征的各种配置。
附图说明
贯穿附图,相同数字用于指相同特征。
图1示出了根据一个或多个实施例的运行环境,本文中描述的各种原理可以在该运行环境中被使用。
图2示出了根据一个或多个实施例的网络应用窗口。
图3示出了根据一个或多个实施例的JavaScript API。
图4是描述根据一个或多个实施例的安装方法中的步骤的流程图。
图5是描述根据一个或多个实施例的网络应用交互方法中的步骤的流程图。
图6示出了根据一个或多个实施例的客户端桌面的部分。
图7示出了根据一个或多个实施例的JavaScript API。
图8示出了根据一个或多个实施例的网络站点与定制的跳转列表之间的动态交互。
图9示出了根据一个或多个实施例的客户端桌面的部分。
图10示出了根据一个或多个实施例的客户端桌面的部分。
图11是描述根据一个或多个实施例的安装方法中的步骤的流程图。
图12是描述根据一个或多个实施例的方法的步骤的流程图。
图13是描述根据一个或多个实施例的方法中的步骤的流程图。
图14示出了根据一个或多个实施例的客户端桌面。
图15示意地示出了根据一个或多个实施例的拖放操作。
图16是描述根据一个或多个实施例的安装方法中的步骤的流程图。
图17示出了根据一个或多个实施例的客户端桌面。
图18是描述根据一个或多个实施例的安装方法中的步骤的流程图。
图19示出了根据一个或多个实施例的客户端桌面。
图20是描述根据一个或多个实施例的方法中的步骤的流程图。
图21示出了根据一个或多个实施例的客户端桌面。
图22示出了根据一个或多个实施例的、显示网络站点的浏览器、证书存储、关联的网络应用和网络应用证书存储之间的关系。
图23是描述根据一个或多个实施例的方法中的步骤的流程图。
图24是描述根据一个或多个实施例的方法中的步骤的流程图。
图25示出了根据一个或多个实施例的多个网络应用实例的示例。
图26示出了根据一个或多个实施例的客户端桌面。
图27是描述根据一个或多个实施例的方法中的步骤的流程图。
图28是描述根据一个或多个实施例的方法中的步骤的流程图。
图29示出了根据一个或多个实施例的客户端桌面。
图30示出了根据一个或多个实施例的客户端桌面。
图31示出了根据一个或多个实施例的客户端桌面。
图32是描述根据一个或多个实施例的方法中的步骤的流程图。
图33是描述根据一个或多个实施例的方法中的步骤的流程图。
图34是描述根据一个或多个实施例的方法中的步骤的流程图。
图35示出了根据一个或多个实施例的、网络应用与浏览器之间的关系。
图36是描述根据一个或多个实施例的方法中的步骤的流程图。
图37是描述根据一个或多个实施例的方法中的步骤的流程图。
图38示出了根据一个或多个实施例的暂时网络应用的示例。
图39示出了根据一个或多个实施例的站点模式浏览器。
图40是描述根据一个或多个实施例的方法中的步骤的流程图。
图41示出了可以用于实现一个或多个实施例的示例系统。
具体实施方式
综述
各种实施例提供一种允许终端用户将网络应用和网络站点安装到例如客户端设备桌面的客户端设备上的机制。根据一个或多个实施例,客户端代码可以用于允许与网络站点关联的开发人员定义与用户交互关联的边界,并且使得那些边界通过运行时引擎施行。在至少某些实施例中,开发人员可以通过JavaScript代码提供用于开始菜单快捷键的创建、导航和所谓的跳转列表集成以及其它特征的各种配置。
可以将边界看作开发人员定义的与如何将功能暴露给终端用户相关的体验。边界与网络站点域相关联,所述网络站点域例如是顶级域和可能与单独应用或以域为宿主的网络站点子集相关联的子域。因此,边界可以由用于使特定网络应用运行的域、子域、文件夹、子站点、协议、主机、路径等的集合来定义。
在一个或多个实施例中,网络站点可以选择以上和以下描述的功能。在此情况下,开发人员可以提供这样的代码,所述代码在某些情况下用JavaScript来表述,其定义关于其网络站点的用户体验的边界。可替换地或另外,不选择以上和以下描述的功能的网络站点可以提供默认体验。
在以下讨论中,命名为“运行环境”的小节被提供,并且描述一个在其中可以采用一个或多个实施例的环境。在此之后,命名为“集成基础设施”的小节描述根据一个或多个实施例的使网络应用能够被集成到客户端设备的基础设施。接下来,命名为“跳转列表集成”的小节描述根据一个或多个实施例所谓的跳转列表可以如何被集成。接下来,命名为“任务栏固定”的小节描述根据一个或多个实施例网络应用可以如何被固定到任务栏。在此之后,命名为“关联证书和登录会话”的小节描述根据一个或多个实施例证书和登录会话可以如何被关联。接下来,命名为“使用关联的证书创建和启动网络应用”的小节描述根据一个或多个实施例网络应用可以如何被创建和启动。在此之后,命名为“网络应用任务会话”的小节描述根据一个或多个实施例的任务会话的概念。接下来,命名为“网络应用与浏览器之间的转换”的小节描述根据一个或多个实施例转换可以如何在网络应用与浏览器之间发生。在此之后,命名为“从浏览器创建暂时网络应用”的小节描述根据一个或多个实施例暂时网络应用可以如何从浏览器被创建。接下来,命名为“将暂时网络应用转换为安装的网络应用”的小节描述根据一个或多个实施例暂时网络应用可以如何被转换为安装的网络应用。在此之后,命名为“网络应用超级主页按钮”的小节描述根据一个或多个实施例的与网络应用相关联的主页按钮。最后,命名为“示例系统”的小节描述可以用于实现一个或多个实施例的示例系统。
现在考虑一个或多个实施例可以在其中被实现的示例运行环境。
运行环境
图1大体上在100处示出了根据一个或多个实施例的运行环境。环境100包括计算设备102,其中,计算设备102具有一个或多个处理器104、一个或多个计算机可读存储介质106以及一个或多个驻留在计算机可读存储介质中并且可被(多个)处理器执行的应用108。计算机可读存储介质作为示例并且不作为限制可以包括通常与计算设备相关联的所有形式的易失性和非易失性存储器和/或存储介质。所述介质可以包括ROM、RAM、闪存、硬盘、可移除介质等。计算设备的一个特定示例下面在图41中被示出和描述。
另外,计算设备102包括采用网络浏览器110的形式的软件应用。任意合适的网络浏览器可以被使用,所述浏览器的示例从本文档的受让人和其他人处可得。另外,计算机可读存储介质106可以包括如以上和以下描述的那样运行的网络应用模式浏览器111。网络应用模式浏览器111充当运行时引擎,该运行时引擎接收和产生分别来自和去往网络站点的API调用、监视网络应用安装过程、施行边界以及实现如以上和以下所描述的功能。在运行时,网络应用模式浏览器是完全浏览器的削减版本,其中,许多正常浏览器功能被关闭。在某些情况下,可以将网络应用模式浏览器看作不包括许多通常浏览器控制的“比chrome少”的浏览器。然而,某些命令可以通过微型控制栏暴露。网络应用模式浏览器由此为用户移除许多干扰,并且允许定向的、网络站点定义的用户体验,在所述用户体验中,网络站点可以控制用户如何与其网络应用进行交互。
在运行时,可以认为网络应用模式浏览器逻辑上驻留在网络站点与客户端设备的操作系统之间。由此,网络应用模式浏览器从网络站点接收调用,并且可以作为响应进行操作系统调用来影响本文中描述的功能。同样,网络应用模式浏览器可以从操作系统接收将影响网络站点的功能的调用。例如,操作系统暴露实现与桌面的任务栏的交互的API。网络应用模式浏览器可以从网络站点接收调用,并且作为响应可以进行API调用,所述API调用实现如下面将变得显而易见的任务栏功能。
网络应用模式浏览器111可以被实现为单独的组件。可替换地或另外,网络应用模式浏览器111可以被实现为应用108和/或浏览器110的一部分。
另外,环境100包括例如互联网的网络112以及一个或多个网络站点114,其中,可以从所述一个或多个网络站点114接收内容并向其发送内容。如以上和以下描述的那样,所述内容可以包括被集成到客户端桌面或可通过客户端设备使用的例如网络应用的内容。
计算设备102可以被体现为任意合适的计算设备,作为示例并且不作为限制,例如是桌面计算机、便携式计算机、诸如个人数字助理(PDA)的手持计算机、蜂窝电话等。
已描述了示例性运行环境,现在考虑对允许网络应用集成到客户端设备的基础设施的讨论。
集成基础设施
根据一个或多个实施例,网络站点可以选择作为更常见的“站点模式”体验的一部分而被提供的域导航。域导航使网络站点能够定制当用户访问特定域内部和外部的链接时其现存网络站点的行为。当访问开发人员指定的边界内部的链接时,内容可以在网络应用窗口内被渲染和消费,该网络应用窗口作为关联的网络应用的一部分由网络应用模式浏览器渲染。当访问开发人员指定的边界外部的链接时,关联的内容可以在网络应用模式浏览器之外的默认浏览器内被渲染和消费。这允许网络站点定义哪些域应当被看作网络站点的扩展,以及哪些不应当。
在一个或多个实施例中,导航域可以由网络开发人员定义,并且标识那些其内容被网络应用模式浏览器作为集成的网络站点的一部分、或在网络应用模式浏览器之外在默认浏览器中显示的链接。另外,默认域参数可以被定义,其用于将网络应用页面的集合关联在一起。
作为示例,考虑下面的行内域页面定义:
*contoso.crm.dynamics.com\*;*.microsoft.com\*;
该域页面定义将允许采用下方形式的URI在同一桌面网络应用窗口中显示:
sales.contoso.crm.dynamics.com\*
hr.contoso.crm.dynamics\*
*.microsoft.com\crm\
同样,该域页面定义将迫使其它URI在桌面网络应用窗口之外被显示,即使链接引用在桌面网络应用窗口内的页面内部:
www.bing.com
home.live.com
在上面的域页面定义中,通配符在网络应用安装API内被使用。该API通常在用户选择由网络站点提供的网络站点集成链接时被网络站点调用。该API可以用将被用于启动网络站点快捷键的位于桌面、任务栏或开始菜单或任意其它合适位置处的信息和内容填充网络应用文件或“.webapp”文件。应当认识到和理解,任意合适的文件扩展可以用于定名网络应用文件。导航域和其它边界信息被存储在.webapp文件内。
当.webapp文件被启动时,其中的导航域被网络应用模式浏览器111施行。被用户选择或被网络站点访问的链接只要其匹配通配符域则继续在网络应用窗口内执行。然而,当检测到在定义的导航域之外的网络站点时,默认浏览器被实例化或被使用,并且与该网络站点相关联的内容在网络应用窗口之外并且在默认浏览器之内被显示。
作为示例,考虑图2,该图示出了具有导航域集合a.com(202)、b.com(204)和d.com(206)的网络应用窗口200,其意味着来自这些域的所有页面在网络应用窗口200内被显示。当来自c.com(208)或e.com(210)的页面从网络应用窗口200内被访问时,其在默认浏览器窗口并且不是在网络应用窗口200中被显示。
图3在300处示出了的根据一个或多个实施例的JavaScript API。所示出的JavaScript API使网络站点能够将网络应用与客户端桌面集成。该API定义将被网络应用或运行时引擎施行的导航域。在该示例中,使用如上面示出的通配符表达式来描述导航域。该API实现使用客户端设备上的内容和信息对.webapp应用文件302的填充或更新,并且将导航域及其它信息存储在其中。这些导航域在网络应用被启动时被施行。
在所示和所描述的实施例中,.webapp应用文件302包括网络站点已为其站点模式配置定义的信息。该信息包括:起始URL,其是被网络应用模式浏览器显示的初始页面;网络站点已指定的导航域的全部;网络应用标题;以及所谓的收藏图标(favicon)。如将在下面描述的,可以包括其它信息。
现在,一旦网络应用在客户端上被启动,则网络应用模式浏览器读取网络应用文件并施行其中定义的边界。如以上指出的,因为网络应用体验由熟知特定网络站点及其细微差别的开发人员定义,所以可以提供完整和集成的用户体验。
图4是描述根据一个或多个实施例的安装方法中的步骤的流程图。该方法可以被任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,该方法的方面被执行在客户端设备上的软件执行。
步骤400选择网络站点集成特征。该步骤可以以任意合适的方式被执行。通常,该步骤在用户选择手段(instrumentality)或采取动作来发起网络应用安装过程时被执行。例如,用户可能选择使其能够集成网络应用的链接。下面提供了这可以如何被完成的特定示例。
步骤402在客户端设备上创建网络应用文件——这里定名为“.webapp”文件。该文件当初始被创建时可以构成构件(artifact)或壳(shell),所述构件或壳可以随后使用从网络站点或代表网络站点接收的内容和信息来填充。步骤404用网络应用内容填充网络应用文件。该步骤可以以任何合适的方式被执行。例如,该步骤可以通过使用上面和下面提供了其示例的JavaScript API来执行。可替换地或另外,该步骤可以通过使用例如HTML的标记来执行。
已在客户端上创建了网络应用文件并且用内容填充了该网络应用文件,现在可以启动网络应用并与之进行交互。
图5是描述根据一个或多个实施例的网络应用交互方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合来执行。在至少某些实施例中,该方法的方面由在客户端上执行的软件和在支持网络站点的服务器上执行的软件执行。相应地,图的一列被定名为“客户端”,以便指定那些例如由客户端或在客户端处由网络应用模式浏览器执行的步骤,以及,一列被定名为“网络站点”,以便指明哪些由网络站点或代表网络站点执行的步骤。
步骤500接收对站点模式的用户选择。该步骤可以以任意合适的方式被执行。例如,安装在客户端桌面上的快捷键可以用于接收站点模式选择。响应于接收到站点模式选择,步骤502请求起始URL。起始URL可以在上面描述的网络应用文件中找到。
步骤504接收起始URL请求。步骤506向客户端返回包括与起始URL相关联的内容的关联网络资源。
步骤508接收关联的网络资源,并且步骤510在网络应用窗口中渲染网络资源。如以上描述的,网络应用窗口由网络应用模式浏览器渲染。步骤512接收关于在网络应用窗口中渲染的资源的用户交互。用户交互可以包括任意合适类型的用户交互。例如,用户交互可以包括源自网络应用窗口内的导航活动。步骤514探知用户交互是否在由网络应用文件定义的边界内。如果用户交互在由网络应用文件定义的边界内,则步骤516在网络应用窗口中渲染与用户交互相关联的内容。如果另一方面,用户交互不在由网络应用文件定义的边界内,则步骤518在默认网络浏览器中渲染与用户交互相关联的内容。
这样,由网络站点开发人员针对特定网络站点定义的边界可以被施行,以确保用户体验保持如开发人员所期望的。例如,网络站点定义的起始URL是主页,并且在网络应用模式下的主页的随后访问导航到起始URL,而非用户初始定义的浏览器主页。这允许对网络应用特定页面而不是一些不相关主页的快速访问。这减轻了终端用户不得不定义可能或可能不正确运行的其自己的站点特定体验的负担。同样,可以为终端用户提供完整的、集成的和智能管理的体验。
已描述了示例性安装和交互体验,现在考虑跳转列表集成的概念。
跳转列表集成
在一个或多个实施例中,开发人员可以使网络站点能够在桌面集成期间定义一系列所谓的跳转列表任务,所述跳转列表任务可用于与网络站点进行交互。另外,在至少某些实施例中,网络站点可以创建和更新定制的跳转列表。
可以将跳转列表看作这样的列表,该列表构成被呈现给用户的一组相关任务或内容。通过跳转列表,网络站点可以向用户提示相关和有用信息的提炼。跳转列表与特定网络应用的能力或功能相关。例如,用于电子邮件应用的跳转列表可能包括这样的任务,所述任务给予用户打开联系人、创建新电子邮件消息等的能力。在某些情况下,跳转列表可以包括相关并且最常使用的命令和数据的列表。
在一个或多个实施例中,跳转列表功能可以被实现为包括静态元素和动态元素两者。
开发人员可以在如上面描述的填充网络应用文件的网络应用安装过程期间定义静态元素。与静态元素相关联的设置可以被存储在网络应用文件内部。在一个或多个实施例中,设置可以包括列表名称和关联的任务。在至少某些情况下,静态元素可以构成代表通常被使用的功能的元素。
与动态元素相关联的设置可以由在网络应用窗口内部运行的网络站点页面驱动。这些设置包括动态地为用户暴露可识别标记的设置。例如,一个设置可以向定制的跳转列表添加项目,以及一个设置可以显示覆盖图标,其示例在下面提供。在至少某些实施例中,动态设置可以在每次网络应用启动时被清除,并且可以由网络应用脚本代码配置。
作为根据一个实施例的定制的跳转列表的示例,考虑图6,该图大体上在600处示出了客户端桌面的一部分。根据一个或多个实施例,暴露了定制的跳转列表602。此处,静态元素在604处示出,以及动态元素在606处示出。在本示例中,静态元素列表名称是“任务”,并且任务或静态元素包括“新电子邮件消息”、“新约会”、“新联系人”和“新任务”。动态元素列表名称是“今天”,并且任务或动态元素在本示例中包括从用户的日历生成的提醒。动态元素由关联的网络站点动态地填充。因此,在本示例中,动态元素或内容与向用户提供通知相关联,通常与用户的动作独立。
如以上指出的,跳转列表可以在桌面集成过程期间被定义。任务和跳转列表定义可以被存储在网络应用文件内部。作为示例,考虑在700处示出的根据一个或多个实施例的JavaScript API的图7。所示的JavaScript API使网络站点能够与客户端桌面集成和定义跳转列表。除了存在“定制的任务”和“定制的跳转列表”之外,该JavaScript API可以与参考图3描述的那个相同或类似。为简洁起见,图3内容的一些已被省略。在至少某些实施例中,跳转列表任务的静态列表的初始创建可以例如使用在HTML文档内部定义的HTML标签通过标记来定义。
例如,考虑下面使用元标签来描述静态列表功能的示例:
<META name=”misapplication-task”
content=”name=Task;uri=http://marap/test3.html;icon-uri=http://marap/icon3.ico”/>
在一个或多个实施例中,当任务被执行时,存在数个选项。例如,与任务相关联的URL可以在包含当前被查看的网页的同一网络应用/浏览器窗口内被打开。可替换地或另外,可以启动新页面。可替换地或另外,可以显示新弹出窗口。
在这些参数被定义并被系统读取之后,其可以在用户将网络站点安装在其桌面上时被使用,所述安装例如是如下面描述的那样通过将其添加到开始菜单或将其固定到任务栏。同时,在至少某些实施例中,跳转列表上存在可以被网络站点客户端代码操纵的一组动态值。
“定制的任务”被网络站点用于定义如上面所描述的静态任务。在本示例中,静态任务是新消息静态任务。该API在桌面上创建.webapp应用文件702,并且存储导航域(如在图3的示例中那样)和例如关联于跳转列表的信息的其它信息。
在所示和所描述的实施例中,.webapp应用文件702包括网络站点已针对其站点模式配置而定义的信息。该信息包括起始URL、网络站点已指定的导航域的全部(未具体示出)、网络应用标题和所谓的收藏图标。其它信息包括与上面提到的新消息关联的定制的任务和“定制的列表”。在本示例中,定制的列表元素是可以由网络站点在网络应用正运行在客户端上时动态填充的动态元素。此处,“朋友”定名包括关联于动态内容的头部。因此,在此情况下,动态内容与当用户的朋友在线时向其提供通知相关联。此处,定制的列表是不驻留网络应用内的单独API。然而,定制的任务驻留网络应用内。
在运行时,关联于静态元素的项目可以在网络应用正运行时被预取和高速缓存。 另一方面,关联于动态元素的项目可以在网络应用正运行时由网络站点运行中地提供。作为关联于动态元素的项可以如何被运行中地提供给网络应用的实现示例,考虑图8。
图8示出了网络站点如何能够动态地与定制的跳转列表进行交互以允许用户知道消息已到达。在本示例中,JavaScript 800示出了网络站点可以如何向以网络应用模式浏览器为宿主的页面发送更新。在浏览器中执行的客户端代码负责接收更新,更新屏幕上的内容,以及向跳转列表发送用于更新其列表的请求。在本示例中,网络站点能够向跳转列表推送信息以提供实时体验。这里,当例如新消息0和新消息1的新消息被网络站点接收时,可以从网络应用进行JavaScript调用来更新跳转列表802。在至少某些实施例中,通知可以出现在任务栏804中,以便通知用户相关信息已被接收。通知可以出现在任务栏中的任何合适位置处,并且可以包括任意合适类型的通知。例如,通知可以出现在与网络应用关联的图标806中或附近。可替换地或另外,通知可以闪烁以便吸引用户的眼球。
作为示例,考虑图9。此处,大体在900处示出了客户端桌面的部分。任务栏901包括与当前网络应用关联的图标902。这里注意到,覆盖图标904已在902内被渲染。在本示例中,用户已接收到新消息,并且网络站点已如上面描述的那样调入网络应用来导致覆盖图标904在图标902内被渲染。这向用户提供新消息已到达的通知。作为看到覆盖图标904的响应,用户可以访问跳转列表905来暴露指示当前正在发生或即将发生的约会的元素908。还应当注意到,元素906也被暴露。JavaScript摘录910示出了可以用于更新覆盖图标的代码的一个示例。
网络站点与网络应用之间的动态交互可以以各种其它方式发生。例如,在至少某些实施例中,响应于用户关于网络站点的动作,可以将预览窗口从网络站点推送给跳转列表。在所示和所描述的实施例中,预览窗口是由网络站点提供的微型视图。可以响应于任何合适类型的用户动作而提供预览窗口。例如,在至少某些实施例中,可以响应于鼠标停留在与网络站点关联的任务栏图标上而将预览窗口从网络站点推送到跳转列表。可替换地或另外,可以通过将光标放在网络应用的任务栏图标上并左键点击来提供预览窗口。
作为示例,考虑图10。此处,大体在1000处示出了客户端桌面的部分。任务栏1001包括与当前网络应用关联的图标1002。此处注意到,用户已将其光标放在图标1002上。作为响应,预览窗口1004已被渲染。在运行时,响应于用户将其光标放在图标上的动作,事件被发送给网络页面。作为接收到事件的响应,网络页面可以然后动态地提供预览,或导致已高速缓存的预览窗口被渲染。
在至少某些实施例中,预览窗口可以还被网络站点用于定义工具栏按钮和关联的行为。例如,在所示和所描述的实施例中,网络应用包括媒体播放器应用,并且三个工具栏按钮出现在被覆盖在预览窗口1004上的用户接口手段1006中。按钮包括暂停按钮、停止按钮和播放按钮。在至少某些实施例中,工具栏按钮可以使用客户端代码来实现,所述客户端代码避免了不得不与远程服务器进行交互。例如,可以为特定网络页面注册各个按钮。为每个按钮配置和指派了ID。为所有按钮事件注册一个“监听器”。当按钮被按下时,事件被生成并被传输回浏览器,浏览器然后将事件传播到已注册的事件监听器。事件包含被按下的按钮。这实现了按钮之间的歧义消除。
实现示例
在一个实现示例中,网络开发人员可以使用下面的JavaScript函数来更新跳转列表中的定制列表和更新任务栏覆盖图标:
列表创建行为
这定义列表名称,该列表名称是定制的列表的标题。该值将作为列表表头被显示。可选地,可以提供包含项目的名称、该项目的URI值和关联于该项目的图像的项目列表来初始地填充列表。当浏览器在网络应用模式下被启动时,可以支持该功能。
列表更新行为
提供列表项目值来更新特定列表项目。列表项目值包括该项目的名称、该项目的URI和关联于该项目的图像。当浏览器在网络应用模式下被启动时,可以支持该功能。
设置覆盖图标
指定URI值,该URI值指向将被用作用于现有任务栏图标的覆盖的图标。当浏览器在网络应用模式下被启动时,可以支持该功能。
设置预览图像
URI,其指向应当被用作用于任务栏预览图像(或拇指栏预览)的图形表示的图像。当用户用鼠标左键在任务栏图标上点击时,显示该预览。
清除覆盖图标
这移除任务栏图标上的现有覆盖图标。当浏览器在网络应用模式下被启动时,可以支持该功能。
网络开发人员可以使用以下JavaScript函数来定义和修改被显示在特定网络站点的任务栏预览窗口中的一组工具栏按钮。
工具栏按钮安装
使用工具提示和图像URL指定按钮ID的列表。当用户选择工具栏按钮时,事件被传递给网络站点进行处理。网络站点可以然后消除按钮事件之间的歧义。当站点模式窗口被打开时,该调用被执行至少一次,以便使按钮被显示。当浏览器在网络应用模式下被启动时,支持该功能。
更新图像
这识别了已指定的按钮ID的状态和可见性。可以启用或禁用该状态。在至少某些实施例中,默认地,所述按钮被启用。视图可以被显示或隐藏。默认地,已定义的按钮是可见的。当浏览器在网络应用模式下被启动时,支持该功能。
图11是描述根据一个或多个实施例的安装方法中的步骤的流程图。方法可以被任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,方法的各方面由在客户端设备上执行的软件执行。
步骤1100选择网络站点集成特征。该步骤可以以任意合适的方式被执行。通常,当用户选择手段或以其它方式采取行动来发起网络应用安装过程时,该步骤被执行。例如,用户可以选择使其能够集成网络应用的链接。下面提供了这可以如何被完成的特定示例。
步骤1102在客户端设备上创建网络应用文件——这里定名为“.webapp”文件。该文件当初始被创建时可以构成构件或壳,其中,随后可以使用从网络站点或代表网络站点接收的内容和信息填充该器具或壳。步骤1104使用在本示例中包括跳转列表的网络应用内容填充网络应用文件。该步骤可以以任意合适的方式被执行。例如,该步骤可以通过使用上面描述了其示例的JavaScript API来执行。可替换地或另外,该步骤的各方面可以通过使用例如HTML的标记来执行。
已在客户端上创建和填充了网络应用文件,网络应用现在可以在任意合适的时间被启动。
图12示出了描述根据一个或多个实施例的方法的步骤的流程图。所述步骤可以结合任意合适的硬件、软件、固件或其组合来执行。在至少某些实施例中,所述方法可以由在客户端上执行的软件关联于在服务器上执行的软件来执行。
步骤1200接收关联于跳转列表的用户动作。任何合适的用户动作可以被接收,上面提供了其示例。例如,在至少某些实施例中,可以接收到关于具体显示的跳转列表或未被显示的跳转列表的用户动作。可替换地或另外,可以接收到关于显示的关联于网络应用的图标的用户动作。图标可以例如在桌面任务栏或任意其它合适的位置处被显示。上面提供了所述动作的示例。
步骤1202呈现了与用户动作关联的内容。例如,呈现的内容可以包括跳转列表其自身。可以响应于上面提供了其示例的任意合适类型的用户动作而呈现跳转列表。呈现的内容可以还包括除跳转列表其自身之外的内容。例如,可以响应于例如在任务栏图标上的左键点击的用户动作而呈现定制的预览窗口。例如,用户可以选择创建或创作新电子邮件消息。
图13是描述根据一个或多个实施例的方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,该方法的各方面由在客户端上执行的软件和在支持网络站点的服务器上执行的软件来执行。相应地,图中的一列被定名为“客户端”,以便指明那些由客户端或在客户端处执行的步骤,以及一列被定名为“网络站点”,以便指明那些由网络站点或代表网络站点执行的步骤。
步骤1300接收与动态跳转列表项目关联的信息。任意合适的跳转列表项目可以充当信息被接收的基础,上面提供了其示例。步骤1302生成通知,以及步骤1304将通知发送到执行网络应用的客户端设备。
步骤1306接收通知,以及步骤1308为用户提供可识别的通知。可以提供任意合适类型的可识别通知。例如,在至少某些实施例中,可识别通知可以是例如覆盖图标或闪烁的网络应用图标的视觉可识别通知。可替换地或另外,可识别通知可以包括例如振铃或蜂鸣的听觉可识别通知。
已考虑了与跳转列表集成关联的各种实施例,现在考虑这样的讨论:根据一个或多个实施例,网络站点可以如何变得被“固定”到例如任务栏的桌面特征。
任务栏固定
存在各种在其中网络应用可以变得与客户端桌面或任务栏集成的方式。在至少某些实施例中, 网络应用可以通过拖放操作与桌面集成。可替换地或另外,网络应用可以经由网络浏览器的菜单选择被集成。可替换地或另外,网络应用可以通过关联的网络站点其自身被集成。下面,这些实施例的每个在其自己的标题下被讨论。
通过拖放操作集成
在一个或多个实施例中,网络应用可以通过拖放操作与桌面或任务栏集成。作为示例,考虑图14。此处,大体上在1400处示出了客户端桌面。网络浏览器窗口1402包括在其中显示了网络站点URL的地址栏1404。关联于URL。示出了称为“收藏图标”的图标1406。另外,桌面1400包括任务栏1408。
图15示意地示出了根据一个或多个实施例的拖放操作。在本示例中,光标已被放在收藏图标1406上。通过在收藏图标上左键点击并将其拖到任务栏1408,关联的网络应用——在此情况下为消息板应用——可以被固定到桌面的任务栏1408。拖放操作开始如上面描述的集成网络应用的集成过程,由此将其固定到任务栏。
在一个或多个实施例中,如果与网络应用关联的网络页面在浏览器中打开了标签,则在收藏图标被放到任务栏上之后,关联的标签可以从浏览器的窗口消失。可替换地或另外,标签可以不被移除,但作为代替,标签的内容可以用“新标签”页代替。在其中单一标签在浏览器窗口中被打开的情况下,在收藏图标被固定到任务栏之后,浏览器窗口将消失。在这一点上,包含在原始站点中的标签可以在浏览器关闭之前但在网络应用被固定之后被移除。另外,在至少某些实施例中,当拖动操作进入任务栏时,可以呈现“固定到任务栏”形式的工具提示,以便通知用户该固定功能。
进一步地,被固定到任务栏的网络站点或网络应用的状态可以在网络应用第一次被实例化时被迁移到新显示的窗口。这将允许用户不必为能够使用应用而重新输入针对站点的证书。
已将网络站点或网络应用固定到任务栏并且完成了如上面所描述的安装过程,网络应用现在可以通过简单地在关联的收藏图标上进行点击来从任务栏启动。
图16是描述根据一个或多个实施例的安装方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合执行。在至少一些实施例中,该方法的各方面由在客户端上执行的软件执行。
步骤1600接收对关联于网络应用安装的拖放操作的指示。该步骤可以以任意合适的方式来执行。在上面描述的实施例中,当用户拖放关联于网络站点的例如收藏图标的图标以指示网络站点期望将关联的网络应用与其桌面集成时,该步骤被执行。例如,用户可以将收藏图标拖放到任务栏、快速启动区域或例如桌面画布的桌面上某个其它位置处。步骤1602响应于拖放操作而创建网络应用文件。在所示和所描述的实施例中,初始创建的网络应用文件是还不包含来自关联的网络站点的信息的构件或壳,所述信息例如是跳转列表任务、起始URL、收藏图标或诸如静态跳转列表任务、可替换起始URL、可替换收藏图标等的其它属性。这些可以稍后通过如上面所描述的新标记和/或JavaScript API来添加。应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以利用除使用JavaScript API的那些之外的技术。
通过浏览器菜单选择集成
在一个或多个实施例中,网络应用可以经由网络浏览器的菜单选择被集成。作为示例,考虑图17。此处,大体上在1700处示出了客户端桌面。网络浏览器窗口1702包括显示了URL的地址栏1704。另外,桌面1700包括任务栏1706。示出了页面菜单形式的浏览器菜单项1708。通过下拉页面菜单以暴露菜单选择1710,显示了菜单项或选择“添加到开始菜单”。通过选择该选项,网络站点或网络应用可以被添加到桌面的开始菜单,并且安装过程可以如上面描述的那样被发起。可替换地或另外,可以显示“添加到任务栏”菜单项或选择以实现安装过程的发起。
图18是描述根据一个或多个实施例的安装方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,该方法的各方面由在客户端上执行的软件执行。
步骤1800接收浏览器菜单选择。该步骤可以以任意合适的方式被执行。在上面描述的实施例中,当用户导航到特定网络站点、下拉浏览器菜单以暴露菜单选择并然后通过选择与发起关联于网络站点的网络应用的安装关联的菜单项采取动作时,该步骤被执行。
步骤1802响应于接收到浏览器菜单选择而创建网络应用文件。在所示和所描述的实施例中,初始创建的网络应用文件是还不包含来自关联的网络站点的信息的构件或壳,所述信息例如是跳转列表任务、起始URL、收藏图标等。这些可以稍后通过如上面所描述的新标记和/或JavaScript API来添加。应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以利用除使用JavaScript API的那些之外的技术。
通过关联的网络站点集成
在一个或多个实施例中,网络应用与桌面的集成可以从网络页面发生。在这些实施例中,特定网络站点可以选择通过使用例如JavaScript的代码的集成活动,以便将网络应用集成到桌面。这允许网络站点控制集成发起手段。
作为示例,考虑图19。此处,大体上在1900处示出了客户端桌面。网络浏览器窗口1902包括在其中显示了URL的地址栏1904。另外,桌面1900包括任务栏1906。进一步地,显示在浏览器窗口1902中的网络页面包括命名为“添加到桌面”的链接1908。通过在该链接上点击,用户可以发起如上面所描述的网络应用安装过程。
在至少某些实施例中,在链接选择发生之后,可以呈现模态确认对话框,该模态确认对话框解释用户正在采取的用户动作以及到何处访问其新创建的快捷方式。该确认对话框可以向用户呈现正被呈现的页面的源URL。被显示的URL可以包含网络站点的全路径。这可以允许用户验证其希望安装的网络站点正从正确的站点提供。这可以缓解关联于恶意子目录的情况。
在各种实施方式中,检查将与桌面集成的网络站点的URL,以便确认其位于与包含其的网络页面相同的域中。如果不是,则可以显示错误,并且操作失败。在用户确认操作之后,可以移除对话框,并且网络应用窗口可以显示正确的URL。
图20是描述根据一个或多个实施例的安装方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,该方法的各方面由在客户端上执行的软件执行。
步骤2000显示带有集成链接的网络页面。该步骤可以以任意合适的方式被执行,上面提供了其示例。步骤2002接收对集成链接的选择。步骤2004响应于接收到链接选择而创建网络应用文件。在所示和所描述的实施例中,初始创建的网络应用文件是还不包含来自关联的网络站点的信息的构件或壳,所述信息例如是跳转列表任务、起始URL、收藏图标等。这些可以稍后通过如上面所描述的新标记和/或JavaScript API来添加。应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以利用除使用JavaScript API的那些之外的技术。
在至少某些实施例中,可以为用户提供关联于网络应用的多个窗口或标签的视觉表示。作为示例,考虑图21。此处,桌面2100包括在其上固定了网络应用图标的任务栏2102。光标已被用于通过在图标上进行点击来启动网络应用。在本示例中,假设用户已使用网络应用的起始页面导航到多个页面。网络应用可以实现示出用户已导航到的网络页面集合2104的可视化展示。具体地,在本示例中,集合2104包括用于网络应用的起始页面2106,以及用户已从起始页面导航到的后续页面2108和2110。
已考虑了各种网络应用集成技术,现在考虑对用户证书可以如何与针对网络应用的登录会话相关联的讨论。
关联证书和登录会话
各种实施例使与使用登录或证书信息的网络站点关联的一个或更多网络应用能够以跨网络应用的不同实例保存登录或证书信息的方式被集成。
当浏览器导航到使用登录或证书信息的网络站点时,登录或证书信息可以被手动输入或从证书存储中检索出。证书存储可以包含针对特定URL的,作为示例并且不作为限制,诸如用户名和密码的用于登录信息或用户证书。同一URL或网络站点可以具有多个条目,每个条目关联于不同的用户。类似地,证书存储可以包含针对多个URL的用户登录信息或证书。
在至少某些实施例中,与用户登录进的网络站点相关联的网络应用可以如上面描述的那样被集成到桌面并与之进行交互。当所述网络应用被集成时,过程确定网络应用关联于什么网络站点以及登录进该网络站点的用户。过程在证书存储中搜索关联的登录信息和/或证书。过程可以然后在用户、所创建的网络应用和相关证书之间创建关联。
作为示例,考虑图22,其示出了根据一个或多个实施例网络站点、证书存储与网络应用之间的关系。浏览器2200显示使用登录信息的网络站点。除显示URL之外,显示了图标2210,该图标可以被选择以便进行如上面所描述的网络应用的集成。证书存储2220包括条目,所述条目包含针对多个网络站点的登录信息。一个所述条目在2230处示出。这里,条目包括网络站点URL、用户名和密码。尽管图22将登录信息示为包括用户名和密码,但应当认识到和理解,可以使用其它形式的登录信息或证书。
在一个或多个实施例中,图标2210可以被选择并拖放到任务栏2235上,如上面描述和由图标2240所示的那样。该过程发起关联于网络站点的网络应用的集成。在该选择被接收后,过程确定哪个用户当前登录到了网络站点并在证书存储2220中搜索关联的证书。然而应当认识到和理解,在不脱离所要保护的主题的精神的情况下,可以以其它方式确定和/或获取该关联的证书。
当获取到用户的证书和/或登录信息时,在网络应用证书存储2250中进行证书与网络应用之间的关联。网络应用证书存储2250可以包含一个或多个条目,所述条目包含与网络站点、网络应用和有关证书之间的关联相关的数据。
例如,图22示出了条目2260,该条目被示为包含属于网络站点“a.com” 针对用户jsmith的登录信息。除URL、用户名和密码信息之外,条目2260还包括可以用于将网络应用与对应证书相关联的应用ID或“AppID”。网络应用证书存储2250还包含针对同一网络站点“a.com”但不同用户bsmith的第二条目2270。该机制允许将来自同一网络站点的各个网络应用与不同用户及其关联的证书相关联。
尽管图22中未示出,但可以将各种形式的用户登录信息和/或证书与网络应用相关联。例如,在一个实施例中,关联可以包含回指到证书存储2220中的信息的指针或引用。在另一实施例中,网络应用证书存储2250可以包括从证书存储复制的信息。在又另一实施例中,可以将与用户名和密码分离或除其之外的证书与网络应用相关联。例如,生物统计信息可以形成在网络应用证书存储中创建的关联的基础。
已描述了网络站点、证书存储和网络应用之间的关系,现在针对使用关联证书的网络站点考虑网络应用可以如何被集成。
使用关联证书创建和启动网络应用
图23示出了描述根据一个或多个实施例的方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,方法的各方面由在客户端上执行的软件执行。
步骤2300接收对网络站点集成特征的选择。上面提供了这可以如何来完成的示例。如上面描述的,网络站点集成特征与网络应用在客户端桌面上的安装相关联。响应于接收到对网络站点集成特征的选择,步骤2302发起如上面描述的安装过程以在客户端桌面上安装网络应用。具体地,客户端上该过程的发起可以包括如上面描述的创建网络应用文件。步骤2304获取与关联于网络站点的当前网络会话相关联的会话信息。该步骤可以以任意合适的方式来执行。例如,在一个实施例中,可以使用渲染关联于网络站点的内容的浏览器与安装过程之间的共享存储器部件来获取会话信息。在另一实施例中,网络站点可以自动在网络站点集成特征被选择之后转发会话信息。在又另一实施例中,会话信息可以被浏览器存储并随后被查询。
响应于获取会话信息,步骤2306获取与会话信息相关的证书。在一个实施例中,可以在证书存储中查询与用户登录进的网络站点相关的登录和/或证书。例如,可以在证书存储中查询与网络站点和当前会话的用户关联的用户名和密码。步骤2308将与会话信息相关的证书和/或登录信息与网络应用相关联。该步骤可以以任意合适的方式来执行。例如,证书可以被复制到网络应用证书存储以便将来引用。可替换地或另外,指向证书存储中的证书的指针或引用可以被放入网络应用证书存储中。可以至少部分上基于会话信息和/或证书生成标识号,以便为每个网络应用实例和相关证书和/或登录信息创建唯一的ID。可以将该信息添加到网络应用证书存储条目,以便将获得的证书和/或登录信息与网络应用相关联。然而应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以使用任意合适的技术将证书与网络应用相关联。
如上面描述的,针对每个网络应用实例的唯一ID允许多个网络应用实例与同一URL或网络站点相关联,其中,每个实例与不同用户证书相关联。
图24是描述根据一个或多个实施例的方法中的步骤的流程图。该方法可以由任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,方法的各方面由在客户端上执行的软件执行。
步骤2400接收对要启动网络应用的选择。该步骤可以以任意合适的方式来执行。例如,如上面描述的,可以从图标固定其上的任务栏进行图标选择。可替换地或另外,可以从桌面开始菜单或系统工具栏进行选择。当接收到对要启动网络应用的选择时,步骤2402检索与网络应用关联的证书。例如,在一个或多个实施例中,可以使用AppID来引用网络应用证书存储以便检索针对当前登录的用户的登录信息。步骤2404检索关联于网络应用和相关证书的URL和/或FormID。当获取到步骤2402和2404中描述的信息时,步骤2406在没有用户介入的情况下自治地登录进关联的网络站点。在登录进网络站点后,步骤2408如之前在上面描述的那样导航到起始URL。
已描述了与证书关联的网络应用如何被集成和启动,现在考虑对具有关联证书的多个网络应用实例的讨论。
具有关联证书的多个网络应用实例
图25示出了与证书关联的多个网络应用实例的示例。网络应用证书存储2500包括属于针对网络站点的网络应用和关联证书的数据。包括在网络应用证书存储2500中的是条目2510和2520,每个针对不同的用户。如图25中所示,条目2510属于网络站点“a.com”,并且包含用于登录进关联网络站点的例如用户名jsmith和密码bulldogs的额外信息。条目2510包括AppID,该AppID用于将条目与网络应用2530关联。条目2520也属于网络站点“a.com”,但包含针对用户bsmith的登录信息并与网络应用2540关联。尽管图25将条目示为包含URL/FormID、用户名、密码和AppID,但应当认识到和理解,在不脱离所要保护的主题的精神的情况下,可以使用不同形式的关联和证书信息。由此,网络应用证书存储中的两个或多个数据条目可以包含标识被集成到客户端桌面的不同网络应用的数据,并且每个具有关联于同一网络站点的不同用户证书。
在一个或多个实施例中,关联于同一网络站点的一个或多个网络应用可以同时存在或被激活。例如,软件模块可以被配置为使网络应用能够经由桌面工具栏被启动,以及当网络应用被启动时使用关联证书自动地将关联用户登录进网络站点。除启动单一网络应用外,软件模块可以被配置为在选择启动第二网络应用时,实现使用针对同一网络站点或不同网络站点的不同用户证书启动第二网络应用。
例如,图25的两个网络应用2530、2540同时被激活。如上面描述的,每个都属于网络站点“a.com”,但具有与其关联的不同证书。当网络应用2530被选择并启动时,其自治地使用关联于用户jsmith的证书登录到网络站点“a.com”。类似地,当网络应用2540被选择并启动时,其使用关联于用户bsmith的证书登录到网络站点“a.com”。由此,关联于同一网络站点的多个网络应用实例可以被同时激活并关联于不同证书。
已描述了创建和启动具有关联证书的网络应用的概念,现在考虑对网络应用任务会话的讨论。
网络应用任务会话
在一个或多个实施例中,可以创建任务会话以便使关联于网络应用的状态信息能够被保存到系统。状态信息作为示例并且不作为限制可以包括会话cookie、JavaScript状态、DOM状态、表单状态、tab和窗口定位、窗口尺寸、URL、历史等。
因为关联于特定任务会话的状态信息被保存,所以网络应用可以被关闭并且稍后被重新打开以便恢复或重新水化(re-hydrate)针对网络应用的状态信息。可以自动地或通过手工选择过程保存状态信息。
作为示例,考虑图26。此处,桌面2600包括正被用于计划旅行的网络应用窗口2602。桌面2600还包括任务栏2604和跳转列表2606。网络应用目录2608提供可以用于存储任务会话状态信息的存储设施。在所示和所描述的实施例中,网络应用目录2608在系统的用户空间中被创建。在本示例中,用户具有两个已保存的任务会话——一个关联于波多黎各旅行,以及一个关联于阿拉斯加旅行。
在运行时,当用户与网络应用进行交互时,用户可以通过任意合适的手段选择创建和保存任务会话。在所示的示例中,跳转列表2606具有包括两个条目的菜单项“任务”。第一个条目“新任务会话”使用户能够创建新任务会话。第二个条目“保存当前任务”使用户能够保存当前任务。通过保存当前任务,关联于任务的状态信息被持久化到网络应用目录2608。命名为“打开任务会话”的菜单项包含条目,所述条目使用户能够恢复或重新水化已被持久化到网络应用目录2608的先前任务会话。这里存在两个先前提到、先前保存的任务会话——波多黎各旅行和阿拉斯加旅行。
如从上面示例中指出的,可以针对各个网络应用创建和保存多个任务会话。当任务会话被保存时,关联于网络应用的应用ID可以与任务会话一起被保存。应用ID可以然后用于确定哪个网络应用将消费关联于保存的任务会话的信息。
可以使用任意合适的技术和方法使任务会话能够被创建和保存。在至少某些实施例中,系统可以利用或使用关联于系统的网络浏览器的崩溃恢复系统。在此情况下,崩溃恢复功能可以例如当用户选择保存当前任务或创建新任务会话时被触发。崩溃恢复功能可以创建“appdata”文件,该“appdata”文件可以驻留在用户的应用数据目录中,并且可以用于保存关联于任务会话的信息。本领域的技术人员将理解崩溃恢复系统的具体操作。相应地,为简洁起见,本文中未描述所述系统。
图27是描述根据一个或多个实施例的、用于保存任务会话状态信息的方法中的步骤的流程图。所述步骤可以结合任意合适的硬件、软件、固件或其组合被执行。在至少某些实施例中,所述方法可以由在客户端上执行的软件关联于在服务器上执行的软件来执行。
步骤2700接收关联于保存任务会话状态信息的输入。任意合适的输入可以被接收。例如,接收的输入可以包括从用户接收的输入。可替换地或另外,输入可以包括某种类型的自动、程序输入。在至少某些实施例中,用户输入可以经由跳转列表被接收。可替换地或另外,用户输入可以经由快捷键被接收。在所示和所描述的实施例中,用户输入指示用户希望保存关联于网络应用的任务会话状态信息。步骤2702在网络应用目录中创建或访问任务会话数据结构。任务会话数据结构用于保存任务会话状态信息。步骤2704将任务会话状态信息保存在数据结构中。该步骤可以以任意合适的方式执行。例如,该步骤可以在用户选择保存任务会话状态信息时被执行。可替换地或另外,该步骤可以在用户与网络应用交互期间定期被执行。在至少某些实施例中,步骤2702和2704可以使用网络浏览器的崩溃恢复系统来执行。然而应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以使用其它技术。
图28是描述根据一个或多个实施例的、用于恢复其状态信息已被保存的任务会话的方法中的步骤的流程图。所述步骤可以结合任意合适的硬件、软件、固件或其组合被执行。在至少某些实施例中,所述方法可以由在客户端上执行的软件关联于在服务器上执行的软件而执行。
步骤2800接收用户输入,该用户输入关联于恢复其状态信息先前已被保存的任务会话。步骤2802在网络应用目录中访问任务会话数据结构。如上面指出的,任务会话的状态信息被保存在任务会话数据结构中。步骤2804从网络应用目录检索任务会话状态信息。步骤2806启动关联的网络应用并使用从网络应用目录检索出的任务会话状态信息恢复任务会话。
已描述了保存和重用任务会话状态信息的概念,现在考虑转换可以如何在网络应用与浏览器之间被执行。
网络应用与浏览器之间的转换
在一个或多个实施例中,网络应用可以转换为浏览器体验以便能够利用浏览器功能,所述浏览器功能不可以由实现网络应用的网络应用模式浏览器提供。应当记得,这是因为,在某些实施例中,网络应用模式浏览器是使开发人员能够提供更多站点特定体验的经削减或比chrome少的浏览器。被从网络应用模式浏览器中排除的所述其它功能可以例如包括收藏夹、工具栏和/或其它附加组件。
在至少某些实施例中,关联于各个标签的内容和状态可以被从网络应用迁移到网络浏览器。可替换地或另外,关联于多个标签的内容和状态和/或网络应用的全部内容和状态可以被从网络应用迁移到网络浏览器。可替换地或另外,关联于各个标签的会话可以被从网络应用迁移到浏览器。
考虑这样的情形,其中,用户已从其桌面启动网络应用,已导航到其中,并且在新标签中打开一个或多个链接。作为示例,考虑图29。此处,桌面2900包括网络应用窗口2902,网络应用窗口2902包括正被用于制定旅行计划的网络应用的部分。桌面2900还包括任务栏2904,其中,网络应用例如通过在已被固定到任务栏的关联图标上进行点击而从该任务栏被启动。网络应用窗口2902包括三个标签2906、2908和2910。在此情况下,用户已选择标签2906,并且具有用户可以打开的链接“点击这里搜索航班”。
现在假设用户在关联链接上进行点击来打开该链接,并且,当打开链接时,决定她想为显示在标签2906中的网络站点创建收藏夹项。在此情况下,用户可以打开工具菜单2912,或使用某种其它用户接口手段,并且选择选项以便在关联的网络浏览器中打开标签的内容。作为示例,考虑图30,该图使用与图29相同的数字。
此处,工具菜单2912已被打开为暴露其内容3000。在该示例中,对于用户有两个选择可用——“在浏览器中打开标签…”和“在浏览器中打开网络应用…”。第一个选择使用户能够在网络浏览器中打开所选择标签的内容。当所选择标签在网络浏览器中被打开时,该标签的内容和状态被迁移到网络浏览器。网络浏览器可以是具有打开的实例的那个,或者可替换地是被启动的那个。第二个选择使用户能够在网络浏览器中打开网络应用的全部内容。当这被完成时,网络应用的内容和状态被迁移到网络浏览器。
可以使用任意合适的技术将内容和状态从网络应用标签或网络应用迁移到网络浏览器。在至少某些实施例中,迁移通过使用例如上面描述的网络浏览器的崩溃恢复系统发生。特别地,当用户指示希望将内容和状态从网络应用迁移到网络浏览器时,内容和状态可以例如通过写appdata文件而被写入系统盘,其中,该appdata文件包括将被迁移的相关数据。
另外,在至少某些实施例中,可以使用共享存储器来迁移通常不被网络浏览器的崩溃恢复系统使用的信息或数据。例如,例如证书和会话cookie的数据可以被存储在共享存储器中,并且该共享存储器可以用于使所述数据能够被网络浏览器使用。
一旦用户选择显示在工具菜单2912中的特定选项,则信息和数据可以被迁移到网络浏览器的当前或新实例,并且网络应用窗口2902中的关联标签可以被关闭。在一个或多个实施例中,如果信息或数据正被从其迁移的标签是网络应用中打开的唯一标签,则在迁移完成之后网络应用可以被关闭。
当网络应用和网络浏览器跨过程边界地在不同过程中执行时,上面描述的方法运行良好。即,使用崩溃恢复系统和共享存储器的迁移非常适合跨过程边界。然而,在某些情况下,过程边界不必被跨过。相反,网络应用和随后的网络浏览器功能可以从同一过程内暴露。具体地,在此情况下,网络浏览器用户接口可以结合网络应用窗口2902被实例化和使用,并且通过网络应用模式浏览器不可用的功能可以通过网络浏览器用户接口被打开和使其可访问。在运行时,一种实现此的方法如下。网络应用首先生成一些崩溃恢复文件。新浏览器被启动并从崩溃恢复文件加载崩溃恢复信息。该信息然后被用于配置新浏览器的状态。当用户在新浏览器内操作时,他或她将经由浏览器的标准用户接口具有对全部浏览器功能的访问。
图31示出了一个实施例,在其中,用户已选择将关联于标签的内容和状态迁移到新浏览器实例。已使用与图29示例相同的数字。这里,假设用户已针对标签2906选择“在浏览器中打开标签”菜单选择(图30)。作为响应,该标签的内容和状态被迁移到网络浏览器的新实例,其中,该网络浏览器新实例的关联用户接口窗口在3100处示出。用户接口窗口3100包括地址栏3102和与已被从网络应用迁移的标签关联的标签3104。在本示例中应当指出,标签2906(图30)已在网络应用窗口2902中被关闭,但因为多个标签是打开的,所以网络应用保持打开。
图32是描述根据一个或多个实施例的方法中的步骤的流程图。所述步骤可以结合任意合适的硬件、软件、固件或其组合来执行。在至少某些实施例中,所述方法可以由在客户端上执行的软件关联于在服务器上执行的软件而执行。
步骤3200接收关联于将网络应用内容和/或状态迁移到网络浏览器的用户输入。任意合适的输入可以被接收。例如,在至少某些实施例中,可以通过由网络应用暴露的工具菜单接收输入。步骤3202将网络应用内容和/或状态迁移到网络浏览器。可以使用任意合适的技术来迁移网络应用内容和/或状态。另外,处于任意合适的粒度级别的内容和/或状态可以被迁移。例如,关联于网络应用的各个标签或多个标签的内容和/或状态可以被迁移。可替换地或另外,网络应用的全部内容可以被迁移。进一步地,在至少某些实施例中,迁移可以跨过程边界而发生。可替换地或另外,迁移可以在同一过程内发生。
图33是描述根据一个或多个实施例的方法中的步骤的流程图。所述步骤可以结合任意合适的硬件、软件、固件或自组合来执行。在至少某些实施例中,所述方法可以由在客户端上执行的软件关联于在服务器上执行的软件而执行。
步骤3300接收关联于将网络应用内容和/或状态迁移到网络浏览器的用户输入。任意合适的输入可以被接收。例如,在至少某些实施例中,可以通过由网络应用暴露的工具菜单接收输入。步骤3302实例化网络浏览器用户接口。步骤3304使用网络浏览器用户接口暴露功能。暴露功能包括实现通过网络浏览器用户接口与网络应用内容进行交互。在至少某些实施例中,所暴露的功能包括通过网络应用或网络应用模式浏览器不可用并且可用于与web应用内容进行交互的功能。上面提供了所述功能的示例。在其中网络应用内容和/或状态的迁移在同一过程内发生的情况下,图33的方法可以是有用的。
图34是描述根据一个或多个实施例的方法中的步骤的流程图。所述步骤可以结合任意合适的硬件、软件、固件或其组合执行。在至少某些实施例中,所述方法可以由在客户端上执行的软件关联于在服务器上执行的软件而执行。
步骤3400接收关联于将网络应用内容和/或状态迁移到网络浏览器的用户输入。任意合适的输入可以被接收。例如,在至少某些实施例中,可以通过由网络应用暴露的工具菜单接收输入。步骤3402保存关联于网络应用内容的数据。该步骤可以以任意合适的方式执行。例如,在至少某些实施例中,数据中的至少某些可以被写到系统盘。可以使用任意合适的记录将数据写到系统盘。例如,在至少某些实施例中,可以使用网络浏览器的崩溃恢复系统将数据写到系统盘。进一步地,在至少某些实施例中,步骤3402可以通过使用在网络应用与网络浏览器之间被共享的共享存储器来执行。
步骤3404探知网络浏览器是否是打开的。如果网络浏览器是打开的,则步骤3406使用已保存的数据在网络浏览器中呈现网络应用内容。另一方面,如果网络浏览器不是打开的,则步骤3408启动网络浏览器,并且返回至步骤3406以便使用保存的数据来呈现网络应用内容。
从浏览器创建暂时网络应用
各种实施例实现一个或多个所谓的暂时网络应用的创建。在至少某些实施例中,暂时网络应用可以在不如上面描述的那样将暂时网络应用固定到任务栏或将暂时网络应用的关联文件或标记集成到客户端桌面的情况下被创建。例如,暂时网络应用可以没有任何提供使其能够被启动或重新启动的方法的、集成到客户端桌面的用户接口手段,例如开始菜单中的快捷键、客户端任务栏中的快捷键图标等。然而在所述情况下,用户可以从其关联的网络站点启动暂时网络应用,并且如果网络应用已如上面描述那样被安装或集成,则用户可以访问由该网络应用提供的相同功能。在使用暂时网络应用之后,其可以然后被用户关闭。在至少某些实施例中,一旦暂时网络应用已被关闭,则用户不再可访问网络应用的该特定示例,由此致使暂时网络应用不可从客户端桌面工具栏或开始菜单重新启动。一种达到此的方法是,删除用户初始从关联网络站点启动网络应用时针对该网络应用创建的文件或过程。在某些实施例中,暂时网络应用可以被转换为安装的网络应用,由此提供从客户端桌面对网络应用的未来访问。
作为示例,考虑图35,其示出了暂时网络应用与浏览器之间的关系。这里,浏览器3500通过标签式系统实现对多个网络页面的访问,其中,标签3510关联于网络站点“任意搜索页面”,以及,标签3520关联于“第二打开页面”。在一个或多个实施例中,可以从打开的网络页面创建暂时网络应用。在图35中,通过用户选择标签3510并将该选择拖放到桌面上浏览器3500之外,生成或创建了暂时网络应用3530。当这发生时,暂时网络应用文件可以在临时位置被创建。
然而应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以以其它方式生成暂时网络应用。例如,浏览器3500可以具有下拉菜单,该下拉菜单用于便利网络页面的选择以及随后关联的暂时网络应用的生成。
在本文档的上下文中,暂时网络应用是没有以已在本文档上面描述的方式安装在客户端系统上的网络应用。然而,网络站点可以仍然在暂时网络应用中执行和提供访问与可在已安装的网络应用中执行的相同的功能。例如,网络站点可以修改暂时网络应用的独立跳转列表,设置和清除覆盖图标等。可替换地或另外,暂时网络应用可以支持与已安装网络应用相同的行为,例如,如上面描述的,提供从暂时网络应用内打开的独立标签或窗口集合。
图36示出了描述根据一个或多个实施例的方法中的步骤的流程图。所述方法可以结合任意合适的硬件、软件、固件或其组合来执行。在至少某些实施例中,方法的各方面可以由例如图1中的客户端设备上适当配置的网络浏览器和/或软件模块实现。
步骤3600接收对网络站点的选择,其中,网络应用可以从该网络站点获取到。这可以以任意合适的方式完成,例如通过对标签式网络浏览器上的标签的选择,通过下拉菜单等。当接收到对网络站点的选择时,步骤3602接收创建网络应用作为客户端设备上临时网络应用的输入。在一个或多个实施例中,这可以包括接收消息或调用,所述消息或调用包含可以用于生成网络应用的请求或其它信息。在其它实施例中,这可以包括接收由用户拖放关联于网络站点的某个标记生成的输入。步骤3604创建与所选网络站点关联的暂时网络应用。在某些实施例中,创建暂时网络应用生成网络应用文件和/或过程而不在客户端的桌面或开始菜单上将其或任意关联的标记集成。例如,关联文件可以被保存在临时文件位置中,所述临时文件位置与集成的网络应用文件被放置的位置不同。另外,在至少某些实施例中,暂时网络应用的创建可以包括将网络站点的状态从浏览器传输到暂时网络应用。
图37示出了描述根据一个或多个实施例的方法中的步骤的流程图。所述方法可以结合任意合适的硬件、软件、固件或其组合来实现。在至少某些实施例中,方法的各方面可以由例如图1中的合适配置的网络浏览器和/或软件模块来实现。
步骤3700接收关闭暂时网络应用的输入。该步骤可以以任意合适的方式执行。例如,在一个实施例中,这可以包括接收来自用户选择打开的暂时网络应用上的关闭按钮的输入。在另一实施例中,这可以包括接收基于用户选择暂时网络应用下拉菜单上的关闭选项的输入。当接收到用于关闭暂时网络应用的输入时,步骤3702关闭暂时网络应用。关闭暂时网络应用可以包括删除或移除暂时网络应用的关联文件和过程。由此,当关闭暂时网络应用时,在没有如上面描述那样再次访问该暂时网络应用或如下面描述那样将该暂时网络应用安装为非暂时网络应用的情况下,用户不再可访问该暂时网络应用的功能。
已描述了暂时网络应用的创建和删除,现在考虑根据一个或多个实施例暂时网络应用可以如何被转换为固定的或安装的网络应用。
将暂时网络应用转换为安装的网络应用
在一个或多个实施例中,暂时网络应用可以被转换为安装的或集成的网络应用以允许在网络应用已被关闭之后进行持续访问。一旦被转换,暂时网络应用可以被看作非暂时网络应用。
图38示出了包括跳转列表的暂时网络应用。任务栏3800示出了客户端设备上打开着并且正运行着的多个程序。暂时网络应用3810是源自程序3840的网络应用。暂时网络应用3810关联着跳转列表3820。如在安装的或集成的网络应用的情况下一样,跳转列表3820具有关联于安装的网络应用的全部可能的功能。另外,跳转列表3820包含命名为“将该程序固定到任务栏”的项3830。选择该选项将网络应用固定到客户端的任务栏,由此,如上面描述的那样将该网络应用和关联的用户接口手段安装在客户端的桌面上。这使得现在的非暂时网络应用能够从桌面被重新启动。然而,应当认识到和理解,在不脱离所要保护的主题的精神和范围的情况下,可以使用任意合适的技术将暂时网络应用转换为非暂时网络应用。例如,在某些实施例中,暂时网络应用可以被添加到客户端桌面的开始菜单以便集成和安装网络应用。在另一实施例中,暂时网络应用可以具有下拉菜单,该下拉菜单具有用于发起安装过程的选项。当然,可以使用多种方式将暂时网络应用转换为非暂时网络应用。
网络应用超级主页按钮
当与网络应用进行交互时,用户可能导航到除与关联于网络应用的网络站点直接关联的域之外的域。例如,用户可以发起电子邮件网络应用,并且通过跟随外部链接到达例如新闻、购物或娱乐站点的另一站点。
在一个或多个实施例中,作为用户接口体验的一部分提供网络应用主页按钮。网络应用主页按钮用于几个目的。第一,网络应用主页按钮指示特定网络应用模式浏览器(也称为“站点模式浏览器”)实例的目的是用于关联的网络应用。网络应用主页按钮可以使用品牌化(branding)和其它可视化手段来传播该信息。第二,网络应用主页按钮使用户能够通过简单地在网络应用主页按钮上进行点击以访问起始URL而快速和容易地开始回到其网络应用体验的起始。这减轻了为访问关联站点的起始URL而必须关闭并重启特定网络应用的负担。在至少某些实施例中,默认地,从用户从其在任务栏上拖放收藏图标的页面探知关联于起始URL的值。可替换地,网络开发人员可以将描述起始URL的HTML标签定义为其页面的一部分。这允许其定义与其当前正查看的页面不同的可替换起始URL。
作为示例,考虑图39。此处,网络应用模式浏览器3900包括地址栏3902,其中,网络站点的URL出现在该地址栏中。另外,网络应用主页按钮3904出现在后退和前进导航按钮附近。当用户导航到与网络应用关联的网络站点之外的域时,其可以在任意时间简单地在网络应用主页按钮3904上进行点击以导航到如网络应用文件中描述的网络站点的起始URL。
进一步地,在至少某些实施例中,并且为了向用户传递导航的后退和前进按钮在网络应用而不是默认浏览器中的上下文,该导航的后退和前进按钮可以通过经由网络应用主页按钮利用或提取站点品牌的主要颜色来呈现网络站点的身份。另外,可以使用HTML标签来使网络站点能够指定这些按钮的颜色以作为网络站点的HTML页面的一部分。
图40是描述根据一个或多个实施例的方法中的步骤的流程图。所述方法可以结合任意合适的硬件、软件、固件或其组合实现。在至少某些实施例中,所述方法可以由例如上面描述的那样站点模式浏览器实现。
步骤4000将站点模式浏览器导航到与安装在客户端设备上的网络应用关联的网络站点起始URL。该步骤可以以任意合适的方式执行,上面提供了其示例。步骤4002导航到不同的网络页面。该网络页面可以或可以不与关联于起始URL的网络站点关联。步骤4004接收对网络应用主页按钮的选择。响应于接收到对网络应用主页按钮的选择,步骤4006将站点模式浏览器导航到网络站点起始URL。
示例系统
图41示出了可以用于实现上面描述的各种实施例的示例性计算设备4100。计算设备4100可以例如是图1的计算设备102或任意其它合适的计算设备。
计算设备4100包括一个或多个处理器或处理单元4102、一个或多个存储器和/或存储部件4104、一个或多个输入/输出(I/O)设备4106和允许各种部件和设备相互进行通信的总线4108。总线4108代表任意几种类型的总线结构中的一个或多个,包括存储器总线或存储器控制器、外围总线、加速图形端口以及使用任意各种总线体系结构的处理器或局部总线。总线4108可以包括有线和/或无线总线。
存储器/存储部件4104代表一个或多个计算机存储介质。部件4104可以包括易失性介质(例如随机访问存储器(RAM))和/或非易失性介质(例如只读存储器(ROM)、闪存、光盘、磁盘等)。部件4104可以包括固定介质(例如RAM、ROM、固定硬盘驱动器等)以及可移除介质(例如闪存驱动器、可移除硬盘驱动器、光盘等)。
一个或多个输入/输出设备4106允许用户向计算设备4100输入命令和信息,并且还允许信息被呈现给用户和/或其它部件或设备。输入设备的示例包括键盘、光标控制设备(例如鼠标)、麦克风、扫描仪等。输出设备的示例包括显示设备(例如监视器或投影仪)、扬声器、打印机、网卡等。
在软件或程序模块的一般上下文中,在本文中可以描述各种技术。大体上,软件包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。这些模块和技术的实现可以被存储在某种形式的计算机可读介质中或通过其被发送。计算机可读介质可以是可被计算设备访问的任意可用的媒介或介质。作为示例并且不作为限制,计算机可读介质可以包括“计算机可读存储介质”。
“计算机可读存储介质”包括以用于存储例如计算机可读指令、数据结构、程序模块或其它数据的信息的任意方法或技术实现的易失性和非易失性、可移除和非可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学存储、磁盒、磁带、磁盘存储或其它磁性存储设备、或任意其它可用于存储期望的信息且可被计算机访问的媒介。
结论
各种实施例提供允许终端用户将网络应用和网络站点安装到其桌面上的机制。根据一个或多个实施例,客户端代码可以用于允许与网络站点关联的开发人员定义与用户交互关联的边界,并且使那些边界被运行时引擎施行。在至少某些实施例中,开发人员可以通过JavaScript代码提供用于开始菜单快捷键创建、导航和所谓的跳转列表集成以及各种其它功能的各种配置。
尽管已用特定于结构化特征和/或方法行为的语言描述了主题,但应当理解,在所附权利要求中定义的主题不必限于上面描述的特定特征或行为。相反,上面描述的特定特征和行为作为实现权利要求的示例形式被公开。

Claims (15)

1. 一种计算机实现的方法,其包括:
将站点模式浏览器导航到与安装在客户端设备上的网络应用关联的网络站点起始URL;
将所述站点模式浏览器导航到除与所述起始URL关联的网络页面之外的网络页面;
接收对网络应用主页按钮的选择;以及
响应于接收到对所述网络应用主页按钮的选择,将所述站点模式浏览器导航到所述网络站点起始URL。
2. 根据权利要求1的方法,其中,所述网络应用主页按钮被配置为实现品牌化。
3. 根据权利要求1的方法,其中,所述网络应用主页按钮被配置为使用主要颜色实现品牌化。
4. 根据权利要求1的方法,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的导航按钮附近。
5. 根据权利要求1的方法,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的导航按钮附近,其中,所述导航按钮使用与所述网络站点关联的主要颜色。
6. 根据权利要求1的方法,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的后退和前进导航按钮附近。
7. 根据权利要求1的方法,其中,所述网络站点起始URL是从HTML探知的。
8. 一个或多个包含计算机可执行指令的计算机可读存储介质,所述计算机可执行指令当被执行时实现一种方法,所述方法包括:
将站点模式浏览器导航到与安装在客户端设备上的网络应用关联的网络站点起始URL;
将所述站点模式浏览器导航到除与所述起始URL关联的网络页面之外的网络页面;
接收对网络应用主页按钮的选择;以及
响应于接收到对所述网络应用主页按钮的选择,将所述站点模式浏览器导航到所述网络站点起始URL。
9. 根据权利要求8的一个或多个计算机可读存储介质,其中,所述网络应用主页按钮被配置为实现品牌化。
10. 根据权利要求8的一个或多个计算机可读存储介质,其中,所述网络应用主页按钮被配置为,使用主要颜色实现品牌化。
11. 根据权利要求8的一个或多个计算机可读存储介质,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的导航按钮附近。
12. 根据权利要求8的一个或多个计算机可读存储介质,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的导航按钮附近,其中,所述导航按钮使用与所述网络站点关联的主要颜色。
13. 根据权利要求8的一个或多个计算机可读存储介质,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的后退和前进导航按钮附近。
14. 根据权利要求8的一个或多个计算机可读存储介质,其中,所述网络应用主页按钮被配置为,被显示在关联于所述站点模式浏览器的后退和前进导航按钮附近,其中,所述后退和前进导航按钮使用与所述网络站点关联的主要颜色。
15. 一个或多个包含计算机可执行指令的计算机可读存储介质,所述计算机可执行指令当被执行时实现一种站点模式浏览器,所述站点模式浏览器包括:
一个或多个导航按钮;以及
网络应用主页按钮,其中,所述网络应用主页按钮与客户端可安装的网络应用关联,并且实现到与关联于所述网络应用的网络站点关联的起始URL的导航。
CN201180028812.1A 2010-06-11 2011-05-31 网络应用主页按钮 Active CN102934080B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US12/814359 2010-06-11
US12/814,359 US8863001B2 (en) 2010-06-11 2010-06-11 Web application home button
US12/814,359 2010-06-11
PCT/US2011/038511 WO2011156172A2 (en) 2010-06-11 2011-05-31 Web application home button

Publications (2)

Publication Number Publication Date
CN102934080A true CN102934080A (zh) 2013-02-13
CN102934080B CN102934080B (zh) 2016-04-27

Family

ID=45097273

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180028812.1A Active CN102934080B (zh) 2010-06-11 2011-05-31 网络应用主页按钮

Country Status (6)

Country Link
US (2) US8863001B2 (zh)
EP (1) EP2580685B1 (zh)
JP (1) JP5830088B2 (zh)
KR (1) KR101783503B1 (zh)
CN (1) CN102934080B (zh)
WO (1) WO2011156172A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105684388A (zh) * 2013-09-20 2016-06-15 甲骨文国际公司 利用表单填充代理应用的基于网络的单点登录

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090199133A1 (en) * 2008-02-05 2009-08-06 Microsoft Corporation Generating a destination list utilizing usage data
US9612847B2 (en) * 2008-02-05 2017-04-04 Microsoft Technology Licensing, Llc Destination list associated with an application launcher
US8863001B2 (en) 2010-06-11 2014-10-14 Microsoft Corporation Web application home button
US8595551B2 (en) 2010-06-11 2013-11-26 Microsoft Corporation Web application transitioning and transient web applications
US9164671B2 (en) 2010-06-11 2015-10-20 Microsoft Technology Licensing, Llc Web application navigation domains
US8434135B2 (en) 2010-06-11 2013-04-30 Microsoft Corporation Creating and launching a web application with credentials
US8429546B2 (en) 2010-06-11 2013-04-23 Microsoft Corporation Creating task sessions
US8671384B2 (en) 2010-06-11 2014-03-11 Microsoft Corporation Web application pinning including task bar pinning
US8793650B2 (en) 2010-06-11 2014-07-29 Microsoft Corporation Dynamic web application notifications including task bar overlays
US20130067338A1 (en) * 2011-09-14 2013-03-14 Microsoft Corporation Dynamic navigation region based on site usage
US8402375B1 (en) * 2011-09-19 2013-03-19 Google Inc. System and method for managing bookmark buttons on a browser toolbar
CN103455494A (zh) * 2012-05-29 2013-12-18 腾讯科技(深圳)有限公司 显示起始页的方法及装置
US20130339487A1 (en) * 2012-06-15 2013-12-19 Andy Wu Method and Apparatus for URL Handling
WO2014020737A1 (ja) * 2012-08-02 2014-02-06 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム
US11144563B2 (en) * 2012-11-06 2021-10-12 Matthew E. Peterson Recurring search automation with search event detection
CN103019879B (zh) * 2013-01-07 2015-12-09 北京奇虎科技有限公司 浏览器崩溃信息的处理方法及系统
US9912720B2 (en) * 2013-05-13 2018-03-06 Appsense Us Llc Context aware browser policy
USD762697S1 (en) * 2014-09-30 2016-08-02 Microsoft Corporation Display screen with graphical user interface
US10489013B2 (en) * 2015-03-17 2019-11-26 International Business Machines Corporation Intelligent taskbar shortcut menu for webpage control
JP6808393B2 (ja) * 2016-08-05 2021-01-06 キヤノン株式会社 情報処理装置、制御方法、及びプログラム
KR102515734B1 (ko) * 2020-04-09 2023-03-30 테크하임주식회사 웹 브라우저 제어 방법 및 이를 위한 웹 브라우저 단말
US11625160B2 (en) * 2020-12-31 2023-04-11 Google Llc Content navigation method and user interface
US11966573B2 (en) * 2021-06-02 2024-04-23 Microsoft Technology Licensing, Llc Temporarily hiding user interface elements

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1452742A (zh) * 2000-04-17 2003-10-29 安心关联公司 用于显示浏览器屏幕的方法,显示系统,以及记录介质
US6823330B1 (en) * 1999-11-16 2004-11-23 Gateway, Inc. Site home navigation control
US20070299938A1 (en) * 2006-06-23 2007-12-27 Rohit Chandra Method and system for enhancing a home page
US20090204900A1 (en) * 2008-02-13 2009-08-13 International Business Machines Corporation Method And System For Navigation Of Web Sites And Applications
US20100017695A1 (en) * 2008-07-16 2010-01-21 International Business Machines Corporation Integrating an applet into a multi-page or multi-tasking web application to enable applet state to be automatically saved and restored

Family Cites Families (158)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793966A (en) 1995-12-01 1998-08-11 Vermeer Technologies, Inc. Computer system and computer-implemented process for creation and maintenance of online services
US5732219A (en) 1995-03-17 1998-03-24 Vermeer Technologies, Inc. Computer system and computer-implemented process for remote editing of computer files
US5877765A (en) 1995-09-11 1999-03-02 Microsoft Corporation Method and system for displaying internet shortcut icons on the desktop
JP4481370B2 (ja) 1996-05-06 2010-06-16 アドビ システムズ, インコーポレイテッド インターネットハイパーリンクドラッグ及びドロップ
US5956483A (en) 1996-06-28 1999-09-21 Microsoft Corporation System and method for making function calls from a web browser to a local application
US6002402A (en) 1997-04-09 1999-12-14 Symantec Corporation System and method for producing a drag-and-drop object from a popup menu item
US6278453B1 (en) 1997-06-13 2001-08-21 Starfish Software, Inc. Graphical password methodology for a microprocessor device accepting non-alphanumeric user input
US6278448B1 (en) 1998-02-17 2001-08-21 Microsoft Corporation Composite Web page built from any web content
US6842779B1 (en) 1998-03-11 2005-01-11 Yasuo Nishizawa Agent accessory tool cooperating with integrated application on WEB server by HTTP protocol
US6727923B1 (en) 1998-05-08 2004-04-27 Apple Computer, Inc. Creation and manipulation of internet location objects in a graphical user interface environment
US7539973B2 (en) 1999-06-01 2009-05-26 Bruce Hodge Object type-declaration prefix syntax
US7181438B1 (en) 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US6810410B1 (en) 1999-08-03 2004-10-26 Microsoft Corporation Customizing a client application using an options page stored on a server computer
US6711618B1 (en) 1999-09-03 2004-03-23 Cisco Technology, Inc. Apparatus and method for providing server state and attribute management for voice enabled web applications
US6826744B1 (en) 1999-10-01 2004-11-30 Vertical Computer Systems, Inc. System and method for generating web sites in an arbitrary object framework
US20020186255A1 (en) 1999-10-28 2002-12-12 Shafron Thomas Joshua Method and system of facilitating on-line shopping using an internet browser
US7383320B1 (en) 1999-11-05 2008-06-03 Idom Technologies, Incorporated Method and apparatus for automatically updating website content
US6662310B2 (en) 1999-11-10 2003-12-09 Symantec Corporation Methods for automatically locating url-containing or other data-containing windows in frozen browser or other application program, saving contents, and relaunching application program with link to saved data
US6636889B1 (en) 2000-01-04 2003-10-21 International Business Machines Corporation System and method for client replication of collaboration space
US7702719B1 (en) 2000-02-08 2010-04-20 International Business Machines Corporation Methods and apparatus for reducing the number of server interactions in network-based applications using a dual-MVC approach
US7441263B1 (en) 2000-03-23 2008-10-21 Citibank, N.A. System, method and computer program product for providing unified authentication services for online applications
US20020049975A1 (en) 2000-04-05 2002-04-25 Thomas William L. Interactive wagering system with multiple display support
US6742026B1 (en) 2000-06-19 2004-05-25 International Business Machines Corporation System and method for providing a distributable runtime
US6990631B2 (en) 2000-07-14 2006-01-24 Ricoh Company, Ltd. Document management apparatus, related document extracting method, and document processing assist method
US6928620B1 (en) 2000-10-23 2005-08-09 Hewlett-Packard Development Company, L.P. Direct printing of contents of a universal resource locator
US6725444B2 (en) 2000-12-14 2004-04-20 Communication Technologies, Inc. System and method for programmable removal of sensitive information from computing systems
US7127720B2 (en) 2000-12-18 2006-10-24 Charles E Cano Storing state in a dynamic content routing network
AU2002242036B2 (en) 2001-02-02 2008-01-24 Opentv, Inc. Service platform suite management system
US20020129096A1 (en) 2001-02-14 2002-09-12 Mansour Peter M. Platform-independent distributed user interface client architecture
US20020111995A1 (en) 2001-02-14 2002-08-15 Mansour Peter M. Platform-independent distributed user interface system architecture
US7155681B2 (en) 2001-02-14 2006-12-26 Sproqit Technologies, Inc. Platform-independent distributed user interface server architecture
AU2002303710A1 (en) 2001-05-11 2002-11-25 Wildseed, Ltd. Method and apparatus for associating a received command with a control for performing actions with a mobile telecommunication device
US7171389B2 (en) 2001-06-01 2007-01-30 Landnet Corporation Identification, storage and display of land data on a website
US6910049B2 (en) 2001-06-15 2005-06-21 Sony Corporation System and process of managing media content
US7243369B2 (en) 2001-08-06 2007-07-10 Sun Microsystems, Inc. Uniform resource locator access management and control system and method
US7203948B2 (en) 2001-09-29 2007-04-10 Siebel Systems, Inc. Method, apparatus, and system for implementing caching of view custom options in a framework to support web-based applications
IES20020159A2 (en) 2002-03-01 2003-09-03 Baydon Solutions Ltd Content management system
US20050066037A1 (en) 2002-04-10 2005-03-24 Yu Song Browser session mobility system for multi-platform applications
US7188117B2 (en) 2002-05-17 2007-03-06 Xerox Corporation Systems and methods for authoritativeness grading, estimation and sorting of documents in large heterogeneous document collections
US7200645B2 (en) 2002-06-26 2007-04-03 International Business Machines Corporation Running dynamic web pages off-line with a wizard
US8577839B2 (en) 2002-08-06 2013-11-05 Sheng Tai (Ted) Tsao Method and apparatus of dynamic updating web portals
US6983280B2 (en) 2002-09-13 2006-01-03 Overture Services Inc. Automated processing of appropriateness determination of content for search listings in wide area network searches
CN1732452A (zh) 2002-10-25 2006-02-08 贝蒂纳·埃克斯珀顿 用于自动启动和访问网络地址和应用程序的系统和方法
US7124125B2 (en) * 2002-11-01 2006-10-17 Loudeye Corp. System and method for providing media samples on-line in response to media related searches on the internet
US20040100501A1 (en) * 2002-11-25 2004-05-27 Dornback Jason Robert Method of dragging and dropping defined objects to or from a web page
WO2004068367A2 (en) 2002-12-02 2004-08-12 Sap Aktiengesellschaft Session-return enabling stateful web applications
US20040143651A1 (en) 2003-01-21 2004-07-22 Allen Kram H. System and method for distributing configuration changes made to a printing device
US20040255294A1 (en) 2003-02-12 2004-12-16 Bea Systems, Inc. System and method for hierarchical loading of EJB implementations
US7540020B1 (en) 2003-02-19 2009-05-26 Oracle International Corporation Method and apparatus for facilitating single sign-on to applications
US20050120345A1 (en) 2003-03-22 2005-06-02 Carson William N. Methods and systems for instantly closing browser windows
US20050149952A1 (en) 2003-04-11 2005-07-07 Microsoft Corporation Persisting state across navigations in a navigation-based application and responding to navigation-related events throughout an application
US7343567B2 (en) 2003-04-25 2008-03-11 Microsoft Corporation System and method for providing dynamic user information in an interactive display
US7386783B2 (en) 2003-04-28 2008-06-10 International Business Machines Corporation Method, system and program product for controlling web content usage
US7475390B2 (en) 2004-01-12 2009-01-06 International Business Machines Corporation System and method for automatic natural language translation during information transfer
US7440997B2 (en) 2003-06-13 2008-10-21 Microsoft Corporation Mechanism for supporting browser navigation while preserving important application return states
US7562254B2 (en) 2003-07-01 2009-07-14 International Business Machines Corporation Checkpointing and restarting long running web services
US20050188174A1 (en) 2003-10-12 2005-08-25 Microsoft Corporation Extensible creation and editing of collections of objects
US7493592B2 (en) 2003-10-24 2009-02-17 Microsoft Corporation Programming interface for a computer platform
US8930944B2 (en) 2003-11-18 2015-01-06 Microsoft Corporation Application model that integrates the web experience with the traditional client application experience
US7614052B2 (en) 2004-01-09 2009-11-03 Nexaweb Technologies Inc. System and method for developing and deploying computer applications over a network
US20060294187A1 (en) 2004-01-20 2006-12-28 Thomas Hakel Integrated web communications system
US7376739B2 (en) 2004-02-11 2008-05-20 International Business Machines Corporation Persistence of inter-application communication patterns and behavior under user control
US7536672B1 (en) 2004-03-05 2009-05-19 Adobe Systems Incorporated Management of user interaction history with software applications
US8327290B2 (en) 2004-04-06 2012-12-04 International Business Machines Corporation User task interface in a web application
US7386808B2 (en) 2004-05-25 2008-06-10 Applied Minds, Inc. Apparatus and method for selecting actions for visually associated files and applications
US7886264B1 (en) 2004-06-25 2011-02-08 Apple Inc. Automatic conversion for disparate data types
US7467402B2 (en) 2004-08-24 2008-12-16 Whitehat Security, Inc. Automated login session extender for use in security analysis systems
US20060075088A1 (en) 2004-09-24 2006-04-06 Ming Guo Method and System for Building a Client-Side Stateful Web Application
US20060074984A1 (en) 2004-09-27 2006-04-06 Scott Milener Graphical tree depicting search or browsing history
US7805324B2 (en) 2004-10-01 2010-09-28 Microsoft Corporation Unified model for authoring and executing flow-based and constraint-based workflows
US20060085758A1 (en) 2004-10-18 2006-04-20 Dan Backus Desktop alert management
US20060112079A1 (en) 2004-11-23 2006-05-25 International Business Machines Corporation System and method for generating personalized web pages
US7712086B2 (en) 2004-12-15 2010-05-04 Microsoft Corporation Portable applications
US20060156330A1 (en) 2005-01-07 2006-07-13 Fu-Sheng Chiu Intelligent interactive multimedia
US7555713B2 (en) 2005-02-22 2009-06-30 George Liang Yang Writing and reading aid system
US20080155501A1 (en) 2005-03-03 2008-06-26 Frederick Rajendran Ravikumar System and Method for Revising an Electronic Draft
US7774366B2 (en) 2005-03-08 2010-08-10 Salesforce.Com, Inc. Systems and methods for implementing multi-application tabs and tab sets
US7921372B2 (en) 2005-03-25 2011-04-05 Microsoft Corporation System and method for pinning tabs in a tabbed browser
US7805495B2 (en) 2005-03-31 2010-09-28 Google Inc. Method and system for transferring web browser data between web browsers
US7840648B1 (en) 2005-04-29 2010-11-23 Google Inc. Web-page authoring tool for automatic enrollment in advertising program
US20060259462A1 (en) * 2005-05-12 2006-11-16 Sybase, Inc. System and Methodology for Real-time Content Aggregation and Syndication
US8069166B2 (en) 2005-08-01 2011-11-29 Seven Networks, Inc. Managing user-to-user contact with inferred presence information
US7594003B2 (en) * 2005-08-02 2009-09-22 Aol Llc Client/server web application architectures for offline usage, data structures, and related methods
US9268867B2 (en) 2005-08-03 2016-02-23 Aol Inc. Enhanced favorites service for web browsers and web applications
US7644391B2 (en) 2005-08-18 2010-01-05 Microsoft Corporation Sidebar engine, object model and schema
KR20070028014A (ko) 2005-08-30 2007-03-12 엔에이치엔(주) 웹페이지 개인화 서비스 방법 및 시스템
US20070050710A1 (en) 2005-08-31 2007-03-01 Redekop Christopher K Graphical user interface for a web application
US7509374B2 (en) 2005-09-09 2009-03-24 Alchemic Solutions Group, Inc. Systems and methods for creating customized applications
US8051143B2 (en) 2005-10-14 2011-11-01 Oracle International Corporation Sharing sessions between web-based applications
US20070233880A1 (en) 2005-10-20 2007-10-04 The Trustees Of Columbia University In The City Of New York Methods, media and systems for enabling a consistent web browsing session on different digital processing devices
US20090328169A1 (en) 2006-01-25 2009-12-31 Keith Hutchison Apparatus and method for convenient and secure access to websites
US9171157B2 (en) 2006-03-28 2015-10-27 Blue Coat Systems, Inc. Method and system for tracking access to application data and preventing data exploitation by malicious programs
US20070239505A1 (en) 2006-03-30 2007-10-11 Microsoft Corporation Abstract execution model for a continuation-based meta-runtime
US8069439B2 (en) 2006-03-30 2011-11-29 Microsoft Corporation Framework for modeling continuations in workflows
US20070255815A1 (en) 2006-04-26 2007-11-01 Udx, Inc. Software, Systems, and Methods for Secure, Authenticated Data Exchange
US8578333B2 (en) 2006-06-27 2013-11-05 Exilant Pte Ltd. Method and system for client-side user interface enhancement to enable application integration and portalisation
US8443298B2 (en) 2006-06-30 2013-05-14 International Business Machines Corporation Method and apparatus for repositioning a horizontally or vertically maximized display window
CA2658056A1 (en) 2006-07-13 2008-01-17 Mobivox Corporation Method and system for auto-login by calling line identification
US8700788B2 (en) 2006-08-18 2014-04-15 Smarticon Technologies, Llc Method and system for automatic login initiated upon a single action with encryption
US8572202B2 (en) 2006-08-22 2013-10-29 Yahoo! Inc. Persistent saving portal
US7940250B2 (en) 2006-09-06 2011-05-10 Apple Inc. Web-clip widgets on a portable multifunction device
US20080077936A1 (en) 2006-09-22 2008-03-27 Amit Goel Method and apparatus for automatically launching an application from a browser
US7680908B2 (en) 2006-09-28 2010-03-16 Microsoft Corporation State replication
US7716280B2 (en) 2006-09-28 2010-05-11 Microsoft Corporation State reflection
US8549469B2 (en) 2006-10-22 2013-10-01 Akin B Bolarinwa System and method for specification and implementation of MVC (model-view-controller) based web applications
US8127306B2 (en) 2006-12-18 2012-02-28 Ricoh Company, Ltd. Integrating eventing in a web service application of a multi-functional peripheral
US20080155547A1 (en) 2006-12-22 2008-06-26 Yahoo! Inc. Transactional calendar
KR20090000104A (ko) 2007-01-02 2009-01-07 배영민 웹 기반의 사용자 창작 애플리케이션 제공 방법 및 시스템
US8214797B2 (en) 2007-02-01 2012-07-03 Microsoft Corporation Visual association creation for object relational class development
US20090158212A1 (en) 2007-02-06 2009-06-18 Access Systems Americas, Inc. System and method for presenting recently-used and in-use applications for ease of navigation on an electronic device
US20080215997A1 (en) 2007-03-01 2008-09-04 Microsoft Corporation Webpage block tracking gadget
US8281321B2 (en) 2007-03-07 2012-10-02 Beck Marc T Method, system and storage medium for implementing a message board cache system
US8316105B2 (en) 2007-03-22 2012-11-20 Microsoft Corporation Architecture for installation and hosting of server-based single purpose applications on clients
US8024701B2 (en) 2007-03-27 2011-09-20 Microsoft Corporation Visual creation of object/relational constructs
KR20080089851A (ko) 2007-04-02 2008-10-08 전정호 본체가 필요없는 중앙집중식 컴퓨터
US20080301562A1 (en) 2007-04-27 2008-12-04 Josef Berger Systems and Methods for Accelerating Access to Web Resources by Linking Browsers
US20090031401A1 (en) * 2007-04-27 2009-01-29 Bea Systems, Inc. Annotations for enterprise web application constructor
JP5052955B2 (ja) 2007-05-09 2012-10-17 株式会社日立製作所 アプリケーションの高可用運用方法、オンラインバージョン変更方法及び計算機システム
US8041763B2 (en) 2007-06-12 2011-10-18 International Business Machines Corporation Method and system for providing sharable bookmarking of web pages consisting of dynamic content
US20090259744A1 (en) 2008-04-14 2009-10-15 Kolke Daniel J System and Method for Running a Web-Based Application while Offline
US20090049183A1 (en) 2007-08-13 2009-02-19 Thompson Tony E Method of Client-Side Form Authentication
CN101378400B (zh) 2007-08-30 2013-01-30 国际商业机器公司 实现桌面应用和Web应用聚合的方法、服务器和系统
US8042055B2 (en) 2007-08-31 2011-10-18 Tealeaf Technology, Inc. Replaying captured network interactions
US8601381B2 (en) 2007-10-29 2013-12-03 Microsoft Corporation Rich customizable user online environment
US7925988B2 (en) 2007-11-13 2011-04-12 International Business Machines Corporation System and method for providing sticky applications
KR20090067419A (ko) 2007-12-21 2009-06-25 전한길 웹사이트 자동로그인
US8438636B2 (en) 2008-01-11 2013-05-07 Microsoft Corporation Secure and extensible policy-driven application platform
US20090216724A1 (en) 2008-01-25 2009-08-27 Buzka Pty Ltd Network resources structuring system
US20090199175A1 (en) 2008-01-31 2009-08-06 Microsoft Corporation Dynamic Allocation of Virtual Application Server
US20090217240A1 (en) 2008-02-22 2009-08-27 Tetsuro Motoyama Script generation for graceful termination of a web enabled client by a web server
KR20090102252A (ko) 2008-03-25 2009-09-30 주식회사 위고스닷컴 사용자 설정형 맞춤 컨텐츠 제공 시스템 및 그 방법
US7526559B1 (en) 2008-03-31 2009-04-28 International Business Machines Corporation Transfer of web applications between devices
US8190703B2 (en) 2008-04-23 2012-05-29 Microsoft Corporation Extensible browser platform for web applications
US8448188B2 (en) 2008-06-17 2013-05-21 International Business Machines Corporation Web user interface component coordination
US8539478B2 (en) 2008-06-20 2013-09-17 International Business Machines Corporation Dynamic web installer
US8631340B2 (en) 2008-06-25 2014-01-14 Microsoft Corporation Tab management in a user interface window
US8694920B2 (en) 2008-09-25 2014-04-08 Microsoft Corporation Displaying application information in an application-switching user interface
US20120010995A1 (en) 2008-10-23 2012-01-12 Savnor Technologies Web content capturing, packaging, distribution
US8365082B2 (en) 2008-10-23 2013-01-29 Savnor Technologies Llc Universal content referencing, packaging, distribution system, and a tool for customizing web content
US8146010B2 (en) 2008-11-03 2012-03-27 Microsoft Corporation Combinable tabs for a tabbed document interface
KR101030309B1 (ko) 2008-11-25 2011-04-19 한국전기연구원 개인 pc와 연동하는 웹 pc 제공 시스템 및 그 웹 pc 제공 방법
US8476668B2 (en) 2009-04-06 2013-07-02 Cree, Inc. High voltage low current surface emitting LED
US8464248B2 (en) 2009-06-15 2013-06-11 Microsoft Corporation Contextual discovery of value-added components
US8438471B2 (en) 2009-07-13 2013-05-07 John R Thorpe System for speeding up web site use using task workflow templates for filtration and extraction
US8595284B2 (en) 2009-12-14 2013-11-26 Samsung Electronics Co., Ltd Web application script migration
KR20100027200A (ko) 2010-02-16 2010-03-10 김동환 현재 페이지 자동 로그인 프로그램 및 그 방법
US8468542B2 (en) 2010-03-04 2013-06-18 Microsoft Corporation Virtual environment for server applications, such as web applications
US20110295689A1 (en) 2010-05-28 2011-12-01 James Brady Methods and systems to modify advertising and content delivered over the internet
US9164671B2 (en) 2010-06-11 2015-10-20 Microsoft Technology Licensing, Llc Web application navigation domains
US8434135B2 (en) 2010-06-11 2013-04-30 Microsoft Corporation Creating and launching a web application with credentials
US8595551B2 (en) 2010-06-11 2013-11-26 Microsoft Corporation Web application transitioning and transient web applications
US8429546B2 (en) 2010-06-11 2013-04-23 Microsoft Corporation Creating task sessions
US8671384B2 (en) 2010-06-11 2014-03-11 Microsoft Corporation Web application pinning including task bar pinning
US8863001B2 (en) 2010-06-11 2014-10-14 Microsoft Corporation Web application home button
US20110307810A1 (en) 2010-06-11 2011-12-15 Isreal Hilerio List integration
US8793650B2 (en) 2010-06-11 2014-07-29 Microsoft Corporation Dynamic web application notifications including task bar overlays
US9244709B2 (en) 2011-06-13 2016-01-26 Microsoft Technology Licensing, Llc Automatic recognition of web application
US10162604B2 (en) 2011-06-16 2018-12-25 Microsoft Technology Licensing, Llc Navigation history visualization in integrated development environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6823330B1 (en) * 1999-11-16 2004-11-23 Gateway, Inc. Site home navigation control
CN1452742A (zh) * 2000-04-17 2003-10-29 安心关联公司 用于显示浏览器屏幕的方法,显示系统,以及记录介质
US20070299938A1 (en) * 2006-06-23 2007-12-27 Rohit Chandra Method and system for enhancing a home page
US20090204900A1 (en) * 2008-02-13 2009-08-13 International Business Machines Corporation Method And System For Navigation Of Web Sites And Applications
US20100017695A1 (en) * 2008-07-16 2010-01-21 International Business Machines Corporation Integrating an applet into a multi-page or multi-tasking web application to enable applet state to be automatically saved and restored

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105684388A (zh) * 2013-09-20 2016-06-15 甲骨文国际公司 利用表单填充代理应用的基于网络的单点登录
US10225244B2 (en) 2013-09-20 2019-03-05 Oracle International Corporation Web-based interface integration for single sign-on
CN105684388B (zh) * 2013-09-20 2019-04-09 甲骨文国际公司 利用表单填充代理应用的基于网络的单点登录
US10693865B2 (en) 2013-09-20 2020-06-23 Oracle International Corporation Web-based interface integration for single sign-on

Also Published As

Publication number Publication date
JP5830088B2 (ja) 2015-12-09
WO2011156172A2 (en) 2011-12-15
JP2013536482A (ja) 2013-09-19
US9367636B2 (en) 2016-06-14
US20140359428A1 (en) 2014-12-04
EP2580685B1 (en) 2021-04-28
EP2580685A4 (en) 2014-03-26
US20110307811A1 (en) 2011-12-15
WO2011156172A3 (en) 2012-02-16
KR101783503B1 (ko) 2017-09-29
CN102934080B (zh) 2016-04-27
US8863001B2 (en) 2014-10-14
EP2580685A2 (en) 2013-04-17
KR20130093006A (ko) 2013-08-21

Similar Documents

Publication Publication Date Title
CN102918502B (zh) 用于将网络应用和网站安装到客户端设备上的方法和装置
CN102934080B (zh) 网络应用主页按钮
CN102918484B (zh) 包括任务栏锁定的万维网应用锁定
CN102918540B (zh) 利用凭证创建并启动万维网应用
CN102947792B (zh) Web应用转换和暂时性web应用
CN102918486B (zh) Web应用导航域
CN102939583B (zh) 创建任务会话
CN102939584B (zh) 列表集成
CN102591928A (zh) 表现包括从跳转列表任务和项目访问的内容的内容
CN102736914A (zh) 包括任务栏固定以及跳转列表任务与项目启动的隐私固定

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150617

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150617

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant