CN103620588B - 基于浏览活动识别匹配应用 - Google Patents

基于浏览活动识别匹配应用 Download PDF

Info

Publication number
CN103620588B
CN103620588B CN201280029479.0A CN201280029479A CN103620588B CN 103620588 B CN103620588 B CN 103620588B CN 201280029479 A CN201280029479 A CN 201280029479A CN 103620588 B CN103620588 B CN 103620588B
Authority
CN
China
Prior art keywords
application program
app
keyword
application
character
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
Application number
CN201280029479.0A
Other languages
English (en)
Other versions
CN103620588A (zh
Inventor
A.库马
M.马哈延
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 Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN201810336640.8A priority Critical patent/CN108563750B/zh
Publication of CN103620588A publication Critical patent/CN103620588A/zh
Application granted granted Critical
Publication of CN103620588B publication Critical patent/CN103620588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • 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
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0277Online advertisement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

在不需要用户的特定搜索的情况下,在浏览期间向用户进行应用程序的表层化。基于输入浏览器地址栏的网络地址、与网络地址对应的页面内容或其组合,应用程序可被选择用于向用户表层化。基于输入地址栏的部分地址和/或基于浏览器显示器中当前可见的网页内容,应用程序可被选择用于表层化。

Description

基于浏览活动识别匹配应用
背景技术
最近的趋势显示,创建了越来越多的应用程序或APP以满足用户的任务。许多这些APP可在网上位置——例如零售网站——买到,以向用户提供可对于装置和/或场景定制的轻松的APP购物体验。例如,多种平台(如Apple®、Andriod®和Mircosoft®)在各自的应用程序商店呈指数增长,目前为其各自的移动装置提供了超过总计500,000个app。一个这样的示例性的以网络为中心的应用是Yelp® app,网站www.yelp.com的对应应用,其被定制为在多种移动装置上安装。
尽管越来越多地使用应用程序,流行的或相关的应用程序可能难以发现。例如,传统搜索引擎的标准搜索协议典型地响应搜索查询对网站、卡和/或答案进行表层化(surface)。这一点对于台式机和移动装置均成立。专门针对寻找app的搜索查询可能会作为结果的一部分地返回应用程序(例如,“下载Yelp® app”),但是,需要明确的搜索以使app表层化可能会减少将会意识到可能感兴趣的应用的用户的数量。
发明内容
在多种实施例中,提供了这样的系统和方法:其用于在浏览过程中向用户进行应用程序的表层化,而不需要用户进行特定的搜索。应用程序可基于输入到浏览器地址栏的网络地址、对应于网络地址的页面的内容或其组合而被选择用于对用户进行表层化。取决于实施例,应用程序可基于输入到地址栏的部分地址而被选择用于进行表层化。取决于实施例,应用程序可基于浏览器显示中当前可见的网页内容而被选择用于进行表层化。该系统和方法可包括实现为计算机可读介质的系统和方法。
提供本发明内容以便以简化的方式对一系列构思进行介绍,其将在下面的具体实施方式部分进一步介绍。此发明内容并非旨在指定所要保护主题的关键特征或实质性特征,也并非旨在孤立用作确定所要保护主题范围的辅助手段。
附图说明
下面参照附图对本发明的实施例详细进行介绍,在附图中:
图1是适用于实现本发明的实施例的示例性计算装置的框图。
图2是被配置为用于实现本发明的实施例的分布式计算环境的示例性系统架构的框图。
图3是根据本发明的实施例在图2的示例性系统架构内的部件间通信方案的框图。
图4示意性示出了显示文档以及到匹配的应用程序的链接的浏览器的实例。
图5示意性示出了显示文档以及到匹配的应用程序的链接的浏览器的实例。
图6示意性示出了显示文档以及到匹配的应用程序的链接的浏览器的实例。
图7a和7b示意性地示出了显示文档以及到匹配的应用程序的链接的浏览器的实例。
图8-11示出了根据本发明的实施例的多种方法的流程图。
具体实施方式
概述
在多种实施例中,提供了用于基于用户浏览活动对app(也称为应用程序)进行表层化的系统和方法。应用程序可在无需用户提供搜索查询的情况下得到表层化。作为替代的是,应用程序可基于当前正被用户查看的文档或网页向用户进行表层化。作为附加或作为替代的是,应用程序可基于统一资源定位符(URL)、统一资源标识符(URI)或用户正在输入或已经输入到浏览器地址栏中的其他类型的网络地址进行表层化。在一些实施例中,应用程序可以以向用户提供另外的背景的方式进行表层化,例如关于应用程序如何被选定为用于向用户呈现的信息。
尽管应用程序(或app)日益普及,web浏览器的很多普通用户可能不知道可用应用程序的类型和数量。此外,即使用户已经购买了应用程序,用户可能忘记了此购买和/或用户可能不知道该应用程序用于解决特定问题的价值。为了提高应用程序对于用户的实用性和/或可用性,用户的浏览活动可被用来识别用于呈现的应用程序。应用程序这种呈现或表层化可在不等待来自用户的搜索查询的情况下完成。作为替代的是,用户的浏览活动可被监视,且潜在的相关应用程序可被显示,以便以方便的方式进行选择。
用于识别向用户进行表层化的应用程序的一个选项可基于输入浏览器地址栏的位置——例如URL——来识别应用程序。另一个选项可基于浏览器中目前正在观看的网页的内容来识别用于表层化的应用程序。如果用户感兴趣的应用程序被表层化,该应用程序可由用户选择,以进行购买和/或打开(launch)。视情况可选地,应用程序可使用对应用程序进行表层化而导致产生的背景来打开。
应用(App)的一般介绍
本申请的实施例介绍了这样的技术:其用于发现与由用户输入的网络文档位置的地址有关和/或与网络文档的内容有关的应用程序。词语“应用程序”和“app”在本文可互换地使用,并广泛属于被设计为由托管在计算装置上的操作系统执行并协助用户进行单个或多个相关的特定任务的应用程序软件。在运行中,app可提供现实世界中的数字化解决方案,例如文字处理、游戏、基于通信的接口等。app的例子可包括企业软件、会计软件、办公套件、图形软件和媒体播放器。这些app或应用程序软件,可与操作系统软件或中间件形成对比,后者管理并集成计算机的能力,但典型地并不将计算机的能力直接应用于执行有利于用户的任务。应该理解和明白的是,应用程序的定义并不限于本文所提供的示例的范围,并可包括在被执行时实现一个或多于一个操作的任何代码。
首先,本发明的实施例可涉及建立和维护可以以某种方式映射到网络地址(如URL)的应用程序的注册表。app的注册表可进一步以某种方式映射到对应于网络地址的文档。此注册表可保持在数据存储器中,并经由应用程序清单进行索引,例如可由(多个)搜索引擎和/或数据库搜索程序访问的清单。网络地址和对应的页面内容的多种标准或属性可用来识别一个或多于一个的对应的app。在一实例中,属性可以是统一资源定位符(URL)或被输入到浏览器地址栏中的其他类型的网络地址。网络地址可在用户键入地址时、在用户点击网页上的链接时、在用户从存储的地址列表中选择书签时被输入,或者,地址可以以任何其他方便的方式输入。在另一实例中,标准可以是由应用程序开发者所提供的声明,其指向先前被视为与app相关的一个或多于一个类别的网页内容(例如,实体或实体类)。在又一实例中,网络地址中的文档的属性可从文档的标题、描述和/或元数据中提取,同时,可使用服务来构建这些属性和多种app之间的链接。也就是说,在实施例中,来自网页的内容的词语或短语可被应用于发现相关的app,而不是简单地使用来自网络地址本身的词语和短语。
用于对于网络地址和/或文档识别相关应用程序的一个选项可以是基于地址或文档来构建对于相关的app的搜索查询。在浏览事件(例如,在web浏览器地址栏中接收到网络地址的至少一部分时)过程中,可通过从网络地址和/或文档中提取单词、短语或其他标记来构建对于app的搜索查询。于是,可将查询与应用程序清单进行比较,以发现相关的app。可使用传统的搜索引擎技术将此查询与应用程序清单进行比较,或者,可使用提供相对于网络地址和/或文档的应用程序排名的任何其他方式。举例而言,与域名服务器(DNS)技术类似地运行的协议可用于在用户的装置上定位、下载以及安装应用程序。在这种情况下,协议可使用从网络地址或底层网站解析的词语或短语来进行对于app的在线搜索(例如,app数据库,app目录,或app商店),或在用户装置上已安装的应用程序清单内进行本地搜索。于是,可将排名最高的app对用户进行表层化。在一个实施例中,安置可涉及在地址栏附近给出对app的呈现,视情况可选地,具有关于选择app的理由的对于用户的指示。在另一个实施例中,安置可涉及当词语或短语在内容中被选择时,在页面内内容的顶部的弹出式窗口中露出app。本文中描述了其它实施例,其提供了在浏览器、或更一般地在GUI中向用户进行app的表层化的方案的非限制性实例。
在检测到用户发起的对表层化应用程序的选择时,可发生一个或多于一个动作。例如,如果app在用户装置的清单中不被识别为驻留的或正在安装的,用户可被重定向到app商店,从而促使用户购买相关的app。作为替代的是,可在分立的浏览器窗口或标签页中呈现app商店的界面。但是,如果app被识别为在装置的清单中列出(即先前安装在装置上),可自动打开app。通过这种方式,用户节省了手动定位以及启动app的步骤。在一示例性实施例中,这些动作可被提供为在受到表层化的app的表示附近视觉上呈现的选项。
在打开app的实例中,可将网络地址和/或文档的背景传递给app,以供当前或将来使用。这种背景可作为表示多种方面的参数被传递,例如文档的内容、使用模板从地址中提取的关键词、用户的浏览和/或链接选择历史、用户配置文件数据或其他用户配置文件信息。
存在可将这些参数传递给应用程序的多种方式。在一个实例中,参数可基于app的期望量身定制。举例而言,可在接收参数时使得浏览器或操作系统识别出各个个体app偏好的适当格式。于是,可将任何关键词——例如从网络地址或相关联的元数据中提取的关键词——格式化为与app的预定输入结构相对应。这种解析和特征化的过程使得浏览器或app能够高效地将适当的词语填充到app的输入结构的适当的条目位置。
尽管已经介绍了用于传递参数(代表用户搜索的背景)的多种不同的方法,应该理解和明白的是,可使用对将app引导到入口点的参数进行传递的其他类型的合适的方式,且本发明的实施例并不限于如本文所述的简单地解析、分类以及填充。例如,如果从网络地址或者文档提取商户的识别符(ID),与该商户ID相关联的专用URL可被发现并提供给app,其中,所述专门的URL可引导app在与商户相关的入口点开始。
在地址栏中检测位置(URL)
用于识别向用户呈现的应用程序的一个选项可基于来自地址栏——例如浏览器地址栏——的网络位置来选择应用程序。这里,地址栏指的是允许用户输入用户希望访问或浏览的网络地址的任何接口。地址栏还指反映被显示的文档的网络地址的任何字段,即使用户可能无法修改显示字段。网络位置可以是URL、URI、对于存储驱动器上的文档夹的目录路径或输入到地址栏的任何其他类型的文本。地址栏中的信息可在被检测或捕获后使用。可使用用于从地址栏检测位置信息的任何方便的方法。
在某些环境中,地址栏信息的检测和/或捕获也可由浏览器促进。例如,对于台式机和/或笔记本电脑,例如Internet Explorer®的浏览器可提供应用程序编程接口,其允许其他程序侦听输入到地址栏的信息。输入到地址栏的信息可包括由用户键入的信息、当用户点击链接时被放置在地址栏中的信息或显示在地址栏中以将浏览器引导到网络地址和/或反映浏览器正在访问的网络地址的任何其他信息。当信息被输入到地址栏时,可使信息对于希望得到该信息的任何其他应用程序或程序可用。这种功能可以是浏览器的一部分,或者,该功能可以是浏览器插件的一部分。作为替代的是,与操作系统集成的浏览器可被构造为使得操作系统提供地址栏信息,而不是使浏览器提供信息。注意,一些浏览器可具有这样的功能:基于进入地址栏的信息的部分条目,提供建议的网络位置。这些基于部分信息的网络地址也可被捕获并用于在用户键入完整位置的同时对应用进行表层化。
在多种实施例中,可在地址栏(例如浏览器的地址栏)中检测具有网络地址格式的一个或多于一个字符(例如多个字符)。网络地址格式可对应于多个这样的字符:其能够由浏览器和/或搜索引擎解析,以识别对应的网络位置。这与不能被解析以确定网络位置的多个字符形成对比。作为附加或作为替代的是,这可与这样的多个字符形成对比:浏览器将之识别为处于不与网络地址对应的格式。例如,对应于网络地址的格式可以是这样的格式:其以注册模式的初始字符开始,后接根据注册模式识别网络位置的字符。注册模式可以指在识别的协议下注册的模式,例如根据RFC 4395注册的模式。“http”、“ftp”以及“https”模式是根据RFC 4395注册的模式的实例。
此外,没有初始模式指定的多个字符也可对应于注册的网络格式。例如,许多用户在输入网络地址时省略“http”。作为替代地,用户常常简单地开始键入地址本身,例如“microsoft.com”或是“www.microsoft.com”。在浏览器地址栏中,典型的浏览器可认识到这种类型的字符条目暗含着模式“http”,且因此,用户的这种类型的字符条目也对应于与注册模式对应的网络地址格式。
具有网络地址格式的字符可以与未注册的私有模式形成对比。例如,浏览器脚本语言可用来允许浏览器检测私有格式。私有格式可在表面上类似于注册格式。作为替代的是,私有格式可允许浏览器检测初始关键词,例如“go”或“app”。在检测到初始关键词时,浏览器不将输入的字符作为网络地址处理。相反,输入到地址栏的字符可被转送到单独的或私有的协议处理器。
在其他环境中,浏览器可不直接提供这样的函数:其允许检测输入到地址栏的信息。例如,移动电话和其他手持装置有时可包括具有更有限的特征集的浏览器。在浏览器和/或操作系统不具备侦听地址栏位置功能的环境中,应用程序可被用于检测输入到地址栏的信息。例如,这可通过由操作系统侦听出站请求以得到“http”位置来完成。
还有一个选项可以是在地址栏位置信息输入到地址栏之后、期间或之前捕获该信息。例如,如果用户从所存储网络位置列表中选择书签,可检测对书签的选择。另一个选项可涉及“缩短”的URL。多种服务可用于提供URL的缩短版本。例如,这些缩短的版本可在键入长字符串不便的情况下使用。当缩短的URL被转换为完整的位置时,可检测到完整的位置。
解析URL以及解析模板的使用
在从地址栏捕获网络位置信息(例如URL)后,可对该位置进行解析,以允许识别与网络位置有关的一个或多于一个应用程序。应用程序可与网络文档明确相关,或者,关系可在解析网络地址和/或文档后推断出来。当应用程序匹配引擎(例如搜索引擎)识别应用程序时,对于应用程序的识别可被发送到浏览器,使得可向用户进行对于应用程序的链接的表层化。
一些网络位置(如网站)可具有与应用程序的明确的关联。这种明确的关联可基于来自网站的信息,或基于来自应用程序的信息。例如,网站的元数据可将应用程序与网站相关联。这种识别可实时使用,以识别对应的应用程序,或者,这种识别可提前完成并被存储,以供将来使用。预先存储应用程序和相关联的网络位置的列表可允许一检测到URL,就对于所关联的网络位置的应用程序进行表层化,而不是等待下载和分析元数据。作为替代的是,应用程序可在应用程序的元数据中识别对应的网站。这可类似地用来建立关联的应用程序和网络位置的列表,例如应用程序注册表。
在应用程序和网络位置之间的另一种类型的关联可基于网络位置的域名。许多网络位置具有以“www.<domain name>.com”开始的地址。如果命名为“<domain name> app”或“<domain name>.com app”的应用程序可用,存在这样的合理的可能性:网络位置和类似命名的app是相关的。基于这种关系,在用户输入以“www.<domain name>.com”开头的地址时,可对类似命名的应用程序进行表层化。
上面可为使用模板对来自地址栏的位置进行解析以识别潜在匹配应用程序的例子。一般而言,多种模板可用来解析地址信息。许多URL可符合已知的格式。例如,URL常常可包括域名,例如“.com”或“.edu”的位置后缀以及位置后缀之后的附加路径信息,路径信息的分立的部分用一个或多于一个反斜杠字符分隔开。在识别相关应用程序的努力中,可使用一个或多于一个模板对URL或具有已知格式的其他地址进行解析。
在上面的实例中,基于从地址捕获<domain name>的简单模板被用来识别相关的应用程序。另一种类型的模板可基于位于反斜杠后的地址的部分。URL可以被解析,使得域名、位置后缀和/或位于反斜杠后的一个或多于一个词语可被提取,以用于识别应用程序。位于反斜杠后的所述一个或多于一个词语可位于第一反斜杠之后、后面的反斜杠之后或URL中不同的反斜杠的组合之后。更一般地,在多种地址格式中,模板可使用作为分隔符的任何字符或字符组来提取用于识别应用程序的词语。
举例而言,一些社交网站具有允许用户与其他内容(例如关于电影的信息)交互的接口。登录社交网站的用户可经由www.<social network>.com /<movie informationsite>的地址来访问该内容。在这种情况下,即使域名可匹配已知的应用程序,用户的意图在这里更可能涉及电影信息站点。使用模板,第一个反斜杠后的关键词可以与已知的应用程序进行比较。如果找到匹配,可对与反斜杠后的关键词匹配的应用程序进行表层化。在更具体的类型的模板中,模板也可要求该地址的域名匹配已知的社交网站域。作为附加或作为替代的是,可将对应于域名的app和对应于电影信息站点的app二者对用户进行表层化。表层化的app的显示顺序可基于排名和/或基于类别受到控制,如下面所介绍的那样。
使用模板可以简化地址内的相关词语或标记(token)的识别。词语或标记可被称为关键词。关键词可以是任何一组这样的一个或多于一个字符:其被识别或提取为用于识别应用程序的可能的分立词语。注意,如果关键词在用户仍然正在输入地址的点上提取,一个或多于一个关键词可表示部分词语。这种部分词语可使用任何方便的方法扩展,以形成扩展关键词。作为附加或作为替代的是,URL(或其他地址)可以被解析成关键词,且关键词可用于形成搜索查询。于是,搜索查询可被用来自动进行搜索,以识别相关的应用程序。注意,模板可与使用关键词结合,以形成搜索查询。例如,对于与特定的关键词搜索有关的搜索引擎页面的网络地址可包括地址中的搜索词语。模板可用来从地址中提取搜索词语。于是,搜索词语可被修改,以创建集中在识别应用程序的搜索,例如通过向搜索增加词语“app”。
用于app匹配的页面内容和实体检测
用于识别相关的应用程序的另一种方法可基于网页的内容。多种方法可用来将页面内容与应用程序匹配。一个例子可以是识别匹配网页中所包含的URL或其他网络地址的应用程序。这些URL可以以上面介绍的方式分析,以识别相关的应用程序,从而向用户显示。在页面上明确提到的任何应用程序也可被表层化。
另一个例子可涉及分析网页的内容以识别关键词。这可潜在地类似于分析页面内容以进行索引,作为搜索引擎的倒排索引的一部分。提取的词语可基于出现频率、页面上的位置或任何其它方便的特征来选择。于是,所提取的词语可被用来匹配元数据中的关键词以得到应用程序,和/或用来构建对于应用程序的搜索。
分析页面内容的变体可以是分析页面以进行实体检测。实体可代表这样的人、地方或事物:其在web内容中足够频繁地被搜索和/或遇到,以至于该实体可预先被识别。应用程序可以潜在地与这种实体相关联。例如,页面可以有来自著名歌手(如猫王)的几首歌曲的内容,可能只有一首歌提到了歌手的名字。页面的关键词分析一般可建议与音乐有关的应用程序,例如为歌曲提供歌词的应用程序。然而,实体检测可导致对实体“猫王”的识别,部分地基于这样的事实:歌手的歌曲标题也可用于识别歌手实体。这可能会导致对与歌手实体有关的应用程序的表层化。
如本文所用的,词语“实体”通常指无法通过关键词充分管理的抽象对象。也就是说,抽象对象考虑用户搜索事件的背景,其暴露出用户的真正意图,而不是仅仅采用关键词匹配技术,关键词匹配技术并不总是针对用户的意图。因此,实体可以是可由特定的在线描述来表示的逻辑对象。这些逻辑对象可以是人、地点、事物或它们的任意组合。例如,逻辑对象的一些例子如下:特定的电影;于加州Mountain View市Castro街的餐馆;Microsoft®的首席执行官;阿拉斯加航空公司的从圣何塞飞往西雅图的航班#AS331;或者,数码相机。在多种实施例中,实体可提前识别。这些预定义的实体可以具有对应的关联特性的列表。这些关联特性可在网络文档包含实体信息时用于识别。
应用程序分类和排名
应用程序可通过多种方法匹配到网络地址(例如URL)和/或与网络地址相关联的文档的内容。有些应用程序可能由于该应用程序是网站的“官方”app而是合适的匹配。其他应用程序通常可与网站的主题有关,并具有高人气。另一些应用程序可显示为推广app,其中,一方进行支付,以换取使app显示的权利。在这些应用程序类别之间进行区分可能有利于用户。结合网页指示应用程序是如何或为什么被显示的性质可以帮助用户评估应用程序是否是期望的。
应用程序与网络地址的匹配可以以任何方便的方式进行。在一些实施例中,模板可用来帮助确定用作关键词的网络地址的多种部分的相关性。更一般地,可以使用用于将网络地址解析为关键词的任何方便的方法。从网络地址中提取的关键词可被用来识别匹配的应用程序。这可通过将包含一个或多于一个所提取的关键词的应用程序识别为元数据来完成。视情况可选地,可对匹配的关键词进行加权,例如基于词语频率-逆文档频率值,或基于用于提取关键词的模板。
将应用程序匹配到文档的内容可以是更复杂的,因为与典型网络地址有关的典型文档的更大量的内容。任何方便的策略可用于将文档内容匹配到应用程序。例如,为了将整个文档的内容与应用程序匹配,可产生文档的代表性关键词列表。代表性关键词可基于多种因素选择,例如用于对文档进行索引以便搜索的典型因素。因此,代表性关键词可以部分地基于关键词出现的频率、关键词的词语频率-逆文档频率值、基于关键词在文档中的位置(例如,标题,第一行)的权重因子或其它因素。于是,代表性关键词可被用来识别与应用程序的匹配。基于文档内容的其他匹配中可根据文档中的实体的识别。于是,实体可用来识别相关的应用程序。对于到文档的可见部分的匹配,典型地,匹配将实时进行。为了便于这一点,到文档的可见部分的匹配可在一些实施例中受到限制,例如通过将应用程序匹配限制于基于明确提到应用程序的匹配。匹配到文档的可见部分的另一个选项可以是对于与总页面内容有关的应用程序确定排名值列表。于是,可将给定时间在显示装置中可见的内容与排名应用程序的子集相比较,例如仅仅与基于总页面内容排名前十的应用程序比较。又一选项可以是将应用程序匹配限制于基于在文档可见部分中检测到的实体的匹配。
在多种实施例中,应用程序可与作为应用程序的选择和/或显示的一部分的类别相关联。一个选项可使用类别来协助应用程序的显示。在一个或多于一个应用程序被选择为适合显示之后,应用程序可与类别相关联。应用程序的图标或链接的显示方式可以指示类别。例如,应用程序的类别可基于图标或链接周围边框的颜色来指示。另一种选项可能是,当用户将鼠标指针悬停在应用程序上时,使类别信息作为弹出信息框可用。又一选项可以是将应用程序显示位置用作类别指示符。
作为附加或作为替代的是,类别可以用来帮助选择用于显示的应用程序。在此类型的实施例中,潜在可能显示的应用程序可以与类别相关联。于是,可选择向用户表层化的应用程序,使得可选择来自各个类别的顶部的应用程序或多个应用程序。为了方便关联,可以进行应用程序相对于网页的初始排名。于是,具有高于第一阈值的排名的应用程序可与类别相关联。于是,从各个类别选择应用程序可基于相同的阈值,或者,可使用其他阈值和/或其他标准。视情况可选地,这可导致显示排名低于未向用户表层化的其他应用程序的一些应用程序。例如,一个类别中顶部的应用程序可被显示,但其仍具有比另一类别中未显示的应用程序低的排名分数。
在将应用程序与类别相关联时,可使用任何方便数量或类型的类别。类别的一个实例可以是对于“官方”app的类别。这一类别可代表作为对应于网站的应用程序由网站明确提及和/或在网站的元数据中明确提及的应用程序。视情况可选地,这种类型的类别也可包括应用程序名称与网站域名匹配的应用程序。
另一种类型的类别可以是背景应用程序的类别。背景应用程序可对应于这样的应用程序:其基于网络地址和/或网络位置的内容的一个或多于一个特征匹配网络位置。背景关系可以是直接关系或间接关系。直接的背景关系可以对应于这样的应用程序:其直接基于位置或内容的特征匹配web文档。一个例子可以是基于使用模板以解析URL而匹配到网站的应用程序。如果应用程序的名称对应于例如URL反斜杠后的一个词语,应用程序可具有直接的背景关系。作为替代的是,将网站指明为应用程序的元数据的一部分的应用程序可具有直接的背景关系。又一例子可以是这样的网站:其中,确定网站与实体——例如歌手——相关联。具有直接的背景关系的应用程序可以是与歌手有关的app。与此相反,一般地与音乐或音乐的歌词有关的应用程序可被认为是具有间接背景关系的应用程序。更一般地,与网站充分相关以至于app可被表层化、但缺乏与web位置的明确关系的其他应用程序可被看作是具有间接的背景关系。
又一种类型的应用程序类别可以是推荐类别。推荐类别可以对应于由浏览器或其他部件所提供的app推荐。例如,一般地与电影有关的网站可具有与电影相关的若干个app,其可被认为是间接背景应用。如果使用排名方案,与电影相关的app中的一个可被认为是最高排名的。这可基于app的整体人气,或基于与电影相关的app是如何关于网站进行排名的细节,或者,可使用其他标准。这一最高排名app可在用户访问对应的网络位置时被提供为推荐app。
再一种类型的类别可以是相关联应用程序类别。相关联应用程序可代表并非与当前网站的内容有关、但用户通常与当前类型的网站结合访问的app。例如,以前的网络流量分析可能指示,访问一家电影票网站的用户有可能还访问一家餐馆预订网站。在用户访问处理电影票购买的网站时,餐馆预订app可作为关联app显示。
再一种类型的类别可以是推广应用程序的类别。推广应用程序可代表app的广告形式。当第三方同意支付费用以使应用程序表层化时,可向用户表层化被推广的应用程序。在某些情况下,被推广的应用程序可在特定网站被访问时显示。其他类型的推广方案可涉及在具有特定类型内容的网站被访问时显示应用程序。也可基于第三方支付费用以交换对app图标或链接的显示的协议,使用用于显示推广app的任何其他方便的相关性。
注意,应用程序可能潜在地与多于一个的类别相关联。在这种情况下,与应用程序关联的类别可以以任何方便的方式选择。例如,对于app产生最高得分的类别可以被选择,或者,可存在类别的层次结构,以使应用程序被分配给在层次结构中最高的类别。
在识别出一组相关app时,可根据可用于对信息进行排序和/或组织的任何量度对所识别的app进行排名。一般来说,这可能涉及将这样的量度用作app人气,相较于其他app对app进行排名,其中人气可以源于多个源。用于排名的这些资源可包括特定的服务,例如社交网络、来自其他用户的建议、众包(crowd-source)评级和评论。在建立排名时,可实现将所述若干个app限制于最高排名app(例如,特定的相关水平)的阈值。在一个实例中,阈值部分地基于搜索结果页上对于app分配的空间。在一些实施例中,如果没有应用程序具有足够高的排名,则不对该网络地址/页将app进行表层化。作为附加或作为替代的是,app的评估可按类别进行。如果类别不包括具有足够高的排名的应用程序,可不对该类别显示app。
经由过滤的app个性化
在多种实施例中,向用户表层化的应用可基于一个或多于一个因素过滤,以便对所显示的应用程序进行个性化。过滤可以基于用户配置文件、用户位置、与应用程序的先前交互史或其组合来进行。
用户配置文件可用于对应用程序进行过滤以便表层化。用户可能的兴趣可用于选择对于用户更相关的应用程序。可能对于过滤应用程序有用的一些配置文件信息可类似于基于搜索结果对背景进行表层化的信息。这可包括关于用户年龄、性别、职业、兴趣或用户配置文件中可能可用的任何其他信息。其他的信息可包括与用户过去的浏览活动有关的信息。与用户频繁访问和/或已被用户加入书签的网站相关联的应用可被赋予超过其他应用程序的优先权。另外的用户配置文件信息可基于最近的浏览历史,例如在当前浏览会话中访问的web位置。
再一种类型的配置文件信息可以是时间信息。时间信息可与位置信息相结合,以提供关于应用程序的类型的附加背景来表层化。例如,当用户从海滨城市在夏季的白天访问与天气有关的网站时,除了针对一般的天气的应用程序以外,可对冲浪条件的应用程序进行表层化。天黑后访问相同的网站可能导致冲浪报告收到较低的排名。作为另一个例子,当用户在白天在大城市地区访问餐馆评论网站时,相关联的对于交通条件的应用程序可被表层化。相反,晚上进行同样的搜索可对用于预定计程车的应用程序或用于剧院表演或其他社交活动的应用程序给出较高的排名。
对于移动装置,用户位置信息可以以对于不同位置的不同配置文件的形式并入,来自用户配置文件的用户位置信息可被赋予更大的优先级。典型地在一个地方使用的台式计算机或其他计算平台可具有与该装置相关联的单个物理位置。其结果是,物理位置可以是用户配置文件的静态部分。但是,移动装置可在多种物理位置使用。如果移动装置具有用于检测当前位置的方法,例如GPS功能,当前物理位置信息可用于从替代性配置文件进行选择。例如,用户可以定义与家庭位置、工作位置、学校位置或用户通常访问的其他物理位置相关联的配置文件。当用户正在浏览网站时,移动装置可检测当前物理位置并选择对应的配置文件。作为附加或作为替代的是,可以使用若干个标准用户配置文件信息集来修改如何基于位置对应用程序进行排名以便表层化。例如,当移动装置被检测为处于或接近商场时,与购物或价格比较有关的应用程序可被给予较高的排名。当移动装置被检测为在餐馆附近时,与餐馆点评有关的应用程序可被给予较高的排名。在一些实施例中,检测物理位置信息可用于覆盖对于用户的典型的配置文件信息。生活在华盛顿州西雅图的用户可具有在用户配置文件中存储的对应位置。当移动装置被检测到位于另一个城市——例如加州洛杉矶时,来自用户配置文件的位置的相对排名重要性可被减小,使得与当前位置有关的应用程序可以优先于与默认家庭位置有关的应用程序而被表层化。
另一个过滤选项可以将用户过去与应用程序的交互并入选择app以进行表层化。这种类型的过滤可包括多种因素。一个选项可以是优先向用户表层化用户已经购买的任何相关应用程序。这可提醒用户可能具有用户不知道的附加功能的应用程序。另一个选项可涉及用户与先前表层化的对于应用程序的链接的交互。如果应用程序已经向用户表层化多于阈值次数而用户没有购买和/或下载该应用程序,这可能是用户对该应用程序兴趣低的迹象。对此应用程序的排名可降低,使得另一应用程序可被表层化。作为替代的是,当用户购买和/或访问表层化的应用时,被认为相关的任何应用程序可被给予较高的排名。应用程序之间的关系可以基于针对类似主题的应用程序、由同一作者提供的应用程序、具有与特定网站的关联的应用程序或任何其它方便的关系类型。
又一种类型的过滤可基于与用户所购买的应用程序相关联的平台。如果用户先前已购买与特定操作系统或装置类型相关联的应用程序,适用于该操作系统或装置类型的应用程序可被给予较高的排名。
浏览增强:app显示集群和预取
在多种实施例中,在应用程序已被选择用于向用户表层化时,应用程序可通过显示应用程序的链接而得到表层化。该链接可以采用文本、图标或可允许用户在链接上执行选择动作的任何其他类型的特征的形式。链接可以以任何方便的方式显示。对于具有足够的显示区域的装置,应用程序链接或图标可通过将链接显示为浏览器的一部分来表层化。例如,对于表层化应用程序的链接可在浏览器地址栏下方、上方或以其他方式在浏览器地址栏附近的一行或多行中显示。行(或列)中的应用程序的显示顺序可指示应用程序与网络位置的关系。因此,app显示行中的第一个位置可对应于网站的“官方”app,第二位置可对应于背景app,且第三位置可以是推荐的app。作为附加或作为替代的是,链接或图标可用相关联的颜色显示,以指示应用程序与网站的关系。例如,图标或链接可具有带颜色的边框,该颜色指示“官方”app、推荐app、相关联的app或另一类型的app类别。
尽管向用户表层化一个或多于一个应用程序可能是有益的,有时,可能希望限制用于对app进行表层化的显示区域的量,同时,仍然向用户提供尽可能多的app。在减小显示空间量的同时增大向用户表层化的app的数量的一个选项可以是为应用程序组显示链接或图标。对于应用程序组的链接可以通过主题相关的一组应用程序。作为替代的是,应用程序组可以基于应用程序相对于网站的关系类别。另一种应用程序分组可以是任意的,例如使排名最高的前五个应用程序在第一组中,接下来的五个在第二组,依此类推。在一些实施例中,代表应用程序组的链接或图标可包括链接所代表的app数量的指示。
当访问应用程序组的链接时,链接可以以任何方便的方式展开。对于组中的单个应用程序的链接或图标可以显示在当前浏览器中,或在新的浏览器或弹出式窗口中。选择对于图标组的链接可导致其他应用程序的图标被移除,或者,额外的空间可以在显示应用程序链接的区域产生,以容纳组到个体图标的展开。
用于增强与表层化应用程序有关的用户体验的另一种方法可以是潜在应用程序信息的预取。取决于可用网络的类型,移动计算装置可具有变化的连接速度等级。当检测到具有相对较高速度的连接时,应用程序信息可被预先下载。例如,用户可具有在浏览会话期间定期访问一系列网络位置的模式。在检测到来自该系列的一个位置已被用户访问后,其他网络位置的相关应用程序的信息可被预取。
其他显示选项
取决于实施例,多种方法可用于显示对于与网络位置有关的应用程序的链接。如上面提到的,一个或多于一个链接可在浏览器地址栏附近显示,例如在地址栏上方或下方。另一个选项可以是作为网页的一部分或更改地对链接进行显示。链接可显示在导致与app的关系的网页的一部分上。例如,提供对多种app的评论的网页可被修改用于显示,从而包括各个所评论的app的链接。链接可在页面上定位为靠近第一次提到各个所评论的app处。
在其他实施例中,应用程序(或一组应用程序)的链接可包括在地址栏中。可能的位置可包括链接(例如图标),作为在地址栏中给出的最后的符号。在这种类型的实施例中,当“官方”app对于页面可用时,链接可被包括在地址栏中。另一种选择可以是在地址栏中包括对于与网络位置相关联的排名最高的app的链接。另一种选择可以是在地址栏中或靠近地址栏地使用图标,例如徽标,作为一组app的链接。于是,访问链接可打开包含个体app的链接或图标的分立的窗口,或者,个体app的链接可在浏览器的框架中显示。
在另外一些实施例中,可用于显示应用程序链接的空间的量可能是有限的。例如,许多移动装置具有有限显示区域的屏幕。在这种实施例中,用于允许app可访问的一种选项可在显示器上提供相关应用程序可用的指示符。于是,按键输入或触摸手势可用来调出应用程序的显示。例如,触摸和拖曳动作(模拟翻页)可用来使所显示的视图看起来“翻转”。页面的这种明显的反面可显示与网络位置有关的一个或多于一个应用程序。作为替代的是,包含应用程序的新页面会看起来是滑入视图、展开到视图或以任何其他方便的方式出现。
实例:网页浏览期间的app显示
下面的实例描述了根据本发明实施例的对应用程序的表层化。在本实例所介绍的类型的实施例中,向用户表层化的应用可在用户试图观看单一网络位置的页面时多次刷新。这一实例将描述对网络地址为“www.reststops.org ”的虚构网站的访问。如果存在这样的网站,它可能是一个介绍美国州际公路的停车休息站处可用服务的网站。
在此实例中,用户操作通用计算装置。计算装置可以是台式计算机、例如电话的手持式移动装置或能够访问网络的另一种类型的计算装置。用户可使浏览器打开。用户决定着手进行开车越野旅行计划,并希望调查州际高速公路上的可用资源。用户开始键入网址“www.reststops.org”。随着用户键入“www.rest”,地址的首字母在其被输入到地址栏时被检测。基于自动完成地址的算法,对作为域名开头包括单词“restaurant”的网络地址进行建议。用户以前也曾购买过用于进行餐馆预定的应用程序。对于这一以前购买的应用程序的链接显示在地址栏下方的空间中。链接显示为黑色文字,向用户表明它是以前购买的应用程序。基于自动完成的餐馆猜测以及用户购买餐馆相关应用程序的以往历史,还显示餐馆点评应用程序的图标。图标的左侧是美元符号图标。在此实例中,美元符号表示应用程序将需要购买。美元符号和图标都以绿色显示,以表明这是推荐的应用。在此实例中,应用程序是基于应用程序是与餐馆有关的最流行的应用程序而建议的。
上面的情况可在用户键入网络地址的剩余部分时发生。当用户完成键入完整域名时,该域名用于识别相关的应用程序。匹配“reststops”官方应用程序是未知的。然而,应用程序与网站的相关性数据库中的两个应用程序在元数据中具有作为关键词的“reststops”或“rest stops”。基于到与应用程序相关联的元数据的这种域名匹配,这两个应用程序被识别为背景应用程序。对于应用程序的链接以蓝色显示,以表明背景关系。由于这些app不曾被购买,美元符号图标被包含为链接的一部分。
在此实例中,对应于“www.reststops.org”的页面以前曾被抓取和索引。即使页面尚未加载到浏览器中,基于页面内容的应用程序可基于先前的索引进行表层化。基于页面内容,多种与州际公路地图相关的其他应用程序也被识别为潜在的背景应用程序。五个最高排名的背景应用程序被选择为显示在地址栏下方。此外,用于定位加油站的推广应用的链接以红色显示。与餐馆应用程序有关的链接和图标也被移除。
在加载网页内容后,其他应用程序可被识别以进行显示。浏览器中的当前页面部分包括到包含州际公路系统的地图的网站的链接。此链接的域名匹配已识别的州际高速公路应用程序中的一个的名称。对于与洲际公路地图相关联的匹配应用程序的图标可从地址栏下方的显示位置移动并放置在页面内容中的网站链接近旁。于是,用户向下滚动页面,或将浏览器内的页面内容进行转换,以显示文档的另外的部分。这显示了另外的内容,包括对Wyoming州的休息停车站中存在的特殊功能的讨论。对Wyoming州的这种聚焦导致检测作为实体的“Wyoming”。其结果是,对于与Wyoming州的旅行有关的应用程序的链接在网页的可视部分中显示在Wyoming州的第一个实例附近。注意,在此实施例中,Wyoming应用程序的整体排名不会导致对于Wyoming的app的链接或图标普遍显示在地址栏下方的区域中。相反,Wyoming的app仅仅在对应的主题在浏览器中可见时显示。作为替代的是,与浏览器中可见的材料一起显示的任何应用程序可在所关联的材料当前不可见时显示在另一区域中。除了对于Wolming旅行应用程序的图标的新的显示以外,向下滚动页面使得州际公路地图链接不再在网络文档的显示部分内可见。因此,与州际公路系统有关的app被移回到地址栏下方的区域。
实例:app显示类别和集群
在完成对与休息停车站有关的网页的审阅后,用户决定光顾当地的咖啡馆。用户随身携带移动计算装置,例如电话或平板电脑大小的装置。在咖啡厅时,用户使用装置上的浏览器访问(虚构的)社交网站“www.contact-my-friends.com”。当用户键入网络地址时,在一开始,对应于社交网站的官方app被识别。指示对于该站点的官方app可用的图标被显示在地址栏中的网络地址旁边。
社交网站的一个特色在于,每周推广不同的音乐艺术家。推广有时包括购买音乐的折扣,使得用户通过点击链接来访问站点的推广音乐区。因为这是社交网站的常规特色,该链接导致访问网络地址“www.contact-my-friends.com/featuredartist”。基于模板,这一路径被识别为社交网络站点的推广音乐部分。社交网站具有与特色艺术家推广相关联的分立应用程序。结果,官方链接的图标被修改,以反映特色艺术家应用程序。
基于特色艺术家页面的内容,其他应用程序具有足够高的排名,且因此,对于这些足够高排名的应用程序,链接可被表层化。但是,由于移动装置上有限的可用显示空间,经由应用程序类别的链接或图标向用户提供或表层化其余的应用程序。特色艺术家作为实体被识别,导致识别出与该实体和/或由该实体演唱的歌曲有关的第一组应用程序。这些实体相关应用程序由单个链接代表。此链接可指示基于实体的应用程序正在由任何方便的方法表示。可为与歌曲的歌词有关的一组应用程序提供另一图标。第三个图标可提供到推广应用程序的链接。
样本操作环境
已经描述了本发明的实施例的概述,下面介绍可实现本发明的实施例的示例性操作环境,以提供对本发明的多种方面的一般背景。
下面的讨论描述了本发明的多种实施例。注意,下面描述的几个示例性实施例是基于当前应用程序的,以使讨论更加具体。然而,本发明的各方面不应理解为限于特定应用程序或提供特定应用程序的平台。也就是说,本发明的实施例可被设计成适用于不同的平台(例如,包括PC、iPhone®和Microsoft Windows®)以及应用市场上的其它多种实施方式。
首先特别参考图1,示出了用于实现本发明的实施例的示例性操作环境,且其被概括地指定为计算装置100。计算装置100只是合适的计算环境的一个示例,并非旨在建议对本发明的使用范围或功能性的任何限制。也不应将计算装置100解释为对所示出的任一部件或组合具有任何依赖性或要求。
本发明可以在计算机代码或由计算机或其他机器(例如个人数据助理或其他手持式装置)执行的机器可使用指令(包括计算机可执行指令,例如程序模块)的一般背景下描述。一般而言,包括例程、程序、对象、部件、数据结构等的程序模块指的是执行特定任务或实现特定抽象数据类型的代码。本发明可以在多种系统配置中实践,包括手持式装置、消费电子产品、通用计算机、更为专用的计算装置等。本发明也可在分布式计算环境中实施,其中,任务由通过通信网络连接的远程处理装置执行。
参考图1,计算装置100包括总线110,其直接或间接耦合以下装置:存储器112,一个或多于一个处理器114,一个或多于一个呈现部件116,输入/输出(I/O)端口118,输入/输出部件120,以及说明性的电源122。总线110所代表的可以是一条或多条总线(例如地址总线、数据总线或其组合)。虽然图1中的多个块为清楚起见用线示出,在现实中,多种部件的轮廓不是这样清晰的,并且,打个比方,灰色且模糊的线条是更准确的。例如,可将例如显示装置的呈现部件考虑为I/O部件。此外,处理器具有存储器。发明人认识到这是本领域的特性,并且重申,图1的图示仅是为了说明可以与本发明的一个或多于一个实施例结合使用的示例性计算装置。在“工作站”、“服务器”、“膝上型计算机”、“手持式装置”等这种类别之间不进行区分,因为所有都被设想在图1的范围并称为“计算装置”。
计算装置100典型地包括多种计算机可读介质。计算机可读介质可以为可由计算装置100访问并且既包括易失性又包括非易失性介质、既包括可移除又包括非可移除介质的任何可用介质。例如但不限于,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以用于信息(例如计算机可读指令、数据结构、程序模块或其它数据)存储的任何方法或技术实现的易失性和非易失性、可移除和非可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储器、盒式磁带、磁带、磁盘存储器或其他磁存储装置或可用于对希望的信息进行存储且可由计算装置100访问的任何其他介质。在一实施例中,计算机存储介质包括有形的计算机存储介质。在一实施例中,计算机存储介质包括非瞬时性计算机存储介质。
通信介质典型地包含计算机可读指令、数据结构、程序模块或例如载波或其他传输机制的调制数据信号中的其它数据,并包括任何信息传输介质。术语“调制数据信号”意味着这样的信号:其一个或多于一个的特性被设置或改变,以便在信号中对信息进行编码。例如但不限于,通信介质包括例如有线网络或直接线路连接的有线介质以及例如声波、RF、红外和其他无线介质的无线介质。上述的任何组合应当也包括在计算机可读介质的范围内。
存储器112包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移除的、不可移除的或其组合。示例性的硬件装置包括固态存储器、硬盘驱动器、光盘驱动器等。计算装置100包括一个或多于一个的处理器,其从例如存储器112或I/O部件120的多种实体读取数据。(多个)呈现部件116向用户或其他装置呈现数据指示。示例性的呈现部件包括显示装置、扬声器、打印部件、振动部件等。
I/O端口118可允许计算装置100逻辑耦合到包括I/O部件120的其他装置,其中的某些可以是嵌入式的。例证性的部件可包括麦克风、操纵杆、游戏手柄、碟形卫星天线、扫描仪、打印机、无线装置等。
现在将参照图2讨论为了对于浏览活动有关的应用程序进行表层化的通过本发明的实施例引入了的技术。特别地,图2描绘了一框图,其示出了适合用于实现本发明的实施例的分布式计算环境的示例性系统架构200。一般地,实现本发明的实施例涉及发现与浏览会话有关的app,并向用户呈现这些app(例如,作为修改的web页面一部分地和/或作为浏览器一部分地内嵌呈现app)。应当理解和认识到,图2所示的示例性系统架构200只是一个合适的计算环境的示例,并非旨在暗示对本发明使用范围或功能性的任何限制。也不应将示例性系统架构200解释为具有对其中所示的任何单个部件或部件组合的任何依赖性或要求。
最初,示例性系统架构200包括应用程序清单201,客户端装置210,数据存储器230,服务器250,应用程序市场290以及对这些项中的每一个进行互连的网络240。图2所示客户端装置210、数据存储器230、服务器250以及应用市场290中的每一个可采取多种类型的计算装置的形式,例如上面参照图1介绍的计算装置100。例如但不限于,客户端装置210和/或服务器250可以是个人计算机、台式计算机、膝上型计算机、消费品电子装置、手持式装置(例如,个人数字助理),多种服务器、处理装置等。然而,应当注意,本发明不限于在此类计算装置上的实施,而是可以在本发明的实施例的范围内的多种不同类型计算装置中的任意计算装置上实施。
典型地,装置210和250中的每一个包括或者被连接到某种形式的计算单元(例如,中央处理单元,微处理器等),以支持运行于其上的(多个)部件(例如app识别引擎275,索引引擎205,等等)。如本文所用的,短语“计算单元”一般指具有处理能力和存储器的专用计算装置,其上支持位于软件、应用程序和计算机程序执行底层的运行软件。在一个实例中,计算单元配置有一体的有形硬件元件或机器,或可操作地耦合到装置210和250,以使每个装置执行通信相关的处理和其它操作(例如,访问数据存储器230或在应用程序清单201中发现app 202)。在另一实例中,计算单元可包括耦合到由装置210和250中的每一个容纳的计算机可读介质的处理器(未示出)。
通常,计算机可读介质包括物理存储器,其至少是暂时地存储可由处理器执行的多个计算机软件部件。如本文所用的,词语“处理器”并不意味着限制性,并可包括在计算能力中起作用的计算单元的任何元素。在这样的能力中,处理器可以被配置为处理指令的有形制品。在一示例性实施例中,处理可以包括取得、解码/解释、执行和写回指令。
此外,除了处理指令外,处理器可向以及从集成到装置210和250或布置在装置210和250上的其他资源传送信息。通常,资源是指使得装置210和250执行特定功能的软件部件或硬件机制。仅仅作为举例而言,由服务器250容纳的资源可包括以下中的一个或多于一个:索引引擎205;抽象的对象部件260;web索引265;排名部件270,以及app识别引擎275。这些资源的一个或多于一个的存在可允许服务器作为应用程序匹配引擎。作为替代的是,应用程序匹配可由搜索引擎执行。
客户端装置210可包括输入装置(未示出)和呈现装置215。通常,除其他的以外,输入装置被提供为接收影响在浏览器窗口225中显示的网络地址和对应的页面的(多个)输入以及用于表层化应用的任何链接。说明性装置包括图1的鼠标、操纵杆、小键盘、麦克风、I/O部件120,或能够接收用户输入并将对该输入的指示传送到客户端装置210的任何其他部件。
在实施例中,呈现装置215被配置成在其上渲染和/或呈现UI显示220。呈现装置215——其可操作地耦合到客户端装置210的输出——可被配置为能够向用户呈现信息的任何呈现部件,例如数字监视器、电子显示面板、触摸屏、模拟机顶盒、等离子体屏幕、音频扬声器、盲文垫等等。在一示例性实施例中,呈现装置215被配置成呈现丰富的内容,例如用由用户(例如,数字图像)请求的网络位置填充的显示区的浏览器窗口225。在另一示例性实施例中,呈现装置215能够渲染其他形式的介质(例如,音频信号)。在又一示例性实施例中,呈现装置215可在app的表示的近旁呈现网页的一部分(例如,网站的链接和介绍),如下面更充分地讨论的那样。
(多个)数据存储器230一般被配置为存储与从当前或以前的浏览会话生成的数据相关联的信息。在多种实施例中,这样的信息可包括但不限于,一般社会的记录下来的浏览行为231(例如活动日志),特定用户的追踪到的与网络位置的交互日志232,以及涉及本发明的实施例的其他信息233。此外,(多个)数据存储器230可被配置为可搜索,以得到对于所存储的信息的合适的访问。本领域普通技术人员将会理解和明白,存储在(多个)数据存储器230中的信息可以是可配置的,并可包括与基于浏览活动识别相关应用程序有关的任何信息。这些信息的内容和数量并非旨在以任何方式限制本发明的实施例的范围。另外,虽然被示出为单个、独立的部件,(多个)数据存储器230实际上可以是多个数据库,例如数据库集群,其中一部分可驻留在客户端装置210、服务器250、另一外部计算装置(未示出)和/或它们的任意组合上。
相应地,在本发明的实施例的范围内,可使用任何数量的部件实现期望的功能。虽然图2中的多种部件为清楚起见用线示出,在现实中,对多种部件进行界定不是这么清楚的,并且,打个比方,更准确地而言,线条将是灰色的或模糊的。进一步地,虽然图2中的某些部件被示为单个块,描述在性质和数量上是示例性的,不应当被解释为限制(例如,虽然只示出了一个呈现装置215,许多更多的呈现装置可以可通信地耦合到客户端装置210)。
进一步地,示例性系统架构的装置可通过在相关领域已知的任何方法相互连接。例如,服务器250和客户端装置210可以可操作地经由分布式计算环境耦合,其包括经由一个或多于一个网络240彼此耦合的多个计算装置。在实施例中,网络240可包括但不限于,一个或多于一个局域网(LAN)和/或广域网(WAN)。这样的联网环境常见于办公室、企业范围的计算机网络、内联网和因特网。因此,这里不对网络作进一步描述。
在操作中,部件205、260、265、270和275被设计为执行这样的过程:其至少包括以下步骤:从在客户端装置210上运行的web浏览器222接收网络地址285;基于网络地址285确定对应的文档295;用网络地址285以及对应的文档295的特征203检查应用程序清单201,以识别映射于其上的app 202,并向web浏览器222发送相关的app 280,以便在浏览器窗口225中呈现。最初,如图2中所示,应用程序清单201典型地包括app 202和网站的特征或关键词203之间的映射。这些特征或关键词203可能涉及网站的任何已知属性,其可被识别为用于将这些网站数字地链接到app 202,如下面更为充分地讨论的那样。
在实施例中,索引引擎205可负责构建和维护应用程序清单201。举例而言,构建应用程序清单201可涉及,使用网站的特征203,对应用程序市场290进行抓取以找到可用的app 202,并将app 202与网站相关联。对应用程序市场290进行抓取可包括从例如app商店291、app评级论坛292和/或app目录293的源中发掘应用程序。应该理解和明白的是,可以使用用于访问应用程序的其他源,示出的源291-293并不代表穷举性列表。进一步地,应用程序市场290可基于客户端装置210上运行的应用程序平台(例如,Microsoft® Apps、Andriod®等)而变化。
典型地,预定义的实体可在应用程序清单201中被索引,作为可用与正在进行的浏览活动有关的一个或多于一个实体询问的特性203。更一般地,其它特性可在应用程序清单201中被索引。应用程序表层化部件可得出文档中存在的一个或多于一个的实体,并将得出的实体传送到抽象对象部件260,抽象对象部件260转而将得出的实体与应用程序清单201内的预定义实体进行比较。在找到匹配时,抽象对象部件260于是识别出映射到匹配的预定义实体的app 202,并将识别出的app 202指定为呈现候选。
一旦这些特性310从网络地址和/或网页内容中识别出,通过使用特性310来检查应用程序清单201,确定与网络地址285/文档295的特性310相关的app 280。可在app识别引擎275内提供特性匹配部件276(参见图3),以便通过将特性310与预定义的特性203进行比较来对应用程序清单201进行检查,从而找到匹配的应用程序280,如操作420处所描述的那样。如上面所提到的,图2的索引引擎205被提供,以发掘应用程序202,并构建和维护在所发掘应用程序202与预定义的特性203之间的映射。在实例中,预定义特性203可包括抽象对象,其描述用户在实施搜索事件时的相应的意图。
在一示例性实施例中,特性匹配部件276可从网页内容295识别关键词和/或实体信息,并使用关键词和/或实体的信息来询问应用程序清单201的预定义特性203。在其它实施例中,如上面所讨论的那样,来自网络地址285的关键词可以被抽象化并直接用于发现相关的app,而不考虑页面内容295。
通过实施选择部件277,可从相关app 280中选择评级最高的应用程序330。在一实例中,选择部件277被配置为选择从特性匹配部件276返回的(多个)相关app 280,并将(多个)app 280存储为候选,用于与初始的一组搜索结果295同时显示。在另一实例中,选择部件277可负责通过与排名部件270交互来将相关app 280缩窄到评级最高的应用程序330。如上面参照图2更为详细地讨论的那样,排名部件270用于基于一个或多于一个评级方案对相关app 280进行组织,并基于至少一个预定义阈值对在搜索结果295内表层化的应用程序进行限制。
在又一实例中,选择部件277可与在客户端装置210上运行的app客户端223交互,如图3所示。App客户端223可以访问安装在客户端装置上的应用程序221(参见图2)。因此,app客户端223可帮助选择部件277基于驻留客户端装置210的存储器中的所安装app 221的标识,从相关应用程序280中选择评级最高的应用程序330。
在又一实例中,选择部件277可被设计为编译或提供对在用户正在实施搜索事件时累积的用户交互日志的访问。在审阅用户交互日志中存留的数据时,选择部件277可将来自日志的信息与应用程序清单201的预定义特性203进行比较,以发现相关app 280。或者,选择部件277可应用日志信息,以便从相关app 280中过滤低评级应用程序。
在另一实例中,选择部件277可被配置为检查app的(多个)排名尺度(例如,基于人气的排名和/或基于相关性的排名),以便从相关app 280中提炼出评级最高的应用程序330。这些排名尺度可从任意数量的源(例如,图2的app排名论坛292、一般搜索和/或下载日志得出的数据、以app为中心的博客、文章、观点帖子或其它有声望的来源)得出,并可用来有效地排除那些在一开始判断为无关的app 280。例如,如果视频游戏返回为相关app 280,选择部件277可按照(多个)排名尺度将视频游戏的主要版本确定为评级最高,同时,将剩余版本(例如,节日版、特别发行以及攻略和提示)列为较低评级。结果,评级最高的应用程序330的发送320可被传送,以便在web浏览器222中进行渲染,而较低评级的应用程序可被缓存,以备用户在检查搜索结果295时想要对其它应用程序进行表层化。
现在转到图3,渲染部件278可在app识别引擎275内提供,用于在浏览器布局上的位置或是在作为被显示文档一部分的位置上放置至少一个应用程序的视觉表示。可使渲染部件278根据一个或多于一个标准在浏览器或文档内放置评级最高的应用程序330的表示。例如,当标准指示浏览器或者文档中可用的地盘有限时,呈现部件278可选择对在搜索结果页面呈现的评级最高的应用程序330的个数进行限制。相反,如果浏览器预先配置为具有足够的地方,则渲染部件278可选择另外的最高评级应用程序330以进行显示。
在另一实施例中,渲染部件278放置评级最高应用程序330的表示所使用的标准可涉及由选择部件277识别的若干个评级最高的应用程序330。例如,如果只识别出两个评级最高的应用程序330,那么,仅仅那些评级最高的应用程序330经由传送320被发送到web浏览器222,以便向用户进行显示。
在多种实施例中,可接收对于对象应用程序的链接的选择。例如,选择可包括用户发起的对链接的选择(例如,鼠标点击或悬停动作)。在web浏览器222上接收到对对象应用程序的选择时,web浏览器222可尝试在客户端装置210上打开对象应用程序。当对象应用程序安装在客户端装置210上时,直接从搜索结果页打开对象应用程序。然而,当对象应用程序未在客户端装置210上安装时,web浏览器222可以自动将用户导航到出售对象应用程序的网站(例如,图2的app商店291)。或者,客户端装置210上运行的app客户端223可在其上自动安装对象应用程序。
在示例性实施例中,如图2所示,应用程序客户端223被设计为,通过作为web浏览器222与所安装的app 221的(多个)目录之间的接口,检测对象应用程序当前是否在客户端装置210上驻留。注意,在一些实施例中,安装的app 221可对应于或部分对应于购买的app。在一实例中,app客户端223被配置为协议处理器和/或系统提供的应用程序编程接口(API)。当应用程序被安装到客户端装置210时,安装的应用程序注册到协议处理器。因此,安装的应用程序现在可以通过调用协议处理器已知的协议来打开。在操作中,当接收用户已从搜索结果页中选择对象应用程序的指示时,web浏览器222可将选择指示传送到协议处理器(例如,app客户端223),app客户端223转而发布到安装的应用程序221的“打开”命令或调用。如果对象应用程序响应于该命令打开,则应用程序客户端223明了对象应用程序被安装到客户端装置210。如果对象应用程序未打开,则app客户端223明了对象应用程序未安装到客户端装置210,并向用户提供从应用程序市场290下载应用程序的选项。因此,通过利用app客户端223的协议处理器能力,在已安装的app 221内对对象应用程序的检测相对比较高效,且不需要获取安装的app 221的列表以进行劳动力密集的查找。
在一个实例中,安装到客户端装置210的应用程序的检测可以伴随将评级最高的应用程序加到搜索结果进行。通过这种方式,app客户端223的协议处理器机制可在web浏览器222从搜索引擎275接收到一个或多于一个应用程序被选择为包含在搜索结果页面内的通知的情况下调用。然后,app客户端223可通过任何已知的过程(例如,使用“打开”命令的检测)来检查安装的app 221,以确定为渲染所选择的(多个)应用程序是否实际安装在客户端装置210上。如果是的话,app客户端223可指令web浏览器222对被渲染的(多个)应用程序的呈现方面进行修改,使得向用户通知(多个)应用程序先前被下载到客户端装置210(例如,修改控制按钮525,以表明施加于其上的点击动作将打开应用程序)。如果不是,app客户端223可指令web浏览器222对被渲染的(多个)应用程序的呈现方面进行修改,使得向用户通知(多个)应用程序未被安装到客户端装置210(例如,修改控制按钮535,以指示施加于其上的点击动作将安装应用程序)。
当用户指示调用将打开的对象应用程序的对象应用程序的选择时,背景(例如,用户与图2的web浏览器222的交互)可被传送到对象应用程序,以建立高级入口点而不是根入口点,其中,根入口点被配置为对象应用程序的默认启动首页。在某些情况下,这种背景可以基于用户与浏览器和/或网络文档的交互。例如,浏览器可记录浏览会话期间用户访问的当前和/或以前的文档,并从查询中的词语和短语得出背景。于是,这种背景可被转换为打开过程中插入对象应用程序的参数,由此直接将用户引到与查询相关的内容或高级入口点。
得出背景的一种方法可包括解析至少一个网络地址,例如通过使用模板,以及使用从网络地址提取的关键词来操作打开的应用程序。例如,URL“www.urbanspoon.com/Seattle/Bellevue/Italian-Restaurants”可在用户访问与该URL相关联的文档时提供背景。在这种情况下,背景指示用户正在指出的网站上寻找位于WA,Bellevue的意大利餐馆。这种背景可被转换成参数并在打开时插入Urbanspoon®应用程序。参照上面的实例,将网络地址转换参数的过程可包括识别关键词背后的意图并将分类指示符附着到关键词,例如下面的:域名=restaurants;风味=Italian;位置=Bellevue以及任务=预订。可通过使用模板解析网络地址来促进意图识别和类别附着。
向打开的应用程序插入参数的过程可涉及以下步骤:确定应用程序导航到高级入口点需要的正确的信息,以及,确定为了与用户正确交互可能由应用程序接受的参数的格式。例如,应用程序可被设计为解析原始的、未被处理的URL而不使用专门的参数,因而,混淆在app客户端223上对背景进行转换的需求。在另一实例中,app客户端223可被触发为识别打开的应用程序的优选格式,以便适当地传递作为参数的背景,并以便于与打开的应用程序正确地接口。因此,app客户端223可采取行动,以弥合搜索事件背景和打开的应用程序之间的通信差距。
例如,如果用户正在从站点“www.yelp.com”获取有关餐馆评论的信息,app客户端223可认识到,在打开过程中将数据传递到Yelp®应用程序之前,Yelp®应用程序需要应用到网络地址的预处理。在这种情况下,预处理可包括从网络地址提取商家标识符(ID),并将所搜索的餐馆的商家ID传递给Yelp®应用程序,以便进入针对商家ID数据类型指定的争辩。结果,Yelp®应用程序将启动到与所识别的餐馆相关联的高级入口点。
图4示意性地示出了根据本发明实施例显示对应于网络地址的文档的浏览器以及到匹配文档的应用程序的链接的实例。在图4中,浏览器包括地址栏405。地址栏包含(虚构的)网络地址。对应于网络地址的文档430也显示在浏览器中。在图4中,文档430的内容421的第一部分是当前可见的。基于网络地址和对应的文档,显示对于与文档匹配的几个app的链接。App链接411和412对应于正在用于显示浏览器的用户装置上已安装的app。App链接413和414代表可用于购买的app,如被包括为链接的一部分的美元符号图标所示。在其它实施例中,可以使用用于指示app可供购买的任何其它方便的方法。在图4中,用于显示app链接的文本的颜色提供了对应用程序与文档的关系的指示。例如,app链接1(411)显示为绿色,代表app链接1对应于域名的官方app。在图4所示的实例中,蓝色的app连接412和414对应于背景app,而app链接413的红色文本对应于推广app。如图4所示,app链接414实际上对应于为方便起见成组表示的一组背景app。
图5示出了当用户访问一组app的链接时,所显示的视图如何改变的例子。如果用户希望访问app链接414表示的多个app中的一个,用户可点击或以其他方式访问链接。如图5所示,这会导致为个体app显示分立的链接541、542和543。分立的链接541、542和543也可被显示为现有的浏览器框架的一部分,或者,链接可在分立的窗口540中显示,如图5所示。在其它实施例中,组链接可表示任何方便的数量的app。
图6示出了替代性实施例,其中,浏览器框架的空间量是更加有限的。在此实施例中,与文档匹配的应用程序的可用性可通过地址栏中的图标609表示。访问图标609可导致以任何方便的方式显示匹配的应用程序,例如在图5所示的分立窗口540中显示。
图7a和7b示意性地示出了根据本发明又一实施例的对对应于网络地址的文档的显示。在图7a中,文档430包括第一内容部分721、网站链接722和第三内容部分723。在图7a中,app链接412对应于网站链接722的官方应用程序。结果,app链接412可被显示在网站链接722的近旁。
图7b示出了同一文档在用户已在文档中向下滚动后的视图。在图7b中,由于文档的滚动,第一内容部分721和网站链接722不再可见。文档的可见部分现在包括第三内容部分723、实体内容724和第五内容部分725。因为网站链接722不再可见,app链接412可返回到其他app链接附近的浏览器框架。在此实施例中,app链接412具有足够高的排名,使得它总是与文档一起显示。仅改变app链接412的显示位置。形成对比的是,app链接715的排名不够高到总是显示。作为替代的是,app链接715仅在实体内容724在显示装置中可见时显示。在7b中,app链接715显示在实体内容724近旁。App链接715可代表与对应于实体内容724的实体有关的应用程序。
另外的实施例
在一实施例中,提供了一种基于浏览活动对一个或多于一个应用程序进行表层化的方法。这种方法的一个例子示于图8。该方法可包括检测810浏览器地址栏中的一个或多于一个字符,所述一个或多于一个字符具有网络地址格式。可从所述一个或多于一个检测到的字符中提取820一个或多于一个关键词。视情况可选地,在字符被检测到后,字符可从浏览器被转送到应用程序匹配引擎,例如搜索引擎。然后,可对由搜索引擎接收到的字符视情况可选地进行对所述一个或多于一个关键词的提取。至少一个应用程序可与来自所述一个或多于一个提取出的关键词中的至少一个所提取关键词匹配830。所述至少一个匹配的应用程序的标识于是可被发送840到浏览器。与所述至少一个匹配的应用程序对应的至少一个链接可由浏览器显示850。
该方法可包括检测910浏览器地址栏中的多个字符,所述多个字符具有网络地址格式。所述多个字符可对应于文档位置。可从所述多个检测到的字符提取920一个或多于一个关键词。视情况可选地,在字符被检测到之后,字符可从浏览器被转送到应用程序匹配引擎,例如搜索引擎。然后,视情况可选地可对由搜索引擎接收到的字符进行所述一个或多于一个关键词的提取。关键词也可视情况可选地从与该文档位置相关联的文档中提取。多个应用程序可与从所述多个字符中提取的、从相关联的文档中提取的或从其组合提取的至少一个关键词匹配930。所述多个匹配应用程序可被分配940到对应于应用程序与相关联文档的关系的类别。于是,一个或多于一个匹配的应用程序与所分配类别的标识可被发送950到浏览器。对应于分配给至少两个类别的匹配的应用程序的一个或多于一个链接可被显示960,所显示的链接提供对于匹配的应用程序所分配的类别的指示。
在又一实施例中,提供了一种基于浏览活动对一个或多于一个应用程序进行表层化的方法。这种方法的一个实例示于图10。该方法可包括检测1010地址栏中的多个字符,所述多个字符具有网络地址格式。所述多个字符可对应于文档位置。所关联文档的第一部分可被显示1020。视情况可选地,所述多个字符可被转送到应用程序匹配引擎,例如搜索引擎。一个或多于一个关键词可从所述多个字符中、从相关联的文档中或从其组合中提取1030。至少一个应用程序可基于所提取的关键词进行匹配1040。此应用程序的标识可由应用程序匹配引擎发送并由浏览器接收。至少一个链接可对应于匹配的应用程序地被显示1050。所关联的文档的第二部分可被显示1060。位于所关联文档的显示的第二部分内的至少一个提取出的关键词可被识别1070。所显示的至少一个链接可基于位于所关联文档的显示的第二部分内的识别出的(多个)提取关键词来修改1080。
在一替代性实施例中,可对例如图8所示方法的方法进行修改,以结合基于位置的应用程序过滤。这种方法的一个例子示于图11。该方法可包括检测1110浏览器地址栏中的一个或多于一个字符,所述一个或多于一个字符具有网络地址格式。可从所述一个或多于一个检测到的字符中提取1120一个或多于一个关键词。视情况可选地,在字符被检测之后,字符可从浏览器转送到应用程序匹配引擎,例如搜索引擎。然后,可视情况可选地对由搜索引擎接收到的字符进行对所述一个或多于一个关键词的提取。多个应用程序可与来自所述一个或多于一个所提取关键词中的至少一个提取出的关键词进行匹配1130。对应于浏览器的计算装置的位置于是可被确定1140。所述多个匹配的应用程序可基于所确定的位置进行滤波1150。所述至少一个匹配的、过滤后的应用程序的标识于是可被发送1160到浏览器。对应于所述至少一个匹配的、过滤后的应用程序的至少一个链接可由浏览器显示1170。
在一实施例中,一种计算机实现的方法包括:接收对应于在浏览器地址栏中检测到的字符的一个或多于一个字符,其具有网络地址格式;将一个或多于一个应用程序与从所述一个多于一个字符提取的至少一个关键词进行匹配;以及,响应于接收到所述一个或多于一个字符,发送所述一个或多于一个匹配的应用程序的标识。
在另一实施例中,提供了一种用于根据搜索结果对一个或多于一个应用程序进行表层化的计算机实现的方法,该方法包括:接收具有网络地址格式的多个字符,所述多个字符对应于文档位置;将多个应用与从所述多个字符、与文档位置相关联的文档或其组合中提取的至少一个关键词匹配;将所述多个匹配的应用程序分配到与应用程序和相关联文档的关系对应的类别;以及,响应于接收到所述一个或多于一个字符,发送所述一个或多于一个匹配的应用程序以及所分配的类别的标识。
在又一实施例中,一种计算机实现的方法包括:在浏览器的地址栏中检测多个字符,多个字符具有网络地址格式;显示与检测到的多个字符对应的文档位置相关联的文档的第一部分;将检测到的多个字符转送到搜索引擎;接收与从所述多个字符、相关联的文档或其组合中提取的关键词匹配的一个或多于一个应用程序的标识;显示对应于匹配的应用程序的至少一个链接;显示所关联的文档的第二部分;识别位于所关联文档的显示的第二部分内的提取出的关键词;基于位于所关联文档的显示出的第二部分内的所识别的提取关键词,修改所显示的至少一个链接。
在又一实施例中,提供了一种根据搜索结果对一个或多于一个应用程序进行表层化的计算机实现的方法,该方法包括:接收对应于具有网络地址格式的在浏览器地址栏中检测到的字符的一个或多于一个的字符,从接收到的一个或多于一个字符中提取至少一个关键词; 基于所述至少一个提取出的关键词对多个应用程序进行匹配;确定计算装置的位置;基于所确定的位置对所述多个匹配的应用程序进行过滤;以及,发送所述一个或多于一个匹配的过滤后的应用程序的标识。
在又一实施例中,一种计算机实现的方法包括:接收第一多个字符,其具有对应于局部网络地址的网络地址格式;用一个或多于一个附加字符对所述第一多个字符进行扩展,以产生多个扩展网络地址;从所述多个扩展网络地址的至少一个中提取一个或多于一个主关键词;基于所提取的一个或多于一个第一关键词,匹配至少一个第一应用程序;接收第二多个字符,所述第一多个字符结合所述第二多个字符具有与文档位置对应的网络地址;识别与文档地址相关联的文档;从所接收的第一多个以及第二多个字符、所关联的文档或其组合提取一个或多于一个次关键词;基于所提取的次关键词,匹配至少一个第二应用程序;以及,发送所述至少一个匹配的应用程序的标识。
在又一实施例中,一种计算机实现的方法包括:在浏览器地址栏中检测一个或多于一个字符,所述一个或多于一个检测到的字符具有网络地址格式;从浏览器地址栏中的所述一个或多于一个字符中提取一个或多于一个关键词;将所述一个或多于一个提取出的关键词转送到搜索引擎;接收与所提取的关键词匹配的一个或多于一个应用程序的标识;以及,显示与一个或多于一个匹配的应用程序对应的至少一个链接。
为满足法律要求,对这里所公开的本发明的实施例的主题进行了具体介绍。然而,介绍本身并非旨在对本专利的范围进行限制。相反,发明人已经想到,结合其他现有的或未来的技术,权利要求保护的主题还可以以其他方式实现,包括与本文档中介绍的步骤或步骤组合类似的不同步骤或步骤组合。
已经以说明性而非限制性方式对本发明的多种实施例进行介绍。在不脱离本发明的实施例的范围的情况下,将会不时地想到替代性的实施例。将会明了,某些特征和子组合具有实用性,并可在不参照其他特征和子组合的情况下使用。这通过权利要求的范围设想,并被包括在权利要求的范围内。

Claims (10)

1.一种计算机实现的方法,用于基于浏览活动对一个或多于一个应用程序进行表层化,该方法包括:
接收与在浏览器地址栏中检测到的具有网络地址格式的字符对应的一个或多于一个字符,其中所述浏览器地址栏包括少于完整的网络地址;
将一个或多个应用程序与从所述一个或多于一个字符中提取的至少一个关键词相匹配;
响应于接收到所述一个或多于一个字符,发送一个或多个所匹配的应用程序的标识;
显示包括所述一个或多个匹配的应用程序的一个或多个表层化应用程序,所述一个或多个表层化应用程序中的一应用是与文档的第一可查看区域一起并且是在浏览器框架中显示的;
将所述文档的所述第一可查看区域改变为所述文档的第二可查看区域,其中所述第二可查看区域包括在所述第一可查看区域中不可见的内容部分;
响应于所述第一可查看区域的改变,识别所述内容部分与所述应用相对应;以及
基于识别所述内容部分与所述应用相对应,将所述应用的显示位置从在所述浏览器框架中改变到在所述第二可查看区域的所述内容部分的近旁。
2.根据权利要求1的计算机实现的方法,其中,接收与在浏览器地址栏中检测到的字符对应的一个或多于一个字符包括:接收从所述一个或多于一个字符中提取的至少一个关键词。
3.权利要求1所述的计算机实现的方法,其中,将所述多个应用程序与从所接收到的字符提取的至少一个关键词相匹配包括:
识别包含相对于文字流方向的最后一个字符的所提取关键词;
用一个或多于一个附加字符对识别的所提取的关键词进行扩展,以生成多个扩展关键词;以及
基于选自所述多个扩展关键词的扩展关键词以及一个或多于一个非识别出的所提取关键词,对应用程序进行匹配。
4.权利要求1所述的计算机实现的方法,包括完成完整的网络地址,其中,所述完整的网络地址包括具有注册模式的国际化资源标识符或统一资源标识符。
5.权利要求1所述的计算机实现的方法,其中,将一个或多个应用程序与所述至少一个所提取关键词相匹配包括:
将所述至少一个所提取关键词与应用程序关键词索引中的关键词进行比较;
基于所述比较,对一个或多于一个应用程序进行排列;以及
将排名大于排名阈值的至少一个应用程序选择为与网络地址匹配的应用程序。
6.上述任一权利要求所述的计算机实现的方法,该方法进一步包括将所述多个匹配的应用程序分配给与应用程序和所关联文档的关系对应的类别,其中,发送所述多个匹配的应用程序的标识包括发送对于所述多个匹配的应用程序所分配的类别。
7.权利要求6所述的计算机实现的方法,其中,将一个或多个应用程序与所关联的文档相匹配包括:
基于所提取的关键词,检测实体;以及
基于检测到的实体,选择一个或多于一个应用程序。
8.权利要求1所述的计算机实现的方法,其还包括:
选择具有与网络地址格式对应的格式的地址模板,地址模板包括一个或多于一个模板字段;以及
从接收到的一个或多于一个字符中提取与所述一个或多于一个模板字段对应的至少一个关键词。
9.权利要求1所述的计算机实现的方法,该方法还包括:
确定计算装置的位置;以及
基于所确定的位置,对所述多个匹配的应用程序进行过滤,
其中,发送所述多个匹配的应用程序的标识包括:发送所述多个匹配的过滤后的应用程序的标识。
10.权利要求1所述的计算机实现的方法,其中,第一多个字符具有对应于局部网络地址的网络地址格式,其中,将多个应用程序与从所述一个或多于一个字符提取的至少一个关键词相匹配包括:
用一个或多于一个附加字符对所述第一多个字符进行扩展,以生成多个扩展的网络地址;
从所述多个扩展的网络地址的至少一个中提取一个或多于一个主关键词;
基于所提取的一个或多于一个主关键词,对至少一个第一应用程序进行匹配;
接收第二多个字符,所述第一多个字符与所述第二多个字符结合具有对应于文档位置的网络地址;
识别与文档位置相关联的文档;
从所接收的第一多个以及第二多个字符、所关联的文档或其组合提取一个或多于一个次关键词;以及
基于所提取的次关键词,对至少一个第二应用程序进行匹配。
CN201280029479.0A 2011-06-16 2012-06-15 基于浏览活动识别匹配应用 Active CN103620588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810336640.8A CN108563750B (zh) 2011-06-16 2012-06-15 基于浏览活动识别匹配应用

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/161,792 2011-06-16
US13/161,792 US9519726B2 (en) 2011-06-16 2011-06-16 Surfacing applications based on browsing activity
PCT/US2012/042789 WO2012174458A2 (en) 2011-06-16 2012-06-15 Identifying matching applications based on browsing activity

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201810336640.8A Division CN108563750B (zh) 2011-06-16 2012-06-15 基于浏览活动识别匹配应用

Publications (2)

Publication Number Publication Date
CN103620588A CN103620588A (zh) 2014-03-05
CN103620588B true CN103620588B (zh) 2018-05-22

Family

ID=47354553

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201810336640.8A Active CN108563750B (zh) 2011-06-16 2012-06-15 基于浏览活动识别匹配应用
CN201280029479.0A Active CN103620588B (zh) 2011-06-16 2012-06-15 基于浏览活动识别匹配应用
CN201280029455.5A Active CN103620583B (zh) 2011-06-16 2012-06-15 根据浏览活动显现应用

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201810336640.8A Active CN108563750B (zh) 2011-06-16 2012-06-15 基于浏览活动识别匹配应用

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201280029455.5A Active CN103620583B (zh) 2011-06-16 2012-06-15 根据浏览活动显现应用

Country Status (6)

Country Link
US (2) US9519726B2 (zh)
EP (2) EP2721515A4 (zh)
JP (1) JP5956569B2 (zh)
KR (2) KR101953303B1 (zh)
CN (3) CN108563750B (zh)
WO (2) WO2012174458A2 (zh)

Families Citing this family (128)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9733934B2 (en) 2011-03-08 2017-08-15 Google Inc. Detecting application similarity
US20120311050A1 (en) * 2011-06-01 2012-12-06 Eitan Lev User browsing experience
JP5772331B2 (ja) * 2011-07-20 2015-09-02 カシオ計算機株式会社 学習装置及びプログラム
CA2854142A1 (en) * 2011-11-01 2013-05-10 Google Inc. Launching applications from webpages
KR20130065802A (ko) * 2011-11-30 2013-06-20 삼성전자주식회사 키워드를 이용한 애플리케이션 추천 시스템 및 방법
US8326831B1 (en) * 2011-12-11 2012-12-04 Microsoft Corporation Persistent contextual searches
US20130218860A1 (en) * 2012-02-22 2013-08-22 Trader Eye Ltd. Networked services via intermediaries
US9345966B2 (en) 2012-03-13 2016-05-24 Sony Interactive Entertainment America Llc Sharing recorded gameplay to a social graph
US11406906B2 (en) 2012-03-13 2022-08-09 Sony Interactive Entertainment LLC Network connected controller for direct to cloud gaming
US10913003B2 (en) * 2012-03-13 2021-02-09 Sony Interactive Entertainment LLC Mini-games accessed through a sharing interface
US10475084B2 (en) 2012-03-30 2019-11-12 Rewardstyle, Inc. System and method for dynamic creation of product links from a web browser application
US9569500B2 (en) * 2012-04-27 2017-02-14 Quixey, Inc. Providing a customizable application search
US8856168B2 (en) * 2012-04-30 2014-10-07 Hewlett-Packard Development Company, L.P. Contextual application recommendations
US8990183B2 (en) 2012-06-06 2015-03-24 Microsoft Technology Licensing, Llc Deep application crawling
CN103473225B (zh) * 2012-06-06 2016-04-06 腾讯科技(深圳)有限公司 页面显示方法和装置
US9317878B2 (en) * 2012-06-10 2016-04-19 Apple Inc. User interface for accessing an applet in a browser on a mobile device
US9495456B2 (en) 2012-06-25 2016-11-15 Google Inc. Selecting, ranking, and/or presenting microsite content
KR20140009778A (ko) * 2012-07-13 2014-01-23 라인 가부시키가이샤 메신저 플랫폼의 사용자 관계정보에 기반하여 다양한 서비스를 제공하는 방법 및 시스템
US8589911B1 (en) * 2012-07-26 2013-11-19 Google Inc. Intent fulfillment
EP2904482A4 (en) * 2012-10-01 2016-06-22 Yandex Europe Ag METHOD AND SYSTEM FOR PROVIDING INFORMATION TO A USER OF A CLIENT DEVICE
US9364743B2 (en) 2012-12-21 2016-06-14 Sony Interactive Entertainment America Llc Generation of a multi-part mini-game for cloud-gaming based on recorded gameplay
US9352226B2 (en) 2012-12-21 2016-05-31 Sony Interactive Entertainment America Llc Automatic generation of suggested mini-games for cloud-gaming based on recorded gameplay
US9358461B2 (en) * 2012-12-26 2016-06-07 Sony Interactive Entertainment America Llc Systems and methods for ranking of cloud executed mini-games based on tag content and social network content
KR20140089751A (ko) * 2013-01-07 2014-07-16 엘지전자 주식회사 상황 인지를 이용한 지능형 검색 서비스 방법 및 그 단말기
US9002821B2 (en) 2013-01-16 2015-04-07 Google Inc. Indexing application pages of native applications
US20140250147A1 (en) 2013-03-01 2014-09-04 Quixey, Inc. Generating Search Results Containing State Links to Applications
US20140280131A1 (en) * 2013-03-13 2014-09-18 Motorola Mobility Llc Recommendations for Applications Based on Device Context
KR101995283B1 (ko) 2013-03-14 2019-07-02 삼성전자 주식회사 휴대 단말기의 앱 제공 방법 및 시스템
US9146972B2 (en) 2013-03-15 2015-09-29 Google Inc. Ranking of presentation modes for particular content
US8996520B2 (en) 2013-03-15 2015-03-31 Google Inc. Ranking of native application content
US11263221B2 (en) 2013-05-29 2022-03-01 Microsoft Technology Licensing, Llc Search result contexts for application launch
US10430418B2 (en) 2013-05-29 2019-10-01 Microsoft Technology Licensing, Llc Context-based actions from a source application
US9135346B2 (en) 2013-06-07 2015-09-15 Google Inc. Index data for native applications
US20140365944A1 (en) * 2013-06-09 2014-12-11 Apple Inc. Location-Based Application Recommendations
US20140379747A1 (en) * 2013-06-19 2014-12-25 Microsoft Corporation Identifying relevant apps in response to queries
CN103455566B (zh) * 2013-08-16 2017-06-06 北京奇虎科技有限公司 信息展示方法及装置
CN103399877B (zh) * 2013-08-19 2016-08-10 四川公用信息产业有限责任公司 基于Android应用的垂直搜索方法及系统
WO2015028898A1 (en) 2013-08-29 2015-03-05 Yandex Europe Ag A system and method for displaying of most relevant vertical search results
US9311407B2 (en) 2013-09-05 2016-04-12 Google Inc. Native application search results
RU2583739C2 (ru) * 2013-10-16 2016-05-10 Общество С Ограниченной Ответственностью "Яндекс" Сервер для определения поисковой выдачи на поисковый запрос и электронное устройство
CN105122760B (zh) * 2013-11-06 2019-04-26 华为终端(东莞)有限公司 页面操作处理方法、装置及终端
US9727545B1 (en) * 2013-12-04 2017-08-08 Google Inc. Selecting textual representations for entity attribute values
US10304110B2 (en) 2013-12-26 2019-05-28 Ebay Inc. Ticket listing triggered by URL links
US9720672B2 (en) 2014-01-06 2017-08-01 Quixey, Inc. Searching and accessing application functionality
US10789554B2 (en) 2014-01-08 2020-09-29 Stubhub, Inc. Validity determination of an event ticket and automatic population of admission information
US9600258B2 (en) 2014-02-14 2017-03-21 Google Inc. Suggestions to install and/or open a native application
US20150242421A1 (en) 2014-02-21 2015-08-27 Quixey, Inc. Location-Based Searching
US9608870B1 (en) 2014-02-28 2017-03-28 Google Inc. Deep link verification for native applications
US9251224B2 (en) 2014-03-04 2016-02-02 Google Inc. Triggering and ranking of native applications
US9652508B1 (en) 2014-03-05 2017-05-16 Google Inc. Device specific adjustment based on resource utilities
US10061796B2 (en) * 2014-03-11 2018-08-28 Google Llc Native application content verification
US9645980B1 (en) 2014-03-19 2017-05-09 Google Inc. Verification of native applications for indexing
US9524347B1 (en) 2014-04-01 2016-12-20 Google Inc. Automatically implementing an application in response to a search query
US9513961B1 (en) 2014-04-02 2016-12-06 Google Inc. Monitoring application loading
US9785974B1 (en) * 2014-04-18 2017-10-10 Rocket Fuel Inc. Identifying mobile application installations
US20150347912A1 (en) * 2014-05-27 2015-12-03 Sony Corporation Activity tracking based recommendation
US9418128B2 (en) 2014-06-13 2016-08-16 Microsoft Technology Licensing, Llc Linking documents with entities, actions and applications
US9767159B2 (en) 2014-06-13 2017-09-19 Google Inc. Ranking search results
US10013496B2 (en) 2014-06-24 2018-07-03 Google Llc Indexing actions for resources
CN106687949B (zh) 2014-06-24 2020-11-17 谷歌有限责任公司 本地应用的搜索结果
US10210263B1 (en) * 2014-06-24 2019-02-19 Google Llc Native application search results
US9892190B1 (en) 2014-06-25 2018-02-13 Google Inc. Search suggestions based on native application history
EP3161678B1 (en) 2014-06-25 2020-12-16 Google LLC Deep links for native applications
CN104077390A (zh) * 2014-06-27 2014-10-01 北京奇虎科技有限公司 基于浏览器的搜索展示方法、装置和电子设备
RU2597476C2 (ru) * 2014-06-27 2016-09-10 Общество С Ограниченной Ответственностью "Яндекс" Система и способ выполнения поиска
US9582482B1 (en) 2014-07-11 2017-02-28 Google Inc. Providing an annotation linking related entities in onscreen content
US10146559B2 (en) 2014-08-08 2018-12-04 Samsung Electronics Co., Ltd. In-application recommendation of deep states of native applications
US9043333B1 (en) 2014-08-19 2015-05-26 Adlast, Inc. Systems and methods for directing access to products and services
US9928623B2 (en) * 2014-09-12 2018-03-27 International Business Machines Corporation Socially generated and shared graphical representations
CN104199982B (zh) * 2014-09-25 2017-09-26 北京金山安全软件有限公司 一种对搜索关键词进行显示的方法及装置
US20160092565A1 (en) * 2014-09-26 2016-03-31 Microsoft Corporation Unified Search on a Personal Computing Device
US10474680B2 (en) * 2014-10-09 2019-11-12 Splunk Inc. Automatic entity definitions
US9626443B2 (en) 2014-10-23 2017-04-18 Quixey, Inc. Searching and accessing application functionality
US10936584B2 (en) * 2014-12-19 2021-03-02 Samsung Electronics Co., Ltd. Searching and accessing application-independent functionality
CN105812231B (zh) * 2014-12-29 2019-11-05 阿里巴巴集团控股有限公司 聊天记录的快速识别方法及其装置
US9836542B2 (en) * 2015-01-19 2017-12-05 Microsoft Technology Licensing, Llc Web application retrieval and display of web content based information with web content
CN104640100A (zh) * 2015-01-22 2015-05-20 沈文策 一种自动推广app方法
US9767091B2 (en) * 2015-01-23 2017-09-19 Microsoft Technology Licensing, Llc Methods for understanding incomplete natural language query
RU2606879C2 (ru) * 2015-02-06 2017-01-10 Общество С Ограниченной Ответственностью "Яндекс" Способ управления электронным устройством и электронное устройство
JP6672591B2 (ja) * 2015-02-13 2020-03-25 コニカミノルタ株式会社 情報処理装置、サービス享受方法、およびコンピュータプログラム
US20160306531A1 (en) * 2015-04-16 2016-10-20 Microsoft Technology Licensing, Llc Dynamic Launch Behavior Based on Context Information
US10031954B2 (en) 2015-04-23 2018-07-24 Oath Inc. Method and system for presenting a search result in a search result card
US9946529B2 (en) 2015-05-01 2018-04-17 Samsung Electronics Co., Ltd. Function-based dynamic application extension framework
US10324926B2 (en) 2015-05-15 2019-06-18 Microsoft Technology Licensing, Llc System and method for extracting and sharing application-related user data
US10318525B2 (en) * 2015-06-07 2019-06-11 Apple Inc. Content browsing user interface
US9838458B2 (en) * 2015-06-08 2017-12-05 Wesley John Boudville Cookies and anti-ad blocker using deep links in mobile apps
DE202015009301U1 (de) 2015-06-15 2017-02-15 Google Inc. Automatisches Crawling von Anwendungen
US10628559B2 (en) 2015-06-23 2020-04-21 Microsoft Technology Licensing, Llc Application management
TW201702955A (zh) * 2015-07-15 2017-01-16 Chunghwa Telecom Co Ltd 相異網站間進行共同行銷推廣的系統及方法
US9348671B1 (en) 2015-07-23 2016-05-24 Google Inc. Monitoring application loading
US9910685B2 (en) * 2015-08-13 2018-03-06 Samsung Electronics Co., Ltd. System and method for identifying, indexing, and navigating to deep states of mobile applications
US10970646B2 (en) * 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10534780B2 (en) 2015-10-28 2020-01-14 Microsoft Technology Licensing, Llc Single unified ranker
US10146842B2 (en) * 2015-11-19 2018-12-04 Google Llc Pre-instantiating native applications in background
CN105488112B (zh) * 2015-11-20 2019-09-17 小米科技有限责任公司 信息推送方法及装置
CN105446602B (zh) * 2015-11-24 2019-04-16 努比亚技术有限公司 定位文章关键词的装置和方法
US10832276B2 (en) * 2015-11-25 2020-11-10 Oath Inc. Systems and methods for ad placement in content streams
KR20170077714A (ko) * 2015-12-28 2017-07-06 삼성전자주식회사 어플리케이션 실행 방법 및 이를 지원하는 전자 장치
US9898260B2 (en) * 2015-12-28 2018-02-20 Samsung Electronics Co., Ltd. Adaptive function-based dynamic application extension framework
US10083222B1 (en) * 2016-03-29 2018-09-25 Sprint Communications Company L.P. Automated categorization of web pages
US20170322704A1 (en) * 2016-05-03 2017-11-09 Google Inc. Composition of a user interface through data binding
CN106325739A (zh) * 2016-08-01 2017-01-11 孟海同 经过点阵轨迹的表现和在软件中输入轨迹打开链接的方法
US10535005B1 (en) 2016-10-26 2020-01-14 Google Llc Providing contextual actions for mobile onscreen content
US11269961B2 (en) * 2016-10-28 2022-03-08 Microsoft Technology Licensing, Llc Systems and methods for App query driven results
US20180143816A1 (en) * 2016-11-18 2018-05-24 Google Inc. Reducing latency between clicking media content and landing on a resulting application installation page
US20180152528A1 (en) * 2016-11-28 2018-05-31 Microsoft Technology Licensing, Llc Selection systems and methods
TWI667581B (zh) * 2016-12-09 2019-08-01 中華電信股份有限公司 URL classification method and computer program product
US10331480B2 (en) * 2017-02-22 2019-06-25 Microsoft Technology Licensing, Llc Contextual application organizer framework for user life events
US10831511B2 (en) * 2017-04-04 2020-11-10 Adp, Llc Customized application programming interface presentation
WO2018201365A1 (zh) * 2017-05-04 2018-11-08 深圳市卓希科技有限公司 一种网页访问方法和终端设备
CN107329791A (zh) * 2017-07-03 2017-11-07 深圳Tcl新技术有限公司 扫描安装应用的方法、装置及计算机可读存储介质
US10503467B2 (en) * 2017-07-13 2019-12-10 International Business Machines Corporation User interface sound emanation activity classification
CN108182201B (zh) * 2017-11-29 2020-06-30 有米科技股份有限公司 基于重点关键词的应用拓展方法和装置
US10693971B2 (en) * 2018-02-21 2020-06-23 Microsoft Technology Licensing, Llc Identifying the best suitable application to open a file shared via a link
US20190289128A1 (en) * 2018-03-15 2019-09-19 Samsung Electronics Co., Ltd. Method and electronic device for enabling contextual interaction
CN110869907B (zh) * 2018-03-28 2021-10-01 华为技术有限公司 一种浏览应用页面的方法及终端
US10148525B1 (en) 2018-04-13 2018-12-04 Winshuttle, Llc Methods and systems for mitigating risk in deploying unvetted data handling rules
US11853306B2 (en) * 2018-06-03 2023-12-26 Apple Inc. Techniques for personalizing app store recommendations
CN108984663A (zh) * 2018-06-28 2018-12-11 上海掌门科技有限公司 一种页面内容搜索、显示的方法及设备
CN109040794B (zh) * 2018-08-01 2021-05-25 北京奇艺世纪科技有限公司 一种视频网站导流方法及装置
KR102688533B1 (ko) 2018-12-07 2024-07-26 구글 엘엘씨 하나 이상의 컴퓨터 애플리케이션에서 사용 가능한 액션을 선택하고 사용자에게 제공하기 위한 시스템 및 방법
CN109710794B (zh) * 2018-12-29 2021-01-15 联想(北京)有限公司 一种信息处理方法和电子设备
US11194866B2 (en) 2019-08-08 2021-12-07 Google Llc Low entropy browsing history for content quasi-personalization
CN113169982B (zh) 2019-08-08 2022-11-29 谷歌有限责任公司 用于内容准个性化的低熵浏览历史
US11144720B2 (en) * 2019-08-26 2021-10-12 Roblox Corporation Determining canonical content for a game
JP7379943B2 (ja) 2019-08-30 2023-11-15 ブラザー工業株式会社 通信システムと端末のための接続アプリケーションと通信装置
CN111767069B (zh) * 2020-06-30 2024-03-15 北京百度网讯科技有限公司 小程序处理方法、服务器、设备及存储介质
EP4322030A1 (en) * 2022-08-12 2024-02-14 Apple Inc. Online meta-learning for scalable item-to-item relationships

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1754165A (zh) * 2002-11-18 2006-03-29 美国在线服务公司 与字符流相关的基于主机的智能结果
US7739358B2 (en) * 2008-02-11 2010-06-15 The Go Daddy Group, Inc. Systems and methods for recommending website hosting applications

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6804659B1 (en) * 2000-01-14 2004-10-12 Ricoh Company Ltd. Content based web advertising
JPH11194865A (ja) 1998-01-06 1999-07-21 Canon Inc 情報処理装置及び情報処理方法及びコンピュータ読み出し可能なプログラム製品
US7720723B2 (en) * 1998-09-18 2010-05-18 Amazon Technologies, Inc. User interface and methods for recommending items to users
US6366906B1 (en) * 1999-07-15 2002-04-02 International Business Machines Corporation Method and apparatus for implementing a search selection tool on a browser
US6785671B1 (en) * 1999-12-08 2004-08-31 Amazon.Com, Inc. System and method for locating web-based product offerings
US6928467B2 (en) 2000-02-02 2005-08-09 Inno Path Software, Inc. Apparatus and methods for providing data synchronization by facilitating data synchronization system design
US6615237B1 (en) * 2000-02-04 2003-09-02 Microsoft Corporation Automatic searching for data in a network
US7454523B2 (en) * 2001-03-16 2008-11-18 Intel Corporation Geographic location determination including inspection of network address
JP2003228576A (ja) * 2002-02-06 2003-08-15 Fujitsu Ltd インターネット検索支援装置及び方法、並びに当該方法を用いたインターネット検索支援プログラム
ATE492853T1 (de) 2002-07-23 2011-01-15 Quigo Technologies Inc System und verfahren zur automatisierten abbildung von schlüsselwörtern und schlüsselphrasen auf dokumenten
US7079839B1 (en) * 2003-03-24 2006-07-18 Sprint Spectrum L.P. Method and system for push launching applications with context on a mobile device
WO2005055090A1 (en) * 2003-12-01 2005-06-16 Metanav Corporation Dynamic keyword processing system and method for user oriented internet navigation
US7890526B1 (en) * 2003-12-30 2011-02-15 Microsoft Corporation Incremental query refinement
US7260568B2 (en) 2004-04-15 2007-08-21 Microsoft Corporation Verifying relevance between keywords and web site contents
US20050267872A1 (en) * 2004-06-01 2005-12-01 Yaron Galai System and method for automated mapping of items to documents
US7788260B2 (en) * 2004-06-14 2010-08-31 Facebook, Inc. Ranking search results based on the frequency of clicks on the search results by members of a social network who are within a predetermined degree of separation
US7499940B1 (en) * 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US7584194B2 (en) * 2004-11-22 2009-09-01 Truveo, Inc. Method and apparatus for an application crawler
US20060155728A1 (en) 2004-12-29 2006-07-13 Jason Bosarge Browser application and search engine integration
US7466859B2 (en) * 2004-12-30 2008-12-16 Motorola, Inc. Candidate list enhancement for predictive text input in electronic devices
US20070260597A1 (en) * 2006-05-02 2007-11-08 Mark Cramer Dynamic search engine results employing user behavior
US8209320B2 (en) * 2006-06-09 2012-06-26 Ebay Inc. System and method for keyword extraction
US20090210631A1 (en) 2006-09-22 2009-08-20 Bea Systems, Inc. Mobile application cache system
US8244750B2 (en) 2007-03-23 2012-08-14 Microsoft Corporation Related search queries for a webpage and their applications
US20080270228A1 (en) * 2007-04-24 2008-10-30 Yahoo! Inc. System for displaying advertisements associated with search results
US8533176B2 (en) 2007-06-29 2013-09-10 Microsoft Corporation Business application search
CN101136938B (zh) 2007-09-10 2011-04-27 北京易路联动技术有限公司 一种移动互联网应用的集中式管理方法和平台系统
US8595241B2 (en) * 2008-06-22 2013-11-26 Newscred, Inc. System and method for augmenting digital media with custom content
CN101420325B (zh) * 2008-11-21 2012-03-07 华为技术有限公司 一种软件包的自动部署方法、装置和系统
KR20100061136A (ko) 2008-11-28 2010-06-07 이데일리비즈 주식회사 통신망을 이용한 광고 제공 시스템 및 광고 제공방법
JP5257311B2 (ja) * 2008-12-05 2013-08-07 ソニー株式会社 情報処理装置、および情報処理方法
US8260938B2 (en) * 2009-01-23 2012-09-04 Google Inc. Predicting user requests to reduce network connection latency
CN101504669B (zh) * 2009-03-06 2011-08-24 阿里巴巴集团控股有限公司 一种Web应用的模板发布方法、装置及系统
US8386455B2 (en) 2009-09-20 2013-02-26 Yahoo! Inc. Systems and methods for providing advanced search result page content
WO2011036755A1 (ja) * 2009-09-24 2011-03-31 株式会社 東芝 キーワード抽出装置、およびプログラム
JP2011076566A (ja) 2009-10-02 2011-04-14 Sharp Corp 情報処理装置、端末装置、サーバ装置、通信システム、表示制御方法、プログラム、およびコンピュータ読取り可能な記録媒体
US8515979B2 (en) * 2010-06-18 2013-08-20 Verizon Patent And Licensing, Inc. Cross application execution service
US8615510B2 (en) * 2010-09-01 2013-12-24 Yahoo! Inc. Quick applications for search
CN101944112A (zh) * 2010-09-15 2011-01-12 宇龙计算机通信科技(深圳)有限公司 软件推送方法、系统、移动终端和软件推送服务器
US20120096435A1 (en) 2010-10-18 2012-04-19 Microsoft Corporation Capability-based application recommendation
US8762360B2 (en) * 2011-05-06 2014-06-24 Microsoft Corporation Integrating applications within search results
EP2710487A4 (en) 2011-05-09 2015-06-17 Google Inc GENERATING APPLICATION RECOMMENDATIONS BASED ON USER INSTALLED APPLICATIONS
EP2710466A1 (en) 2011-05-09 2014-03-26 Google, Inc. Identifying applications of interest based on application metadata
CN102360364A (zh) 2011-09-30 2012-02-22 奇智软件(北京)有限公司 一种应用自动推荐的方法及装置
KR101812657B1 (ko) 2011-11-22 2018-01-31 삼성전자주식회사 컨텍스트 정보에 기초한 애플리케이션 추천 시스템 및 방법
US20130198029A1 (en) 2012-01-26 2013-08-01 Microsoft Corporation Application recommendation and substitution
US9152674B2 (en) 2012-04-27 2015-10-06 Quixey, Inc. Performing application searches
US9372901B2 (en) 2012-04-27 2016-06-21 Quixey, Inc. Searching for software applications based on application attributes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1754165A (zh) * 2002-11-18 2006-03-29 美国在线服务公司 与字符流相关的基于主机的智能结果
US7739358B2 (en) * 2008-02-11 2010-06-15 The Go Daddy Group, Inc. Systems and methods for recommending website hosting applications

Also Published As

Publication number Publication date
KR20140038463A (ko) 2014-03-28
CN103620583B (zh) 2016-10-19
WO2012174458A3 (en) 2013-04-25
CN108563750B (zh) 2022-03-29
EP2721515A4 (en) 2015-02-25
US20170083527A1 (en) 2017-03-23
US10592515B2 (en) 2020-03-17
WO2012174457A2 (en) 2012-12-20
US20120323898A1 (en) 2012-12-20
EP2721515A2 (en) 2014-04-23
JP2014518419A (ja) 2014-07-28
CN103620583A (zh) 2014-03-05
KR20180087456A (ko) 2018-08-01
CN103620588A (zh) 2014-03-05
EP2721519A2 (en) 2014-04-23
WO2012174458A2 (en) 2012-12-20
US9519726B2 (en) 2016-12-13
WO2012174457A3 (en) 2013-05-10
KR101953303B1 (ko) 2019-02-28
JP5956569B2 (ja) 2016-07-27
EP2721519A4 (en) 2015-02-25
CN108563750A (zh) 2018-09-21
KR102006396B1 (ko) 2019-08-01

Similar Documents

Publication Publication Date Title
CN103620588B (zh) 基于浏览活动识别匹配应用
US11443358B2 (en) Methods and systems for annotation of digital information
US11372935B2 (en) Automatically generating a website specific to an industry
US20220272143A1 (en) Computer application promotion
CN105164710B (zh) 用于提供搜索结果的方法和服务器
US8185524B2 (en) Method and system for locating events in-context
US7383248B2 (en) Hyperlink park and search
KR20140016247A (ko) 광고주에게 추상 오브젝트에 대한 입찰 기회 제공
CN103189835A (zh) 站点存储处理和剪辑控制
CN104115147B (zh) 位置感知应用搜索
US20170109442A1 (en) Customizing a website string content specific to an industry
CN103793495B (zh) 应用信息检索方法及系统和应用信息获取方法及系统
CN105229638B (zh) 作为对内容的收集的贡献者的自动化的库管理员
JP2013218482A (ja) 電子書籍表示装置、蔵書情報表示プログラム及び蔵書情報表示方法
US12086855B2 (en) Methods and systems for annotation of digital information
KR101378415B1 (ko) 콘텐츠 앨범 제작 서비스를 제공하는 방법, 서버, 단말기 및 기록매체
KR20090072772A (ko) 텍스트에 기초하여 아이콘 정보를 제공하기 위한 방법,시스템, 단말 장치 및 컴퓨터 판독 가능한 기록 매체

Legal Events

Date Code Title Description
PB01 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: 20150624

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

Effective date of registration: 20150624

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant