跨平台服务通知的制作方法

文档序号:7890766阅读:185来源:国知局
专利名称:跨平台服务通知的制作方法
跨平台服务通知
背景技术
在计算环境中,用户可以从各种平台访问应用、内容和服务。例如,用户尤其可能拥有台式计算机、膝上型计算机、平板设备、手持游戏设备、智能电话、连接到他们的电视的控制台设备和web连接的电视。用户可以从所有这些设备或者其中的任一设备访问应用、内容和服务。而且,应用、内容和服务可以从各种各样的平台提供,比如不同的市场。例如,用户可以从在线应用商店、服务提供者网站下载应用,或者可以从连接到服务提供者的桌面小部件(widget)访问内容。经常地,从一个平台可得到或者对于一个平台可用的应用可以是从另一平台可得到或者对于另一平台可用的。例如,用户可以在他们的台式和平板设备上使用相同的应用(例如,采用用于在不同平台上使用的不同版本)。

发明内容
本概要是为了以简化的形式介绍概念的选择而提供的,这些概念还将在下面的详 细说明中进行描述。本概要既不打算确认所要求保护的主题的关键特征或必要特征,也不打算被使用来限制所要求保护的主题的范围。许多的应用开发者、网站和/或在线品牌可以从跨多个平台的多种软件体验而触及(reach)用户。对于实体而言,具有网站、多个移动应用、社交网络页面、微博账户、可以在第三方网站上存在的小部件等等是常见的,这可以向他们的顾客提供多种方式来参与和连接由该实体提供的一个或更多服务。对于这样的实体的主要挑战会是找到某些方式来使用用户/顾客在其上可达到的这些渠道中的所有或者部分渠道而触及该顾客。目前,交叉宣传顾客跨多个平台使用的应用、内容或网站的可用性是非常繁琐的,因为它典型地牵涉到传统的广告(例如,在线植入(placing online)或其他的媒体广告)。因此,公开了可以使得实体能够轻易地向用户通知已经由用户使用的服务(如,应用、网站、小部件、内容等等)的跨多个平台(如,设备、操作系统、在线市场等等)的可用性的一种或多种技术和/或系统。例如,在移动设备市场(例如应用商店)中创建移动应用的实体也可以注册电子邮件域(email domain),实体可以从其发送电子邮件。在这个例子中,当实体发送电子邮件给用户、并且用户处于该实体在其上具有应用的移动设备平台上时,如果他们还没有安装该应用,则该电子邮件应用或网站也可以向用户通知该应用对于该移动平台的可用性。作为另一个例子,当用户进入应用商店时,应用商店可以向身份服务查询所述用户已连接到的网站,然后向用户通知相应的应用的可用性(例如,在看来似乎用户尚未获得所述用于他们的平台(如,设备)的应用的场合)。在向用户通知某服务在用户的第一平台上的可用性的一个实施例中,可以接收对于识别第一平台的用户是否与该服务相关联的请求。而且,可以关于所述服务是否被安装在第一平台上做出判定。另外,如果确定该服务没有被安装在第一平台上,则可以发送对所述请求的响应,指示所述服务可用于在第一平台上安装。这样,举例而言,可以使用户自动地觉察到某应用例如对于用户的设备的可用性。为了达到上述的和相关的目的,下面的说明和附图阐述了某些说明性方面和实现。这些表明了可以利用一个或多个方面的各种方式中的仅仅几种方式。当结合附图考虑以下的详细说明时,公开内容的其他方面、优点和新颖特征将从所述详细说明中变得明白。


图I是图示用于向用户通知某服务在用户的第一平台上的可用性的示范性方法的流程图。图2是图示一个实施例的流程图,其中可以实现这里描述的一种或多种技术的一个或多个部分。图3图示其中可以实现这里描述的一种或多种技术的示例性实施例的流程图。图4是图示用于向用户通知某服务在用户的第一平台上的可用性的示范性系统的组件图。 图5是图示其中可以实现这里描述的一个或多个系统的示例性实施例的组件图。图6是示范性计算机可读介质的举例说明,其包括被配置成体现这里阐述的措施中的一个或多个的处理器可执行指令。图7图示其中可以实现这里阐述的措施中的一个或多个的示范性计算环境。
具体实施例方式现在将参照附图来描述所要求保护的主题,其中同样的参考数字被使用来在各处指代同样的单元。在下面的描述中,为了解释的目的,阐述了许多具体细节,以便提供对所要求保护的主题的透彻理解。然而,可能明显的是所要求保护的主题可以在没有这些具体细节的情况下被实践。在其他实例中,以框图形式示出了结构和设备,以便使所要求保护的主题的描述更容易。可以设计一种方法,其提供来用于提醒某应用的用户,例如,该应用(或其变体)可能在其他平台上是可得到的。例如,可以提醒在其个人计算机上下载应用的用户该应用也可用于下载到他们的手持计算机和/或智能电话。例如,提醒可以在用户登录到替换的(alternate)平台上时被提供给用户,和/或可以当从某域接收到电子邮件而该域已向用于特定平台和/或应用的识别服务注册时被提供。这样,例如用户可以变得通过多个平台与服务更多地连接,而不必进行搜索,以及服务提供者因此可以通过多个平台更容易地与用户更加充分地连接。图I是用于向用户通知某服务在用户的第一平台上的可用性的示范性方法100的流程图。该示范性方法100开始于102,并牵涉到在104接收对于识别第一平台的用户是否与该服务相关联的请求。例如,某服务可以包括可被链接到在线服务和/或网站的应用,比如用于手持设备(如智能电话、平板电脑、便携式计算机等等)的社交网站应用。作为另一个例子,该服务可以包括被链接到在线服务和/或网站(如天气网站)的小部件(如,在用户的桌面上被链接到web服务的小应用)。作为另一个例子,该服务可以包括网站,该网站例如可以包括在用户的浏览器中可被执行的web应用。在这里预计有其它的服务和/或它们的例子,因此本申请和/或所附权利要求的范围并不意味着限制于这些例子和/或下面提供的其他例子。而且,用户的平台可以包括特定的设备类型,比如手持计算机、智能电话、膝上型/台式计算机、控制台设备(如链接到电视的游戏或媒体控制台),例如,其中各设备可以利用不同的操作系统(OS)和/或应用来访问服务。作为例子,第一平台可以包括用户的智能电话,而第二平台可以包括用户的膝上型计算机。在这个例子中,第一平台可以利用第一OS,而第二平台可以利用第二 OS,其中该服务对于各个平台不同地操作和/或需要被不同地配置。另外,用户的平台可以包括应用商店,比如用于浏览、搜索和下载应用的在线商店。例如智能电话、手持计算设备、膝上型/台式计算机、控制台等等可以分别地使用不同的OS、浏览器和/或其他应用来访问可以被链接到在线服务的内容。例如,运行于第一 OS中的web链接的应用的第一版本可能不能在第二 OS中运行。在这个例子中,该web链接的应用的第二版本可能需要从包括用于第二 OS的应用的应用商店平台上下载。因此,在一个实施例中,第一平台可以包括特定于第一 OS的应用的应用商店,以及第二平台可以包括特定于第二 OS的应用的应用商店(例如,用于第一电话OS的第一智能电话应用商店,以及用于第二电话OS的第二智能电话应用商店)。 在一个实施例中,身份服务(例如,在远程服务器上)可以接收请求,以例如查明用户是否正在另一个平台上使用所述服务、或者用户是否可以与来自另一个平台(例如不是第一平台)的所述服务相关联(如,向其注册)。在这个实施例中,身份服务可以包括数据库,该数据库存储关于用户可能与哪个(哪些)服务相关联的信息。例如,用户可能已经在第二平台上下载了所述服务,或者可能已经注册去使用与来自第二平台的所述服务相关联的站点。在这个例子中,身份服务可以包括将用户链接到所述服务的信息。在示范性方法100的106,确定所述服务是否(例如被用户)安装到第一平台上。例如,该身份服务可以识别包括用于该用户的身份(如,用户名、ID号或某个已存储的标识)的所存储的记录,比如与该用户相关联的服务的记录。在一个实施例中,例如,身份服务可以审查各记录以确定该用户是否对于某特定的平台注册该特定的服务。在108,如果该用户被识别为尚未使该服务安装到第一平台上(例如用户使用的当前平台),则响应于所述请求可以返回该服务可用于在第一平台上安装的指示。例如,如果该请求由链接到所讨论的应用的在线服务发送,则响应可以从身份服务发送到在线服务,以便让它们知道该用户还没有在所讨论的平台上下载该应用。这样,在线服务可以通知用户他们已经比如由于下载该应用到另一个平台而与该在线服务具有某种关系,以及用户也可以下载该应用到他们当前的平台上。在另一个实施例中,所述响应可以被返回到所述平台(如,设备OS或用于OS的应用商店),例如其也可以向用户通知该服务在他们的当前平台上的可用性。在用该服务在用户的第一平台上是可用的指示进行响应后,该示范性方法100结束于110。图2是一个实施例200的流程图,其中可以实现这里描述的一种或多种技术的一个或多个部分。在202,开发者创建用于第一平台的某服务。例如,计算机游戏开发者可以创建与例如一种或多种智能电话(例如包括不同的操作系统)、手持设备(如,计算机、便携式游戏设备、平板电脑)、控制台设备(例如机顶盒游戏控制台)、计算机和/或浏览器相兼容的游戏。典型地,因为可能需要更多的工作来开发可以在多个平台上运行的游戏,所以开发者可能把开发限于最流行的平台中的一个或多个(例如,包括由开发者创建的那种类型服务的最大数量用户的那些平台),和/或可能取得在所选择的平台上开发的独占权。在示例性实施例200的204,所述服务(如,应用)和/或服务的提供者(如,与该应用相关联的在线存在,比如当在平台上运行时链接到所述服务的远程服务器)可以被注册。在一个实施例中,服务和/或服务提供者可以向在线身份服务注册,在线身份服务可被用来将该服务和/或 服务提供者与已经下载和/或以某种方式与该服务相链接的用户相关联。例如,在线身份服务可以为该服务提供服务ID,并且比如当用户下载服务应用到用户的平台上时,可以将该服务ID与由在线身份服务管理的数据库中的用户ID相链接。在一个实施例中,服务可以被注册为可以在一个或多个平台上加以利用。例如,用于和在线社交网络服务进行连接和交互的应用可以为一个或多个智能电话操作系统、一个或多个便携式计算设备、一个或多个计算机操作系统和/或一个或多个控制台设备而开发。在这个例子中,社交网络应用可以为各个平台向在线身份服务注册。在一个实施例中,在线身份服务可以为该应用提供对于相应的平台的ID。在一个实施例中,服务可以被注册为与服务在线域相关联。例如,在线服务的提供者可以注册与服务相关联的在线域(如,web域),和/或与所下载的应用的通信从其发源的在线域。在另一个实施例中,服务可以被注册为与服务提供者从其为该服务发送电子邮件的域相关联。例如,在线服务提供者可以发送电子邮件给用户和/或潜在的用户,以便让用户知道某应用对于某平台的可用性。在示例性实施例200的206,开发者创建该服务用于第二平台的第二版本。例如,该开发者可以创建该服务用于比如膝上型的第一平台的第一版本,以及创建该服务用于比如智能电话的第二平台的第二版本。在208,该服务用于第二平台的第二版本被比如向在线身份服务注册。例如,用于该服务的在线服务提供者的ID可以与数据库中该应用的第二版本关联。在一个实施例中,如上所述,开发者可以创建该服务(例如,应用)用于第三(例如,和第四等)平台的第三(例如,和第四等)版本,其也可以比如向在线身份服务注册。在210,用户与所述服务连接。与所述服务连接可以包括用户比如在用于在线服务提供者的网站向提供该服务的在线服务提供者注册,例如进行注册以接收来自该在线服务提供者的电子邮件,和/或下载该服务的某版本到某平台(如,下载应用或小部件)。在212,用户比如经由所述在线身份服务与服务相关联。例如,在线身份服务可以向在线服务提供者注册用户,并为该用户提供用户ID。在一个例子中,用户ID可以与用于在线服务提供者的ID和/或用于该服务与该用户相关联的版本的ID—起被存储(如,在在线身份服务的数据库中)。图3是图示示例性实施例300的流程图,其中可实现这里描述的一种或多种技术。在这个示例性实施例300中,对于识别第一平台的用户是否与服务相关联的请求可以由三个用户相关的动作302、304、306中的一个或多个发起;尽管该请求的发起并不仅仅限于这三个例子。在302,由用户利用来接收电子邮件的电子邮件服务(如,在用户设备上的电子邮件客户端或在线电子邮件服务)接收电子邮件。例如,向在线身份服务注册它们的电子邮件域的在线服务提供者可以发送电子邮件给与该服务相关联的用户。在这个例子中,在线服务提供者可以发送关于该服务的新版本和/或与该服务有关的其他新闻和更新的电子邮件给用户。在308,电子邮件服务可以识别发送者的域,比如电子邮件从其被发送的域。在312,电子邮件服务可以发送请求比如到在线身份服务,用来比如使用电子邮件发送者的域来识别用户是否与用于运行该电子邮件服务的平台的服务相关联(例如,是与该服务相关联的第一平台的用户)。在另一个实施例中,在304,请求可以由登录到在线商店的用户发起。例如,包括第一平台的设备可以包括浏览器和/或允许该用户访问应用商店的应用,在应用商店中可以为第一平台搜索和下载应用。在这个实施例中,在310,比如可以通过提供该在线商店的服务和/或通过提供对在线商店的访问的浏览器或应用来检测第一平台。例如,第一平台可以包括控制台设备,用户利用它来在他们的电视机上下载和玩游戏。在这个例子中,控制台平台可以被识别,并且识别第一平台的用户是否与该服务相关联的请求可以被发送到比如在线身份服务。在另一个实施例中,在306,请求可以由登录进平台的用户发起。例如,用户可以使用用户身份登录进他们的台式计算机。在这个实施例中,平台(例如,或驻留在平台上的应用)可以发送请求比如到在线身份服务,以识别第一平台的用户是否与该服务相关联。在另一个实施例中,平台可以发送请求,以识别第一平台的用户是否与任意服务相关联,比如可能向在线身份服务注册过的一个服务。 在312,对于识别用户是否与服务(例如,或任意服务)相关联的请求比如被在线身份服务(例如,或是由在线身份服务利用的远程服务器)接收到。如上所述,在一个实施例中,该请求可以由登录到第一平台(如,在线应用商店、或登录到设备平台)的用户发起;或者由接收到来自与该服务相关联的域的电子邮件的用户发起。而且,如上所述,在一个实施例中,请求可以从电子邮件服务接收到,该电子邮件服务接收来自与该服务相关联的域的电子邮件;从包括该服务的在线服务商店接收到,其中在线服务商店与第一平台连接;和/或从驻留在提供该服务的第一平台上的应用接收到。在一个实施例中,当请求被从电子邮件服务接收到时,它可以包括对于识别用户是否与第二平台上的服务相关联的请求,其中第二平台可以包括设备平台和/或在线市场平台。例如,尽管该用户可能已经通过在线服务提供者与该服务相关联(如,在用于在线服务提供者的网站上注册),但该用户可能已经或可能尚未在某平台上下载或使用该服务。在这个例子中,在线服务提供者可能希望识别该用户是否已经在第二平台上(例如,不同于被使用来接收电子邮件的平台)使用或下载该服务,比如以便能够通知该用户他们也能够下载该服务到这个其他平台(例如,如果还没有这样安装)。即,例如,如果用户在膝上型计算机上下载了该应用,他们可能不知道它对于他们的智能电话也是可得到的。在一个实施例中,接收对于识别第一平台的用户是否与服务相关联的请求可以包括接收来自在线应用商店的、对于识别用户是否与通过该应用商店可得到的应用、小部件和/或网站相关联的请求。例如,在线市场,比如应用商店,可以提供各种各样的服务。独立的应用和/或被链接到在线服务提供者的应用可以从商店下载到用户的设备,并且能包括游戏、实用工具、生产力应用(productivity apps)、娱乐应用等等。这些应用可以在设备平台上运行而无需在线连接,和/或可以与在线服务提供者连接,比如用于连接到其他用户和/或连续地(例如,或周期地)获得和/或提供升级的数据。而且,小部件可以包括小的应用,所述应用包括与在线服务(如,天气、新闻、时间、交通等等)的连接,以便例如在用户的桌面上提供升级的内容。在314,检测到的域(如,来自308的电子邮件的域)可以比如由在线身份服务来与注册的服务进行匹配。在这个例子中,如果该域与在线服务提供者(如,或服务)相关联,则用于服务提供者的ID可以被检索。替换地,在316,登录到在线商店(例如在304)和/或第一平台(例如在306)的用户的身份可以比如由在线身份服务来与注册的用户进行匹配。例如,当用户登录(到商店或设备)时,他们可以提供用户身份,比如用户名。在这个例子中,用户身份可以与存储在在线身份服务的数据库中的用户身份进行比较。如果发现匹配,则例如用户ID可以被检索。在318,与检索到的ID (例如,注册的服务、提供者或用户)相关联的服务(如,应用、小部件、网站)可以比如从在线身份服务数据库被识别。在320,被识别的服务可以与该服务对于其是可得到的一个或多个平台进行匹配。例如,身份服务可以识别出该服务被安装到第二平台上而不是第一平台上(例如,或者既在第二平台又在第一平台,或仅在第一平台)。在一个实施例中,为了识别服务是否被安装在第一平台上(例如,或第二、第三等平台上),身份服务的数据库可以将服务提供者ID和/或服务应用ID与用于该服务的、和 用户ID相关联的一个或多个平台相链接(例如,用户已经在可用的平台上下载服务和/或与该服务交互)。在322,如果用户已经下载该服务到第一平台,或该用户决定退出(opt out)下载该服务到第一平台(在322处“是”的情形),则在324没有通知会被发送来响应所述请求(例如,或者可以发送识别出用户已下载或决定退出的响应)。例如,如果用户已经下载该应用,或者如果他们以前被通知了该应用对于第一平台的可用性以及他们决定退出,则向他们通知该应用的可用性可能减损用户体验。然而,在322,如果比如由身份服务识别出用户以前没有下载该应用或决定退出,以及该服务对于第一平台是可得到的(在322处“否”的情形),则在326可以返回响应该服务可用于第一平台。即,例如,如果用户比如通过在第二平台(如,智能电话)上下载该应用而被识别为与该服务是相关联的,并且该用户还没有决定退出,以及该应用对于第一平台是可得到的,则对于所述请求的响应可以包括该应用对于第一平台的可用性的通知。在328,可用性的通知可以比如通过平台、应用商店和/或电子邮件服务被提供给用户。在一个实施例中,用户可以决定是否下载或利用该服务。而且,在一个实施例中,如果在用该服务可用于在第一平台上安装的指示进行响应后该服务被安装在第一平台上,则可以把该服务与第一平台相关联。例如,该服务可以通知在线身份服务用户已经下载用于第一平台的服务。在这个例子中,在线身份服务可以更新数据库以指示该用户与用于第一平台的服务的关联。而且,在一个实施例中,用户可以随后登录到第二平台。在这个实施例中,可以接收请求以识别该用户是否与服务相关联,并且如上所述,如果该服务没有安装在第二平台上,则响应可以包括该服务可用于在第二平台上安装的指示。例如,在接收到该应用对于处在工作中的用户的膝上型计算机的可用性的通知以及下载该应用后,用户可能随后登录到他们的智能电话。在这个例子中,用户现在可以接收他们下载到他们的膝上型计算机上的应用对于他们的智能电话也可得到的通知。可以设计一种系统,用于向用户通知他们已经在一个平台上使用的应用例如在用户所利用的另一平台上的可用性。例如,该系统可以识别在用户所拥有的一个或多个设备上由该用户利用的服务。在这个例子中,如果用户在他们的个人计算机上下载某应用,则t匕如当他们登录到智能电话时,他们可以被通知相同的应用在他们的智能电话上是可以加以利用的。通知可以在例如当用户登录进替换的平台时或例如得到来自用户可能注册的服务的电子邮件时被发起。这样,用户可以更加容易地发现他们的跨多个平台(如,设备或在线市场)的喜爱的应用,并且应用服务提供者可以被更加充分地连接到他们的顾客。图4是用于向在线用户通知某服务在用户的第一平台上的可用性的示例性系统400的组件图。数据存储组件402被配置成存储关于和注册的服务提供者456相关联的一个或多个服务的信息。识别组件404可操作地与数据存储组件402耦合。识别组件404通过使用数据存储组件402上的信息而识别来自注册的服务提供者456的服务是否被安装到用户的第一平台454。请求操控组件406可操作地与识别组件404稱合。请求操控组件406接收包括对于识别第一平台454的用户是否与服务相关联的请求的用户ID请求450。而且,如果该服务还没有被安装在第一平台454上,则请求操控组件406用该服务可用于在第一平台454 上安装的指示452来响应所述请求450。尽管没有图示,但系统400 (和500)可以包括处理单元,比如微处理器,来处理用于该系统的数据。例如,用户可以登录到第一平台454 (如,控制台设备),并且第一平台454 (例如,或运行于第一平台上的应用)可以发送用户ID请求450给请求操控组件406,以查明该用户是否与比如在第二平台(如,手持计算设备)上的服务提供者相关联。在这个例子中,识别组件404可以比较用户标识信息与在数据存储组件402中存储的数据,以便识别该用户是否与服务提供者456相关联,其可能在数据存储组件402上具有已注册的身份。如果该用 户与在线服务提供者456相关联(如,通过在第二平台上从服务提供者456下载应用),并且该服务可用于第一平台454,则请求操控组件406可以比如通过使用第一平台向用户提供该服务对于第一平台也是可得到的响应。图5是图示在其中可以实现这里描述的一个或多个系统的示例性实施例500的组件图。在这个例子中,提供了图4的扩展,因此为了简明起见可能不重复相对于图4描述的元素、组件等等的说明。在这个示例性实施例500中,第一平台例如可以包括设备平台554,比如智能电话、便携式计算设备(如,手持计算机、手持游戏设备等等)、膝上型/台式计算机、控制台设备等等,或者可以包括市场平台556,比如用于一个或多个操作系统和/或设备的应用商店。而且,服务一一比如由通过网络558 (如,因特网)连接到第一平台上的服务提供者560提供一一可以例如包括与服务提供者560相关联的应用,其中该应用具有多平台功能性(如,可用于不止一个平台);与注册的服务提供者相关联的网站(例如,包括web应用);和/或可以从多个平台比如通过网络558连接到在线服务提供者560的小部件。在示例性实施例500中,服务提供者注册组件510可以利用服务提供者ID注册服务提供者560,和/或可以通过使用用于与该服务相关联的平台的ID、利用服务提供者ID注册服务提供者所提供的服务。例如,在线服务提供者560可以向服务提供者注册组件510注册,以使得服务提供者560在数据存储组件402中与服务提供者ID相关联。而且,服务提供者560可以向服务提供者注册组件510注册一个或多个服务(如,应用、小部件),以使得一个或多个服务与在数据存储组件402中的各自的ID相关联和/或与服务提供者ID相关联。电子邮件通知组件512可以识别电子邮件从其发送给用户的域,比如从由服务提供者560注册的域发送给第一平台554的用户。而且,电子邮件通知组件512可以比如通过使用识别组件404而确定域是否与注册的服务提供者560相关联。另外,如果域与注册的服务提供者560相关联,则电子邮件通知组件512可以识别与该域相关联的注册的服务提供者560。在一个实施例中,电子邮件通知组件512可以可操作地与电子邮件服务提供者相耦合,比如驻留在用户设备554上的电子邮件客户端或在线电子邮件服务。在这个实施例中,例如,电子邮件服务可以提供电子邮件域给电子邮件通知组件512。应用商店通知组件514可以例如在接收到用户ID请求550后确定该用户是否与第二平台上的服务相关联。而且,如果用户被识别为与第二平台上的服务相关联,则应用商店通知组件514可以识别与第二平台上的服务相关联的注册的服务提供者(如,560)。例如,应用商店通知组件514可以使用该识别组件来识别相关联的平台和/或服务。如果该服务没有被安装在第一平台上,则应用商店通知组件514也可以比如通过使用请求操控组件406来提供通知响应552而提供该服务可用于在第一平台上安装的指示。 如果决定退出组件516接收到决定退出请求,则决定退出组件516可以把用户识别为已经决定退出服务。例如,第一平台554的用户可以接收该服务可用于下载到第一平台上的通知(如,552)。在这个例子中,代替下载该应用,用户可以决定退出下载该应用,从而不再希望接收到该应用的可用性的通知。在这个实施例中,例如,当决定退出组件516接收到对于该用户的决定退出请求时,针对在第一平台554上的应用,决定退出的指示可以被存储在数据存储组件402中。这样,例如,当用户以后登录到第一平台时,他们可能不被通知该应用对于第一平台的可用性。再一个实施例牵涉到计算机可读介质,其包括被配置成实现在这里给出的技术中的一种或多种的处理器可执行指令。可以按这些方式设计出的示范性计算机可读介质被图示于图6中,其中实现600包括计算机可读介质608 (如,⑶-R、DVD-R、或硬盘驱动器的盘片),在其上是编码的计算机可读数据606。该计算机可读数据606进而又包括一组计算机指令604,其被配置成按照在此阐述的一个或多个原理操作。在一个这样的实施例602中,举例而言,处理器可执行指令604可以被配置成执行一种方法,比如图I的示范性方法100的至少某些。在另一个这样的实施例中,举例而言,处理器可执行指令604可以被配置成实现一种系统,比如图4的示范性系统400的至少某些。可以由本领域的技术人员设计许多这样的计算机可读介质,其被配置成依照这里给出的技术操作。虽然本主题是以特定于结构特征和/或方法动作的语言被描述的,但应当理解,在所附权利要求中限定的主题不一定局限于上述的特定特征或动作。而是,上述的特定特征和动作是作为实施权利要求的示例性形式而公开的。当在本申请中使用时,术语“组件”、“模块”、“系统”、“接口”等等通常打算用来指代计算机相关的实体,其或者是硬件、硬件和软件的组合、软件,或者是执行中的软件。例如,组件可以是但不限于运行在处理器上的进程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。作为举例说明,运行在控制器上的应用和控制器都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,并且组件可以被定位于一台计算机上和/或分布于两台或更多台计算机间。
而且,所要求保护的主题可以被实施为方法、设备或制造品,使用标准编程和/或工程技术以产生软件、固件、硬件或它们的任何组合来控制计算机去实施所公开的主题。当在这里使用时,术语“制造品”打算包括从任何计算机可读设备、载体或媒体可访问的计算机程序。当然,本领域的技术人员将认识到,可以对这种配置做出许多修改,而不脱离所要求保护的主题的范围或精神。图7和接下来的讨论提供了对于实现这里阐述的措施中的一个或多个的实施例 的适当计算环境的简洁的、概括性的描述。图7的操作环境仅仅是适当的操作环境的一个例子,其不打算用来对操作环境的使用范围或功能性提出任何限制。示例性计算设备包括但不限于个人计算机、服务器计算机、手持或膝上型设备、移动设备(比如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费电子产品、小型计算机、大型计算机、包括以上的任何系统或设备的分布式计算环境,等等。尽管不是必需的,但是实施例是在由一个或多个计算设备执行的“计算机可读指令”的一般上下文中被描述的。计算机可读指令可经由计算机可读媒体(下面讨论)被分发。计算机可读指令可以被实现为程序模块,比如执行特定任务或实施特定抽象数据类型的函数、对象、应用编程接口(API)、数据结构等等。典型地,计算机可读指令的功能性可以在各种环境中按期望的被组合或分布。图7图示包括被配置成实现这里提供的一个或多个实施例的计算设备712的系统710的例子。在一种配置中,计算设备712包括至少一个处理单元716和内存718。取决于计算设备的确切配置和类型,内存718可以是易失性的(比如像RAM)、非易失性的(比如像ROM、闪速存储器等等)、或两者的某种组合。这个配置在图7中由虚线714例示。在其他实施例中,设备712可以包括另外的特征和/或功能性。例如,设备712也可以包括另外的存储装置(如,可移除的和/或不可移除的),包括但不限于磁存储装置、光学存储装置等等。这样的另外的存储装置在图7中由存储装置720例示。在一个实施例中,用来实现这里提供的一个或多个实施例的计算机可读指令可以是在存储装置720中,存储装置720也可以存储其他的计算机可读指令,用来实现操作系统、应用程序、等等。计算机可读指令可以被装载到内存718中用于例如由处理单元716执行。当在这里使用时,术语“计算机可读媒体”包括计算机存储媒体。计算机存储媒体包括以任何方法或技术实现以存储比如计算机可读指令或其他数据的信息的易失性和非易失性、可移除和不可移除的媒体。内存718和存储装置720是计算机存储媒体的例子。计算机存储媒体包括但不限于RAM、R0M、EEPR0M、闪速存储器或其他存储器技术、CD-ROM、数字多功能盘(DVD)、或其他光学存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或可以被用来存储想要的信息并可以由设备712访问的任何其他介质。任何这样的计算机存储媒体可以是设备712的一部分。设备712还可以包括允许设备712与其他设备通信的通信连接726。通信连接726可以包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射器/接收器、红外端口、USB连接、或用于连接计算设备712到其他计算设备的其他接口。通信连接726可以包括有线连接或无线连接。通信连接726可以传送和/或接收通信媒体。术语“计算机可读媒体”可以包括通信媒体。通信媒体典型地将计算机可读指令或其它数据具体化为诸如载波或其它输送机制那样的“调制的数据信号”,并且包括任何信息递送媒体。术语“调制的数据信号”可以包括使它的特性中的一个或多个以如下方式设置或改变的信号,即将信息编码在信号中。设备712可以包括输入设备724,比如键盘、鼠标、笔、话音输入设备、触摸式输入设备、红外摄像机、视频输入设备、和/或任何其他的输入设备。输出设备722 — 一比如一个或多个显示器、扬声器、打印机、和/或任何其他的输出设备一一也可以被包括在设备712中。输入设备724和输出设备722可以经由有线连接、无线连接或它们的任何组合被连接到设备712。在一个实施例中,来自另一个计算设备的输入设备或输出设备可以被用作为用于计算设备712的输入设备724或输出设备722。计算设备712的组件可以通过各种相互连接一比如总线一而被连接。这样的相互连接可以包括外设部件互连(PCI),比如PCI Express、通用串行总线(USB)、火线(firewire, IEEE 1394)、光学总线结构等等。在另一个实施例中,计算设备712的组件可以通过网络而被互连。例如,内存718可以包括位于不同物理位置通过网络而互连的多个物 理存储单元。本领域的技术人员将认识到,被利用来存储计算机可读指令的存储设备可以跨网络分布。例如,经由网络728可访问的计算设备730可以存储用来实现这里提供的一个或多个实施例的计算机可读指令。计算设备712可以访问计算设备730并下载计算机可读指令的一部分或者全部计算机可读指令以用于执行。替换地,计算设备712可以按需要下载计算机可读指令的片段,或者一些指令可以在计算设备712上执行,而一些在计算设备730上执行。这里提供了实施例的各种操作。在一个实施例中,所描述的操作中的一个或多个可以构成被存储在一个或多个计算机可读媒体上的计算机可读指令,这些指令如果被计算设备执行,将使得计算设备执行所描述的操作。所述操作的某些或全部操作被描述的次序不应当被解释为是指这些操作必然依赖于次序。本领域技术人员将意识到替换的排序具有本描述的益处。而且,应该理解,并不是所有的操作都必然存在于这里提供的每一个实施例中。而且,单词“示范性”在这里被使用来表示用作例子、实例、或举例说明的意思。在这里作为“示范性”描述的任何方面或设计不是必然要被解释为优于其他的方面或设计。而是,词语示范性的使用是打算用来以具体的方式给出概念。当在本申请中使用时,词语“或”打算是指包括性的“或”而不是排他性的“或”。也就是,除非另外地规定,或从上下文清楚看出,否则“X利用A或B”打算指任何的自然的包含性互换。即,如果X利用A ;X利用B ;或X利用A和B,则在任何前述的实例下均满足“X利用A或B”。而且,A和B中的至少一个和/或类似表述通常意味着A或B、或者既A且B。另外,当在本申请和所附权利要求中使用时,冠词“一”和“一个”(“a”和“an”)通常可以被解释为是指“一个或多个”,除非另外地规定,或从上下文清楚看出是针对单数形式。而且,A和B中的至少一个和/或类似表述通常意味着A或B、或者既A且B。另外,尽管本公开内容是相对于一个或多个实现被显示和描述的,然而本领域技术人员基于对本说明书和附图的阅读和理解,将会想到等同的替换和修改。本公开内容包括所有这样的修改和替换,并且仅仅由以下的权利要求的范围来限制。特别地就上面描述的组件(如,元件、资源等等)所执行的各种功能而言,除非另外指明,否则被使用来描述这样的组件的术语打算对应于用来执行所描述的部件的规定功能的任何组件(例如,也就是功能上是等同的),即使它们在结构上不等同于本公开内容的、在这里图示的示范性实现中用来执行该功能的所公开的结构。另外,尽管本公开内容的具体特征可能是相对于几个实现中的仅仅一个实现而予以公开的,然而这样的特征可以与其它实现的一个或多个其它特征相组合,正如对于任何给定的或特定的应用而言可能是想要的和有利的那样。而且, 就术语“包括(includes)”^具有(having)”、“有(has)”、“带有(with) ”或者它们的变体在详细说明或权利要求中被使用的方面来说,这样的术语打算是按照类似于术语“包括(comprising)”的方式的包括。
权利要求
1.一种用于向用户通知服务在用户的第一平台上的可用性的基于计算机的方法(100),包括 接收对于识别第一平台的用户是否与该服务相关联的请求(104); 通过使用基于计算机的处理器,来识别该服务是否被安装到第一平台上(106);和如果该服务没有被安装到第一平台上,则用该服务可用于在第一平台上安装的指示来进行响应(108)。
2.权利要求I的方法,包括接收由登录到第一平台的用户发起的请求。
3.权利要求I的方法,包括接收由从与该服务相关联的域接收电子邮件的用户发起的请求。
4.权利要求I的方法,包括从以下之一接收请求 从与该服务相关联的域接收电子邮件的电子邮件服务; 包括该服务的在线服务商店,其中该在线服务商店与第一平台连接;和 驻留在第一平台上的应用,其提供该服务。
5.权利要求4的方法,从电子邮件服务接收请求包括从电子邮件服务接收对于识别用户是否与在第二平台上的服务相关联的请求,所述第二平台包括以下的ー项或多项 设备平台;和 市场平台。
6.权利要求I的方法,包括把该服务注册为与以下的ー项或多项相关联 在一个或多个平台上可以加以利用的服务应用; 服务在线域;和 与为该服务发送的一封或多封电子邮件相关联的服务域。
7.权利要求I的方法,包括在用该服务可用于在第一平台上安装的指示进行响应后,如果该服务被安装到第一平台上,则把该服务与第一平台相关联。
8.权利要求I的方法,接收对于识别第一平台的用户是否与该服务相关联的请求包括接收来自在线应用商店的、识别该用户是否与以下的一项或多项相关联的请求 通过应用商店可得到的应用; 通过应用商店可得到的小部件;和 通过应用商店可得到的网站。
9.权利要求I的方法,用该服务可用于在第一平台上安装的指示进行响应包括发送响应,该响应发起向第一平台的用户的、该服务可供用户在第一平台上使用的可用性的通知。
10.一种用于向用户通知服务在用户的第一平台上的可用性的系统(400),包括 数据存储组件(402),其被配置成存储关干与注册的服务提供者(456)相关联的ー个或多个服务的信息; 识别组件(404),其可操作地与数据存储组件(402)耦合,并被配置成使用在数据存储组件上的信息来识别来自注册服务提供者(456)的服务是否被安装到用户的第一平台上;和 请求操控组件406,其可操作地与识别组件(404)耦合,并被配置成接收用户ID请求(450),该请求包括对于识别第一平台的用户是否与该服务相关联的请求;和 如果该服务没有被安装到第一平台上,则用该服务可用于在第一平台上安装的指示响应所述请求(452 )。
11.权利要求10的系统,包括包含以下的ー项或多项的服务 与所述注册的服务提供者相关联的应用,其具有多平台功能性; 与所述注册的服务提供者相关联的网站;和 能够从多个平台连接的小部件。
12.权利要求10的系统,包括服务提供者注册组件,其被配置成 利用服务提供者ID注册服务提供者;和 使用用干与该服务相关联的平台的服务ID,利用服务提供者ID注册服务提供者。
13.权利要求10的系统,包括电子邮件通知组件,其被配置成 识别电子邮件从其发送给用户的域; 确定该域是否与注册的服务提供者相关联;和 如果域与该注册的服务提供者相关联,则识别与该域相关联的注册的服务提供者。
14.权利要求10的系统,包括应用商店通知组件,其被配置成 确定用户是否与第二平台上的服务相关联; 如果该用户与第二平台上的服务相关联,则识别与第二平台上的该服务相关联的注册的服务提供者;和 如果该用户与第二平台上的服务相关联,并且该服务没有被安装到第一平台上,则指示该服务可用于在第一平台上安装。
15.权利要求10的系统,包括决定退出组件,其被配置成如果该决定退出组件接收到决定退出请求,则把该用户识别为决定退出服务。
16.一种计算机可读媒体,包括在其上存储的指令,所述指令响应于由计算设备执行而使得该计算设备执行按照权利要求I 一 9中任ー项的方法。
全文摘要
本发明涉及跨平台服务通知。公开了一种或多种技术和/或系统,其用于向用户通知某服务在用户的第一平台(如,蜂窝电话)上的可用性,其中用户可能已经在第二平台(如,膝上型计算机)上使用该服务(或它的变体)。这样,用户可以在使用第一平台(如,蜂窝电话)时意识到该服务的可用性,而不必搜索用于第一平台的所述服务(的版本),这里用户可能仅仅知道用于第二平台(如,膝上型计算机)的所述服务(的版本)。
文档编号H04L12/58GK102710737SQ20121005474
公开日2012年10月3日 申请日期2012年3月5日 优先权日2011年3月3日
发明者A.E.吉尔林, A.帕特尔, C.帕克, M.弗兰耶斯, O.V.奥巴桑霍, S.G.诺尔德贝里 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1