基于位置的软件更新的制作方法

文档序号:13742716阅读:152来源:国知局
技术领域本公开大体上涉及移动软件应用程序,并且具体地涉及更新这类应用程序。

背景技术:
移动装置和软件的操作其所需的复杂度正在增加。另外,针对这类装置的软件更新往往很大,并且如果对付费的并且分层的移动数据服务计划执行软件更新,那么可以消耗允许装置单月的很大一部分的带宽。一些更新的提供者推荐在移动装置连接至局域网(例如,宽带WiFi网络)时,而不是通过与数据服务计划绑定的对应的移动连接,来执行更新。一些移动装置在试图下载和/或执行软件更新之前警告用户。然而,这些警告可能没有被用户注意到或者可以被用户忽略,以潜在地使用户花钱。此外,大的更新可能花费长的时间来完成,尤其在通过较慢的移动数据服务连接执行,并且被由用户发起的诸如web浏览的其它网络活动干扰时。

技术实现要素:
所公开的主题涉及确定更新移动装置软件的适当位置以防止发起不需要的软件更新。示例方法包括:识别在移动装置的无线连接范围内的一个或者多个无线接入点;确定该一个或者多个所识别的无线接入点中的无线接入点是否包括在优选的无线接入点的列表中,该列表是考虑经由优选的无线接入点执行的先前软件更新和在该先前软件更新期间的网络连接性的持续时间来生成的;当无线接入点包括在优选的无线接入点的列表中时,调度使用无线接入点的一个或者多个软件更新;以及在连接至无线接入点时执行所调度的软件更新。另一示例方法包括:确定针对一个或者多个无线接入点的连接活动的模式,其中,所确定的模式基于连接性信息;按照所确定的模式向相应的无线接入点指派分值,该分值基于连接性信息;将所指派的分值与阈值分值进行比较;以及当无线接入点的所指派的分值比阈值分值大时,将该无线接入点确定为优选的无线接入点。应该理解,通过下列具体实施方式,本技术的其它配置对于本领域的技术人员而言是显而易见的,其中,通过举例来示出和说明本技术的各种配置。如将实现的,本技术能够实现其它不同的配置,并且其一些细节能够在各个其它方面进行修改,所有都不脱离本技术的范围。因此,认为附图以及具体实施方式本质上是说明性的而不是限制性的。附图说明在所附权利要求书中陈述了本技术的新颖特征。然而,出于阐释的目的,在以下附图中陈述了本技术的一些配置。图1是适合实践本技术的实施方式的示例网络环境的视图。图2是根据本公开的一个方面的图示了来自图1的环境的示例装置的框图。图3是根据本公开的一个方面的图示了移动装置和相关更新活动的行进路径的示例视图。图4A和图4B图示了用于使用图2的示例装置来实践本技术的实施方式的示例过程。图5概念地图示了实现一些配置的示例电子系统。具体实施方式下面所陈述的具体实施方式作为主题技术的各个配置的描述,并且不旨在代表可以实践本技术的仅有配置。附图并入本文并且组成具体实施方式的一部分。为了提供对本技术的透彻理解,具体实施方式包括具体细节。然而,本技术并不限于本文所陈述的具体细节,并且可以在没有这些具体细节的情况下实践。在某些情况下,以框图的形式示出结构和组件,以避免使本技术的概念模糊。本技术的方面提供了软件,该软件在被安装在移动装置上时,确定更新移动装置的适当位置以防止发起不需要的软件更新。移动装置可以被配置为:每当移动装置连接至无线接入点时,记录与局域网的无线(例如,WiFi)接入点相关联的位置信息。位置信息可以包括:在移动装置连接至无线接入点时从移动装置集成GPS单元接收到的该移动装置的地理坐标位置,并且可以因此表示无线接入点和其网络的地理坐标位置。除了位置信息之外,移动装置可以被配置为记录与无线接入点相关联的互联网协议(IP)地址或者服务集标识符(SSID)等。移动装置还可以记录软件更新信息,该软件更新信息可以包括:有关何时使用无线接入点来执行软件更新和大型下载(例如,50Mb以上)和移动装置连接至无线接入点多长时间的信息。本技术的方面可以向用户提供选择退出特征的选项,包括但不限于:确定从移动装置内的集成GPS单元接收到的地理坐标。在本技术的方面中,移动装置基于各种因素来确定连接活动模式,该各种因素包括:无线接入点的识别、发生至接入点的连接的日期和一天中的时间、连接至接入点所花的时间、是否周期性地进行至接入点的连接等。可以基于这些因素对每个无线接入点进行分类或者评分,并且然后,指定具有最高分值的接入点作为优选接入点。作为非限制性示例,可以将确定的模式作为数据结构存储在存储器中。数据结构可以包括:识别发生从移动装置至其的连接的一个或者多个接入点的接入点标识符、与每个接入点相关联的分值、以及接入点是否是优选接入点的识别。接入点标识符可以指向(或寻址)存储器中的相同的数据结构或者另一数据结构,例如,该存储器存储表示以下的值:可以发生至接入点的连接的日期或者一天中的时间、连接至接入点所花的时间、是否周期性地进行至相同接入点的连接等。按照这种方式,移动装置然后基于活动模式自动确定一个或者多个优选接入点。例如,通过附加到相关联的识别(例如,SSID)的每个无线(例如,WiFi)接入点的坐标位置(例如,GPS坐标),可以进一步唯一识别每个无线接入点。当移动装置连接至无线接入点时,移动装置确定当前连接的接入点是否是优选接入点。如果当前连接的无线接入点是优选接入点,那么移动装置允许使用当前连接的无线接入点的软件更新。否则,移动装置自动禁止使用当前连接的无线接入点的软件更新。在一些实施方式中,包括先前描述的位置信息的活动模式可以用于确定优选的无线接入点在附近,或者用于预期在预定时间段内移动装置将进入该优选的无线接入点的附近。预定时间段可以是几秒钟、几分钟或者其它任何时间段。因此,如果更新可用于移动装置,那么移动装置可以显示装置将在连接至优选的无线接入点时执行更新的指示。按照这种方式,因为本技术的方面确定了能够访问WiFi以更新移动装置软件的适当位置(例如,优选接入点),所以避免了可以通过绑定至数据计划的移动连接而执行的不需要的更新。这节约了用户移动数据计划带宽并且对用户而言是有成本效益的。此外,大的软件更新在通过WiFi连接执行时通常可以花更少时间并且较少被由用户发起的诸如web浏览的其它网络活动干扰。图1图示了可以提供至网络的连接的示例环境。通信环境100可以包括计算装置102a、102b和102c(下文称为“102a-c”),其可以通过无线通信信道104a、104b和104c(下文称为“104a-c”)与接入点106a、106b和106c(下文称为“106a-c”)通信。信道104a-c可以包括双向通信链路。信道104a-c可以包括WiFi通信链路。计算装置102a-c中的每个可以表示各种形式的处理装置。示例处理装置可以包括:移动装置、蜂窝电话、平板计算机、智能手表、台式计算机、膝上型计算机、手持式计算机、个人数字助理(PDA)、蜂窝式电话、网络家电、摄像机、智能电话、电视机、增强通用分组无线业务(EGPRS)移动电话、媒体播放器、导航装置、邮件装置、游戏机、或者任何这些数据装置或者可以无线接收和/或传输信息的其它装置的组合。在示例方面中,计算装置102a-c还可以包括接入点。在本技术的一些方面中,计算装置102a-c和接入点106a-c可以根据一个或者多个通信标准来通信,所述通信标准诸如,IEEE802.11(a)、(b)或者(g)标准(或WiFi标准)、地面数字视频广播(DVB-T)广播标准、和/或高性能无线局域网(HiperLAN)标准中的一个。在本技术的其它方面中,计算装置102a-c可以使用多载波传输技术来与接入点106a-c中的一个或者多个通信,所述多载波传输技术诸如,使用正交子载波来在分配的谱内传输信息的正交频分复用(OFDM)技术。其它无线局域网(LAN)和无线广域网(WAN)通信技术也可能适合装置102a-c与接入点106a-c之间的通信。此外,本公开的示例可应用于接入点,该接入点可以执行邻居发现、雷达检测和信道宽度选择(例如,一些IEEE802.11标准的每个修订)。服务器108可以是具有处理器、存储器和通信能力的任何装置。服务器108可以被配置为根据本公开的方面向装置102a-c提供软件更新。例如,当装置102a连接至优选的无线接入点(例如,接入点106c)时,服务器108可以向装置102a提供软件更新。除了促进计算装置102a-c之间的通信之外,在本技术的一些方面中,接入点106a-c可以与诸如内联网或者互联网的网络105耦合,以允许计算装置102a-c访问这类网络。例如,网络105可以包括以下中的任何一个或者多个:个域网(PAN)、局域网(LAN)、校园网(CAN)、城域网(MAN)、广域网(WAN)、宽带网(BBN)、互联网等。进一步地,网络150可以包括但不限于包括以下的网络拓扑中的任何一个或者多个:总线网络、星形网络、环形网络、网状网络、星形总线网络、树状或者层次网络等。虽然图1图示了点对点通信(例如,接入点与网络同步),但是本技术的方面也可能适合点对多点通信(例如,点对点通信,在该点对点通信中,通信单元可以共享与网络同步的责任)。如上面所讨论的,本技术的方面提供了软件,该软件在安装在移动装置上时,确定更新移动装置的适当位置以防止发起不需要的软件更新。参照图1,装置102a-c可以被配置为记录其每当连接至任何无线接入点106a-c的位置信息。位置信息可以包括在移动装置连接至无线接入点时从移动装置集成GPS单元接收到的移动装置的地理坐标位置,并且可以因此表示无线接入点以及其网络的地理坐标位置。除了位置信息之外,移动装置可以被配置为记录与无线接入点相关联的互联网协议(IP)地址或者服务集标识符(SSID)等。移动装置还可以记录软件更新信息,该软件更新信息包括:有关何时使用无线接入点来发起软件更新和大的下载(例如,50Mb以上)和移动装置连接至无线接入点多长时间的信息。要理解,本文所讨论的本技术的方面并不限于图1中所示的装置102a-b、接入点106a-c和信道104-c,并且可以与任何数量的装置、接入点和信道一起操作。虽然关于WiFi接入点讨论了下面内容,但是要理解,本文所讨论的本技术的方面并不限于WiFi接入点,并且可以与任何其它形式的无线接入点和宽带接入点一起操作。图2更加详细地图示了根据本技术的方面的装置102a的视图。参照图2,装置102a包括处理器210、存储器212、通信模块222和GPS单元228。在本技术的方面中,存储器212包括位置和更新管理器220。输出装置214可以包括装置102a的触摸屏图形显示器或者非触摸屏图形显示器。输入装置216可以是接收用户输入的任何输入装置,诸如,键盘、触摸屏或者鼠标。虽然关于装置102a讨论了下面内容,但是要理解,本技术的本方面可以与装置102b以及任何其它移动和计算装置一起工作。在本技术的方面中,装置102a的处理器210被配置为执行指令,诸如,在处理器210中物理编码的指令和从存储器212读取的软件指令(例如,来自位置和更新管理器220的指令)。例如,装置102a的处理器210执行来自位置和更新管理器220的指令,以基于位置信息、软件更新信息和连接至一个或者多个接入点的时间段来确定一个或者多个优选接入点。如上面所讨论,位置信息可以包括:在移动装置连接至无线接入点时从移动装置集成GPS单元(例如,GPS单元228)接收到的移动装置的地理坐标位置,并且可以因此表示无线接入点以及其网络的地理坐标位置。除了位置信息之外,移动装置可以被配置为记录与无线接入点相关联的互联网协议(IP)地址或者服务集标识符(SSID)等。移动装置还可以记录软件更新信息,该软件更新信息可以包括:有关何时使用无线接入点来执行软件更新和大的下载(例如,50Mb以上)和移动装置连接至无线接入点多长时间的信息。在本技术的方面中,当装置102a连接至任何接入点106a-c时,可以通过位置和更新管理器220来接收针对装置102a的位置信息和软件更新信息。在一个方面中,位置和更新管理器220可以将接收到的位置和软件更新信息存储在存储器212中。可以通过位置和更新管理器220将位置和更新信息作为任何数据结构存储在存储器212中,该任何数据结构包括但不限于一个或者多个数据表。在一个方面中,位置和更新管理器220可以将位置信息存储在存储器212中的位置信息表中。在一个方面中,位置和更新管理器220可以将软件更新信息存储在存储器212中的软件信息表中。在位置信息表中的位置信息可以指向(或寻址)在软件信息表中的相应的软件更新信息。该示例是说明性的,并且不限于所述实施例。在一个方面中,通过位置和更新管理器220来从装置102a的存储器212读取这种存储的位置和软件更新信息。在另一方面中,可以通过先前为装置102a存储位置和软件更新信息的位置和更新管理器220来从服务器108接收到针对装置102a的这种位置和软件更新信息。接入节点106a-c可以是,例如,WiFi接入点。在本技术的方面中,位置和更新管理器220被配置为:每当装置102a连接至与网络相关联的无线接入点(例如,接入点106a)时,将位置和软件更新信息记录在存储器212中。位置信息可以包括:在移动装置连接至无线接入点时从移动装置集成GPS单元接收到的移动装置的地理坐标位置,并且可以因此表示无线接入点以及其网络的地理坐标位置。除了位置信息之外,移动装置可以被配置为记录与无线接入点相关联的互联网协议(IP)地址或者服务集标识符(SSID)等。移动装置还可以记录软件更新信息,该软件更新信息可以包括:有关何时使用无线接入点来执行软件更新和大的下载(例如,50Mb以上)和移动装置连接至无线接入点多长时间的信息。位置和更新管理器220可以基于位置信息、软件更新信息和连接至一个或者多个接入点的时间段来确定一个或者多个优选接入点。在本技术的一些方面中,位置和更新管理器220可以基于各种因素来确定连接活动模式,该各种因素包括:无线接入点的识别、发生连接的日期和一天中的时间、连接至接入点所花的时间、是否周期性地进行至相同接入点的连接等。在本技术的一些方面中,位置和更新管理器220可以基于各种因素的变化来更新确定的模式。在一些方面中,当移动装置在不同的时间重新连接至无线接入点时,位置和更新管理器220可以更新确定的模式。位置和更新管理器220然后可以基于活动模式来自动确定一个或者多个优选接入点。可以基于这些因素对每个无线接入点进行分类或者评分,并且然后,可以指定具有最高分值的接入点作为优选接入点。例如,通过附加到相关联的识别(例如,SSID)的接入点的坐标位置(例如,GPS坐标),可以进一步唯一识别每个无线接入点。在本技术的方面中,通过位置和更新管理器220接收移动装置正在与当前连接的无线接入点通信的第一指示。如果当前连接的无线接入点是优选接入点,那么响应于接收到第一指示,经由优选接入点,通过位置和更新管理器220向服务器108提供移动装置可用于使用当前连接的无线接入点的软件更新的第二指示。否则,通过位置和更新管理器220来自动禁止使用当前连接的无线接入点的软件更新。在本技术的一些方面中,位置和更新管理器220可以位于服务器108处。当装置102a-c连接至接入点106a-c中的一个或者多个时,位置和更新管理器220在位于服务器108处时可以接收接入点106a-c的相应识别。如上面所讨论的,位置和更新管理器220可以基于各种因素来确定连接活动模式,该各种因素包括:接入点的识别、发生连接的日期和一天中的时间、连接至接入点所花的时间、是否周期性地进行至相同接入点的连接等。位置和更新管理器220在处于服务器108处时然后可以请求服务器108基于确定的连接活动模式来向装置102a提供软件更新。图3是根据本公开的一个方面的图示了移动装置和相关更新活动的行进路径的示例视图。如上面所讨论的,移动装置(例如,装置102a)被配置为:每当移动装置连接至局域网的无线接入点时,记录(例如,使用位置和更新管理器220来记录)位置信息。该位置信息可以按照任何形式的数据结构或者数据库记录在装置102a的存储器212中。位置信息可以包括:在该移动装置连接至无线接入点时从移动装置集成GPS单元接收到的移动装置的地理坐标位置,并且可以因此表示无线接入点和其网络的地理坐标位置(精确的或者近似的地理坐标位置)。当移动装置与接入点A、B和C建立连接时,移动装置已经记录了移动装置的地理坐标。移动装置还可以记下:何时使用无线接入点A、B和C来发起软件更新和大的下载(例如,50Mb以上)和移动装置连接至无线接入点A、B和C中的每一个多长时间。如上面所讨论的,移动装置基于各种因素来确定连接活动模式,该各种因素包括:无线接入点的识别、发生连接的日期和一天中的时间、连接至接入点所花的时间、是否周期性地进行至相同接入点的连接等。移动装置然后基于活动模式自动确定一个或者多个优选接入点。可以基于这些因素对每个无线接入点进行分类或者评分,并且然后,指定具有最高分值的接入点作为优选接入点。分值可能是可以作为列表或者任何其它数据结构存储在装置102a的存储器212中的值(例如,数值)。在一些方面中,可以将具有大于阈值的分值的一个或者多个无线接入点指定为优选接入点。阈值可以基于确定的连接活动模式。例如,通过附加到相关联的识别(例如,SSID)的接入点的坐标位置(例如,GPS坐标),可以进一步唯一识别每个无线接入点。可以将表示优选接入点的标识符(例如,接入点名称、SSID等)作为列表或者任何其它数据结构存储在存储器212和/或在服务器108处的存储器中。出于这种考虑并且参照图3,移动装置(例如,装置102a)已经确定包括接入点A、B和C的连接模式。此外,移动装置已经确定接入点A和C与短连接时间和/或很少的连接活动相关联,同时确定接入点B与最长连接时间和更新活动对应。作为说明性示例,短连接时间可以持续几毫秒,并且很少的连接活动可以包括传送几个字节的数据。另一方面,并且例如,长连接时间可以持续几分钟或者甚至几小时,并且长连接活动可以包括传送几个字节或者百万字节的数据。移动装置然后进行评分接入点A、B和C。在该示例方案中,移动装置可以将最高分值指派给接入点B,因为其与最长连接时间和更新活动对应,并且将接入点B指定为优选接入点。可以将较低分值指派给接入点A和C,因为它们与短连接时间和/或很少的连接活动对应。在所公开的本技术的一些方面中,可以基于连接时间和/或连接活动的值来确定阈值分值。可以将指派给一个或者多个接入点的分值与阈值分值进行比较。然后,当经排名的无线接入点的所指派的分值比阈值分值大时,可以将经排名的无线接入点确定为优选的无线接入点。在其它示例方面中,当经排名的无线接入点的所指派的分值等于阈值分值或者与该阈值分值大体上相似时,可以将经排名的无线接入点确定为优选的无线接入点。可以将任何数量的接入点确定为优选接入点。在跨越图3的路径(或者大体上相似的路径)的将来或者后续行进中,当移动装置连接至无线接入点(例如,接入点A、B或者C中的一个接入点)时,移动装置确定当前连接的接入点是否是优选接入点。如果当前连接的无线接入点是优选接入点(例如,接入点B),那么移动装置经由当前连接的无线接入点执行来自服务器108的软件更新。否则,移动装置自动禁止使用当前连接的无线接入点的软件更新(例如,接入点A或C)。由此,例如,如果在移动装置中的位置和更新管理器220确定装置连接至不是优选接入点的接入点A,那么可以禁止移动装置所需的任何软件更新,直到移动装置连接至作为优选接入点的无线接入点B。在一些实施方式中,包括先前描述的位置信息的活动模式可以用于确定优选的无线接入点在附近,或者用于预期在预定时间段内移动装置将进入该优选的无线接入点的附近。因此,如果更新可用于移动装置,那么移动装置可以显示装置将在连接至优选的无线接入点时执行更新的指示。例如,并且参照图3,当移动装置连接至接入点A或者在其附近时,该移动装置可以基于指示这种连接活动的之前行进模式来确定移动装置可能即将进入接入点B的连接范围。可以将这种之前行进模式存储在装置102a或者服务器108处。然后,至接入点B的连接可以用于执行任何软件更新。按照这种方式,因为本技术的方面可以确定能够无线访问以更新移动装置软件的适当位置,所以避免了可以通过绑定至数据计划的移动连接而执行的不需要的更新。这节约了用户移动数据计划带宽并且对用户而言可能是有成本效益的。此外,大的软件更新在通过无线连接执行时通常花更少时间并且较少被由用户发起的诸如web浏览的其它网络活动干扰。图4A图示了用于基于位置的软件更新的示例过程400。虽然参照图2描述了图4A,但是应该注意,可以通过其它系统来进行图4A的过程步骤。过程400在步骤402中开始于识别在移动装置的无线连接范围内的一个或者多个无线接入点。接下来,在步骤404中,确定步骤402的一个或者多个所识别的无线接入点中的无线接入点是否包括在优选的无线接入点的列表中。作为一个示例,该列表是考虑经由优选的无线接入点执行的先前软件更新和在该先前软件更新期间的网络连接性持续时间来生成的。例如,可以将列表存储在装置102a的存储器212中。在列表中,可以使用无线接入点的SSID、接入点名称或者任何其它标识符来识别无线接入点。无线接入点的SSID(或者任何其它标识符)可以与例如在列表上的其它SSID相比较,以确定无线接入点是否包括在列表中。如果无线接入点包括在优选的无线接入点的列表中,那么在步骤406中,方法400在连接至该无线接入点时执行所调度的软件更新。否则,方法进行禁止使用该无线接入点的软件更新的步骤408。例如,如果移动装置连接至接入点106b,那么可以禁止软件更新,但是如果移动装置连接至接入点106c并且如果确定接入点106c包括在优选接入点的列表中,那么允许软件更新。图4B图示了用于确定优选WiFi接入点的另一示例过程420。虽然参照图2描述了图4B,但是应该注意,可以通过其它系统来进行图4的过程步骤。当移动装置连接至一个或者多个无线接入点时,过程420在步骤422中开始于确定针对该一个或者多个无线接入点的连接活动模式。例如,移动装置102a可以基于无线接入点的识别、发生连接的日期和一天中的时间、连接至接入点所花的时间、以及是否周期性地进行至相同的接入点的连接,来确定针对无线接入点的连接活动模式。接下来,在步骤424,使用确定的模式来将分值指派给该无线接入点。作为一个示例,移动装置102a可以基于无线接入点的识别、发生连接的日期和一天中的时间、连接至接入点所花的时间、以及是否周期性地进行至相同的接入点的连接,来评分无线接入点。过程420然后在步骤426中为经评分的无线接入点进行排名,并且在步骤428中确定一个或者多个优选的无线接入点。例如,可以将具有最高分值的无线接入点确定为优选接入点。在另一示例中,可以将指派给无线接入点的分值与阈值分值进行比较,并且当经排名的无线接入点的所指派的分值可以比阈值分值大时,可以将经排名的无线接入点确定为优选的无线接入点。图5是图示了可以用来实现装置110a-c的示例计算机系统500的框图。在某些方面中,可以使用在专用服务器中或者集成为另一实体或者跨越多个实体分布的硬件或者软件和硬件的组合来实现计算机系统500。计算机系统500(例如,客户端110和服务器130)包括:用于传达信息的总线508或者其它通信机构、以及与总线508耦合以处理信息的处理器502(例如,处理器212和236)。举例来说,可以利用一个或者多个处理器502来实现计算机系统500。处理器502可以是通用微处理器、微控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、门控逻辑、分立硬件组件、或者可以执行信息的计算或者其它操作的任何其它合适的实体。除了硬件之外,计算机系统500可以包括:为所讨论的计算机程序创建执行环境的代码(例如,组成处理器固件的代码)、协议栈、数据库管理系统、操作系统、或者包括的存储器504(例如,存储器220和232)中存储的它们中的一个或者多个的组合,所述存储器耦合至总线508以存储信息和待由处理器502执行的指令,所述存储器诸如,随机存取存储器(RAM)、闪存、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除PROM(EPROM)、寄存器、硬盘、可拆卸盘、CD-ROM、DVD、或者任何其它合适的存储装置。处理器502和存储器504可以由专用逻辑电路补充或者并入该专用逻辑电路中。指令可以存储在存储器504中,并且可以在一个或者多个计算机程序产品中实现,所述计算机程序产品即,根据本领域的技术人员所熟知的任何方法而在计算机可读介质上编码的由计算机系统500执行或者以控制该计算机系统500的操作的计算机程序指令的一个或者多个模块,该本领域的技术人员所熟知的任何方法包括但不限于:诸如面向数据语言的计算机语言(例如,SQL、dBase)、系统语言(例如,C、Objective-C、C++、Assembly)、构架语言(例如,Java、.NET)以及应用语言(例如,PHP、Ruby、Perl、Python)。指令也可以利用计算机语言来实现,诸如,阵列语言、面向方面语言、汇编语言、写作语言、命令行界面语言、编译式语言、并发式语言、波形括号语言、数据流语言、数据结构化语言、说明性语言、深奥的语言、扩展语言、第四代语言、功能性语言、交互式语言、解释性语言、迭代语言、基于列表的语言、小众语言、基于逻辑的语言、机器语言、宏语言、元编程语言、多范型语言、数值分析、基于非英语的语言、面向对象的基于类的语言、面向对象的基于原型的语言、越位规则语言、过程型语言、反思性语言、基于规则的语言、脚本语言、基于栈的语言、同步语言、语法处理语言、视觉语言、wirth语言、嵌入式语言、以及基于xml的语言.存储器504还可以用于在执行待由处理器502执行的指令期间存储临时变量或者其它中间信息。本文所讨论的计算机程序不一定与文件系统中的文件对应。可以将程序存储在保持其它程序或者数据(例如,存储在标记语言文件中的一个或者多个脚本)的文件的部分中,或者在专用于所讨论的程序的单一文件中,或者在多个协作文件(例如,存储一个或者多个模块、子程序或者代码中的部分的文件)中。可以采用将在一个计算机上或者在多个计算机上执行的计算机程序,该多个计算机位于一个地点处或者跨多个地点分布并且通过通信网络互相连接。本说明书中所描述的过程和逻辑流程可以由一个或者多个可编程处理器执行,该一个或者多个可编程处理器执行一个或者多个计算机程序以通过操作输入数据和生成输出来执行功能。计算机系统500进一步包括耦合至总线508以存储信息和指令的数据存储装置506,诸如,磁盘或者光盘。计算机系统500可以经由输入/输出模块510耦合至各种装置。输入/输出模块510可能是任何输入/输出模块。示例输入/输出模块510包括数据端口,诸如USB端口。输入/输出模块510被配置为连接至通信模块512。示例通信模块512(例如,通信模块218和238)包括网络接口卡,诸如,以太网卡和调制解调器。在某些方面中,输入/输出模块510被配置为连接至多个装置,诸如,输入装置514(例如,输入装置216)和/或输出装置516(例如,输出装置214)。示例输入装置514包括键盘和指向装置,例如,鼠标或者轨迹球,用户可以通过它们向计算机系统500提供输入。其它种类的输入装置514也可以用于提供与用户的交互,诸如,触觉输入装置、视觉输入装置、音频输入装置、或者人机界面装置。例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或者触觉反馈;并且可以按照包括听觉、语言、触觉或者脑波输入的任何形式来接收来自用户的输入。示例输出装置516包括用于向用户显示信息的显示装置,诸如,LED(发光二极管)、CRT(阴极射线管)、或者LCD(液晶显示器)屏。根据本公开的一个方面,响应于处理器502执行在存储器504中包含的一个或者多个指令的一个或者多个序列,可以使用计算机系统500来实现客户端110和服务器130。这类指令可以从诸如数据存储装置506的另一机器可读介质读取到存储器504中。执行在主存储器504中包含的指令序列使处理器502执行本文所描述的过程步骤。也可以采用在多处理布置中的一个或者多个处理器来执行在存储器504中包含的指令序列。在替代方面中,硬连线电路可以用于代替软件指令或者与该软件指令结合以实现本公开的各个方面。由此,本公开的方面并不限于硬件电路和软件的任何具体组合。可以利用计算系统来实现本说明书中所描述的主题的各个方面,该计算系统包括后端组件,例如,作为数据服务器,或者包括中间件组件,例如,应用服务器,或者包括前端组件,例如,具有图形用户界面或者web浏览器的客户端计算机,用户可以通过该图形用户界面或者该web浏览器来与本说明书中所描述的主题的实施方式交互;或者该后端组件、中间件组件或者前端组件中的一个或者多个的任何组合。系统的组件可以通过任何形式或者介质的数字数据通信(例如,通信网络)来相互连接。通信网络(例如,网络150)可以包括,例如,个域网(PAN)、局域网(LAN)、校园网(CAN)、城域网(MAN)、广域网(WAN)、宽带网(BBN)、互联网等中的任何一个或者多个。进一步地,通信网络可以包括但不限于包括以下的网络拓扑中的任何一个或者多个:总线网络、星形网络、环形网络、网状网络、星形总线网络、树状或者层次网络等。通信模块可以是例如调制解调器或者以太网卡。计算系统500可以包括客户端和服务器。客户端和服务器大体上彼此远离并且通常通过通信网络交互。客户端和服务器的关系借助在相应的计算机上运行的并且彼此具有客户端-服务器关系的计算机程序而出现。计算机系统500可以是,例如,但是不限于,台式计算机、膝上型计算机或者平板计算机。计算机系统500也可以嵌入另一装置中,例如,但是不限于,移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器、视频游戏机和/或电视机顶盒。本文所使用的术语“机器可读存储介质”或者“计算机可读介质”指的是参与向处理器502提供指令或者数据以执行的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质、易失性介质和传输介质。非易失性介质包括,例如,光盘、磁盘或者闪存,诸如,数据存储装置506。易失性介质包括动态存储器,诸如,存储器504。传输介质包括同轴电缆、铜线和光纤,包括包含有总线508的线。普通形式的机器可读介质包括,例如,软盘、软磁盘、磁带、任何其它磁介质、CD-ROM、DVD、任何其它光学介质、穿孔卡、纸带、具有孔模式的任何其它物理介质、RAM、PROM、EPROM、FLASHEPROM、任何其它存储器芯片或者盒、或者可以从其读取计算机的任何其它介质。机器可读存储介质可以是机器可读存储装置、机器可读存储基板、存储装置、影响机器可读传播信号的组成物质、或者它们中的一个或者多个的组合。如本文所使用,短语前述一系列的项中的“至少一个”,其中,词语“和”或者“或”使任何项分开,将列表作为一个整体而不是列表中的每个成员(即,每项)来修饰。短语“至少一个”不需要选择至少一个项;相反,短语允许包括项中的任何一个中的至少一个、和/或项的任何组合中的至少一个、和/或每个项中的至少一个的意思。举例来说,短语“A、B和C中的至少一个”或者“A、B或C中的至少一个”都指的是仅仅A、仅仅B、或者仅仅C;A、B和C的任何组合;和/或A、B和C中的每个中的至少一个。此外,在术语“包含”、“具有”等用于说明书或者权利要求书时,这种术语旨在按照与当术语“包括”被用作权利要求中的过渡词时被解释的相似的方式是包括性的。对单数元素的引用并不意谓“一个且仅仅一个”,除非特别说明,而是“一个或者多个”。本领域的技术人员知道或者以后将知道的贯穿本公开所描述的各种配置的元素的所有结构和功能等效物明确地通过引用并入本文并且旨在被本技术所涵盖。此外,本文公开的任何内容都不旨在奉献于公众,不管以上描述是否明确记载这样的公开。虽然说明书包括许多细节,但是它们不应该被解释为对所要求保护的内容的范围的限制,而是作为对主题的具体实施方式的描述。也可以结合单一方面来实施在单独的方面的上下文在本说明书中所描述的某些特征。相反地,也可以在多个方面中单独地或者在任何合适的子组合中实施在单一方面的上下文描述的各种特征。此外,虽然上面可能将特征描述为在某些组合中起作用,并且最初甚至如此要求保护,但是可以从所要求保护的组合中删除来自该组合的一个或者多个特征,并且所要求保护的组合可能涉及子组合或者子组合的变化。相似地,虽然按照特定顺序在附图中描绘了操作,但是这不应该理解为:需要按照所示的特定顺序或者按照相继顺序来执行这类操作,或者执行所有所示操作,以实现期望结果。在某些环境中,多任务处理和并行处理可能是有利的。此外,不应该将在上面所描述的方面中的各种系统组件的分离理解为:在所有方面中需要这种分离,并且应该理解,所描述的程序组件和系统通常可以一起集成在单一软件产品中或者封装在多个软件产品中。已经根据特定方面来描述了本说明书的主题,但是可以实施其它方面并且该其它方面在所附权利要求的范围内。例如,在权利要求中所记载的动作可以按照不同的顺序而执行并且仍然可以实现期望结果。作为一个示例,在附图中描绘的过程不一定需要所示的特定顺序或者相继顺序,以实现期望结果。在某些实施方式中,多任务处理和并行处理可能是有利的。其它变化在所附权利要求的范围内。这些实施方式和其它实施方式在所附权利要求的范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1