首页> 中国专利> 基于接近度修改移动计算设备与外围设备之间的交互类型

基于接近度修改移动计算设备与外围设备之间的交互类型

摘要

一般而言,本公开中描述的主题可以体现在用于基于接近度来修改移动设备与外围设备之间的交互的方法、设备和程序产品中。移动设备监视无线通信信道,并且通过该信道从外围设备接收指示移动设备位于与外围设备的第一接近地带内的传输。移动设备确定设备之间的距离值。当移动设备确定距离值满足阈值时,移动设备视觉地指示其在与外围设备的第二接近地带内。由于移动设备使用第二通信协议从外围设备接收数据,移动设备确定其位于与外围设备的第三接近地带内,并且执行动作。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-02-01

    实质审查的生效 IPC(主分类):H04L29/08 专利申请号:2019800893708 申请日:20190118

    实质审查的生效

说明书

技术领域

本文档总体上涉及基于移动计算设备与外围设备的接近度来修改移动计算设备与外围设备之间的交互类型。

背景技术

诸如智能电话的移动设备可以使用诸如蓝牙、Wi-Fi或另一无线联网协议的各种无线技术与其他设备通信。配置移动设备使得其能够与另一设备通信可以涉及执行各种配置步骤,诸如在移动设备上安装被编程为促进移动设备与另一设备之间的通信的软件应用、安装设备驱动器、和/或提供设备标识符、密码或其他凭证。一旦移动设备和另一设备被连接,移动设备和另一设备就可以共享数据,和/或移动设备可以用作另一设备的控制器。

发明内容

本文档描述了用于基于移动计算设备与外围设备的接近度来修改移动计算设备与外围设备之间的交互类型的技术、方法、系统和其他机制。

作为对以下描述的实施例的附加描述,本公开描述了以下实施例。

实施例1是一种计算机实现的方法。该方法包括由移动计算设备监视无线通信信道。该方法包括由所述移动计算设备使用第一通信协议通过所述无线通信信道从外围设备接收传输,所述传输标识所述外围设备的类型,对所述传输的接收指示所述移动计算设备位于与所述外围设备的第一接近地带内。该方法包括由所述移动计算设备响应于所述移动计算设备从所述外围设备接收到所述传输而建立在多个时间确定所述移动计算设备与所述外围设备之间的相应多个距离值的过程。该方法包括由所述移动计算设备确定所述多个距离值中的第一距离值未能满足阈值,从而指示所述移动计算设备不在与所述外围设备的第二接近地带内。该方法包括由所述移动计算设备确定所述多个距离值中的第二距离值满足所述阈值,从而指示所述移动计算设备在与所述外围设备的所述第二接近地带内。该方法包括由所述移动计算设备响应于所述移动计算设备确定所述第二距离值满足所述阈值而修改所述移动计算设备的显示,以在视觉上指示所述移动计算设备在与所述外围设备的所述第二接近地带内。该方法包括在所述移动计算设备已经确定所述第二距离值满足所述阈值之后,由于所述移动计算设备使用具有比所述第一通信协议更短的范围的第二通信协议从所述外围设备接收数据,由所述移动计算设备确定所述移动计算设备位于与所述外围设备的第三接近地带内,所述第三接近地带小于所述第二接近地带并且小于所述第一接近地带。该方法包括由所述移动计算设备响应于所述移动计算设备确定所述移动计算设备位于与所述外围设备的所述第三接近地带内而执行动作。

实施例2是根据实施例1所述的方法,其中,所述第一通信协议包括蓝牙低功耗传输,并且所述第二通信协议包括近场通信传输。

实施例3是实施例2所述的方法,其中,确定所述移动计算设备与所述外围设备之间的所述多个距离值不包括通过所述无线通信信道进行通信。

实施例4是实施例1至3中任一项所述的方法,其中,修改所述移动计算设备的所述显示以在视觉上指示所述移动计算设备在与所述外围设备的所述第二接近地带内包括,在所述移动计算设备在从所述外围设备接收到所述传输之后没有接收到用户输入的情况下,在所述移动计算设备的所述显示上呈现所述外围设备的所述类型的指示。

实施例5是实施例4所述的方法,其中,执行所述动作包括,在所述移动计算设备在从所述外围设备接收到所述传输之后没有接收到用户输入的情况下执行所述动作。

实施例6是实施例4所述的方法,其中,修改所述移动计算设备的所述显示以在视觉上指示所述移动计算设备在与所述外围设备的所述第二接近地带内包括呈现用户界面,所述用户界面使得用户输入能够修改被指定要响应于所述移动计算设备确定所述移动计算设备位于与所述外围设备的所述第三接近地带内而执行的所述动作。

实施例7是实施例1至6中任一项所述的方法,其中,修改所述移动计算设备的显示以在视觉上指示所述移动计算设备在与所述外围设备的第二接近地带内包括,呈现包括修改所述外围设备的功能的控件的用户界面,由所述移动计算设备从所述外围设备接收到的所述传输指定了所述功能,并且移动计算设备基于所述传输已经指定了与多个功能中的其他功能相区别的所述功能,而从可用于包括在所述用户界面中的多个控件中选择修改所述功能的控件以用于包括在用户界面中。

实施例8是实施例7所述的方法,还包括由所述移动计算设备接收与修改所述功能的所述控件交互的用户输入,以及由所述移动计算设备发送用于由所述外围设备接收的信号,所述信号指定对由与所述控件交互的所述用户输入指定的所述功能的所述修改,以使所述外围设备执行修改所述功能的操作。

实施例9是实施例8所述的方法,其中,所述功能包括改变所述外围设备的音量。

实施例10是实施例1至9中任一项所述的方法,其中,执行所述动作包括所述移动计算设备发送所述外围设备执行所述动作的请求。

实施例11是实施例1至10中任一项所述的方法,其中,外围设备是用于另一外围设备的代理外围设备,并且执行动作包括移动计算设备发送另一外围设备执行所述动作的请求。

实施例12是实施例1至11中任一项所述的方法,其中,第二通信协议包括近场通信协议,并且所述方法还包括响应于移动计算设备(i)使用所述第一通信协议从所述外围设备接收所述传输,或者(ii)确定所述第二距离值满足所述阈值,发起近场通信传输以由所述外围设备接收。

实施例13涉及一种计算系统,包括一个或多个处理器以及包括指令的一个或多个计算机可读设备,该指令在由一个或多个处理器执行时使得进行根据实施例1至12中任一项所述的方法的操作。

在某些情况下,特定实现方式可以实现一个或多个以下优点。移动计算设备可以使用低功率技术来监视无线通信信道以用于由外围设备潜在地广播的传输,使得对于功率更为密集的监视技术来说节省设备电池功率。移动计算设备可以用于立即与外围设备交互,而无需等待配对操作发生,并且无需从用户想要连接的外围设备列表中选择外围设备。可以在移动计算设备和外围设备之间执行交互,而无需在移动计算设备和外围设备之间建立任何类型的通信会话。在移动计算设备最初接近外围设备时,可以在设备之间共享数据,使得移动计算设备的用户在尝试控制外围设备时不会经历滞后。外围设备可以发送较少量的指定可用功能和相应设置值的数据,而不是提供大量数据来渲染定制设计的用户界面。接收数据的移动计算设备可以使用模板机制来使用支持由外围设备指定的功能的通用界面组件对界面进行渲染。

在附图和以下描述中阐述了一个或多个实现方式的细节。从说明书和附图以及从权利要求书中,其它特征、目的和优点将是显而易见的。

附图说明

图1是用于基于接近度来修改移动计算设备与外围设备之间的交互类型的示例系统的概念图。

图2示出了实现移动计算设备与外围设备之间的用户交互的示例用户界面,其中界面类型由移动计算设备基于其与外围设备的接近度来呈现。

图3A-C示出了用于基于接近度来修改移动计算设备与外围设备之间的交互类型的示例过程的图。

图4是可以用于实现本文档中描述的系统和方法的系统的概念图。

图5是可以用于实现本文档中描述的系统和方法的计算设备的框图,该计算设备可以是客户端或者一个或多个服务器。

在各个附图中相同的附图标记表示相同的元件。

具体实现方式

本文档一般地描述了基于移动计算设备与外围设备的接近度来修改移动计算设备与外围设备之间的交互类型。在一些示例中,移动计算设备可以识别外围设备在移动计算设备附近,并且作为响应,移动计算设备可以自动显示允许用户控制外围设备的一个或多个功能的用户界面。如果用户将移动计算设备更靠近外围设备并且将移动计算设备放置成与外围设备接触,则移动计算设备和/或外围设备可以执行默认动作。

通常,连接到外围设备并且与该设备交互典型地涉及要由移动计算设备的用户执行的许多动作,诸如打开和关闭各种天线、安装各种应用、签约各种服务、对设备进行配对、管理设备、配置设备等。这些动作通常需要用户对底层技术栈的显著理解。此外,可以与移动计算设备连接的外围设备的数量正在增加,外围设备制造商使用不同的技术来连接到移动计算设备并且与之通信。这种复杂性和不一致性可能减少移动设备用户的体验,并且可能由于各种(并且可能冲突的)应用、驱动和与各种外围设备通信所需的配置设置而导致移动设备的性能降低。本文档中描述的技术可以允许用户以更有效和直观的方式控制外围设备,并且可以改进设备性能。

本公开的下一个部分描述了在关于附图提供对移动计算设备与外围设备之间的示例交互的更详细描述之前的这些交互的高级概览。在该示例交互中,用户已登记入住酒店并且正在走到他的旅馆房间。旅馆房间包括定期广播标识其存在的数据的无线电外围设备。用户具有移动电话,但是该移动电话先前从未与无线电外围设备通信。移动电话的操作系统被配置为定期地收听多个预先指定的射频通信信道,以确定是否有任何外围设备正在通过这些信道广播它们的存在。在该示例中,无线电设备使用蓝牙低功耗(BLE)通信协议广播其存在,并且移动电话使用BLE通信协议收听广播。

当用户走进他的旅馆房间时,他的移动电话检测到来自无线电设备的传输。该传输包括将外围设备标识为无线电设备的信息,并且潜在地包括其他信息,例如允许移动电话控制的功能。响应于移动电话接收到该传输,移动电话开始确定移动电话与无线电外围设备之间的距离确定过程。距离确定过程可以涉及对在一个或多个射频信道上发送的通信执行飞行时间分析技术,所述一个或多个射频信道不同于无线电设备广播其存在的初始射频信道。移动电话可以通过在相同的射频信道上发回响应来响应来自无线电设备的初始广播,该响应包括指定距离确定过程和相关通信将开始的数据(例如,请求无线电设备在一个或多个不同的射频信道上传送或收听传输)。

当移动电话检测到无线电设备的存在并且开始其距离确定过程时,移动电话可以被称为处于无线电设备的第一接近地带中。当在第一接近地带时,移动电话可以不向用户提供移动电话已经检测到无线电设备的存在的指示。在其他示例中,移动电话可以指示其已经检测到无线电设备(例如,通过显示形状像无线电设备的通知图标和/或提供听觉通知),但是,在第一地带中时用户可能不能够控制无线电设备的功能。

移动电话可以定期地分析距离确定过程的结果,以确定电话是否已经在与无线电设备的较小的第二接近地带(例如,到无线电设备的大致臂长)相关联的无线电设备的阈值距离内移动。在确定电话在无线电设备的阈值距离内时,移动电话可以开始执行与第二接近地带相关联的操作。在一些示例中,移动电话显示无线电设备的指示(例如,利用状态栏通知或弹出通知)。在一些示例中,移动电话显示用户界面,该用户界面包括用于修改无线电设备的相应功能的控件的选择集合。例如,一旦移动电话确定其在无线电设备的阈值距离内,(i)用户界面可以自动地出现在移动电话的显示上,或者(ii)指示无线电设备的存在并且可被选择以使得呈现用户界面的图标可以自动地出现在移动电话的显示上。

外围设备可以不是用户(或他的移动电话)先前遇到的外围设备,并且本文描述的技术可以使得用户能够使用他的移动电话立即与外围设备交互,而无需等待配对操作发生,并且无需从用户想要连接的外围设备的列表中选择外围设备。相反,仅仅接近外围设备就可以提示控件出现在用户的移动电话的显示上。实际上,可以在不在移动电话和外围设备之间建立任何类型的通信会话的情况下执行本文描述的交互。例如,外围设备的传输可以被广播到外围设备附近的任何移动设备,并且传输可以指示外围设备的类型和经由上述用户界面可控制的一个或多个功能的类型。

例如,无线电外围设备可能已经传送指示其音量和开/关功能由移动电话经由上述用户界面可控制的数据。标识这些功能的数据可以由无线电设备在其初始广播中传送,该初始广播向其附近的任何移动计算设备通告存在,或者可以响应于移动电话接收到广播并且向无线电设备发送提示无线电设备发送数据的响应通信,由无线电设备将数据发送到移动电话。

继续上述示例,一旦用户走进无线电设备的几英尺内,他的移动电话就开始显示用户界面,该用户界面包括用于改变无线电设备的音量和打开或关闭无线电设备的控件。用户想要打开无线电设备并且增大音量,因此与在他的电话上呈现的控件交互以执行这些功能。作为响应,移动电话发送请求无线电设备执行这些功能的传输。在一些示例中,移动电话发送诸如广播的请求,而不用无线电设备执行握手过程或建立连接间隔的另一类型的过程。

存在其中移动电话和无线电设备接触或足够接近以致它们几乎接触的第三接近地带。当移动电话被放置在该第三接近地带时,在移动电话或无线电设备或两者上触发默认动作。例如,只要移动电话处于第一接近地带或第二接近地带内,移动电话就可以开始重复地发送NFC信号,并且无线电设备可以包括NFC标签,当移动电话足够靠近NFC标签(例如,10cm)时,NFC标签生成响应射频传输。移动电话可以检测响应传输,并且自己执行默认动作,或者请求无线电设备执行默认动作,或者两者。例如,移动电话可以自动地与无线电设备配对,并且用户请求在移动电话上播放的音乐或其他音频可以由无线电设备输出。

如本公开的其余部分所解释的,移动计算设备与一个或多个外围设备之间的许多不同类型的交互是可能的。许多交互涉及移动计算设备快速控制外围设备的能力,其中无线通信的类型和用户界面功能基于接近地带而改变。

现在参考图1,该图示出了用于基于接近度来修改移动计算设备102与外围设备104之间的交互类型的示例系统100的概念图。移动计算设备102在图1中被示为例如触摸屏智能电话,但是移动计算设备102可以是另一类型的计算设备,诸如智能手表、平板电脑、个人数字助理或另一合适类型的计算设备。外围设备104在图1中被示为例如闹钟,但外围设备104可以是另一合适类型的设备,诸如无线电设备、电视、相机、打印机、恒温器、电器、机器人、车辆、固定或移动计算设备等等。如在本申请中所使用的,术语“外围设备”是指可以与移动计算设备通信并且可以基于从移动计算设备接收到的数据执行一个或多个操作的任何种类的设备,即,本文中提到的“外围设备”可以包括通信和计算能力,并且可以包括但扩展到比通常与该术语相关联的设备更广泛的设备。

图1示出了与外围设备104接近的各个地带,包括例如第一接近地带110、第二接近地带120和第三接近地带130。在本示例中,接近地带110、120和130表示外围设备104周围的一系列相应更小的地带,其中第一接近地带110包含第二接近地带120,并且第二接近地带120包含第三接近地带130。换句话说,第二地带和第三地带完全嵌套在第一地带内,并且第三地带完全嵌套在第一地带和第二地带内。例如,第一接近地带110可以表示外围设备104的通信范围。例如,当移动计算设备102(这里示为设备102a)在第一接近地带110内时,设备102a的用户通常能够在视觉上定位外围设备104。第二接近地带120例如可以表示外围设备104的潜在物理接触范围。例如,当移动计算设备102(这里示为设备102b)在第二接近地带120内时,设备102b的用户可以在外围设备104的物理范围内(例如,在手臂的触及范围内),使得用户可以在他这样选择的情况下物理地接触设备104。第三接近地带130例如可以表示外围设备104的实际物理接触范围(或接近物理接触,诸如在几英寸或厘米内)。例如,当移动计算设备102(这里示为设备102c)在第三接近地带130内时,设备102c的用户通常可以引起设备102c与外围设备104之间的物理接触(或接近物理接触),诸如通过将设备102c触摸到设备104,或将设备102c悬停在外围设备104上方(例如,在外围设备104的几厘米内)。

通常,接近地带110、120和130中的每一个可以与移动计算设备102和外围设备104之间的不同交互类型相关联,和/或当移动计算设备102位于地带中时,可以由移动计算设备102呈现不同的用户界面。例如,当移动计算设备102(这里示为设备102a)进入第一接近地带110时,设备102a可以从外围设备104接收通信,可以确定设备104是设备102a可以与之交互的设备类型,并且可以呈现界面200a(图2中所示)。例如,当移动计算设备102(这里示为设备102b)进入第二接近地带120时,设备102b可以呈现不同的界面200b(图2中所示),设备102b的用户可以通过该界面配置外围设备104。例如,当移动计算设备102(这里示为设备102c)进入第三接近地带130时,设备102(这里示为设备102c)可以执行关于外围设备104的默认动作和/或可以呈现确认外围设备104的更新的不同界面200c(图2中所示)。

在一些实现方式中,移动计算设备可以与代理外围设备通信,而不是直接与外围设备通信。例如,外围设备104可以对于移动计算设备102的用户在物理上不可访问(例如,外围设备104可以是隐藏网络路由器,可以是举高的电视,或者可以是另一物理上不可访问的设备)。代理外围设备106例如可以是物理上可访问的对象(例如,路由器信标、电视遥控器或另一种类的代理设备),其可以与外围设备104配对并且代替(或替代)直接处理这种通信的外围设备104直接处理与移动计算设备的通信。在本示例中,代理外围设备106可以具有其自己的一个或多个代理接近地带140(例如,包括其自己的第一、第二和第三接近地带)。例如,代理外围设备106可以与外围设备104和移动计算设备102两者通信,而不是移动计算设备102直接与外围设备104通信。通常,代理外围设备106可以位于外围设备104的第一接近地带110内或第二接近地带120内。

现在参考图3A-C,示出了用于基于接近度来修改移动计算设备与外围设备之间的交互类型的示例过程的图。用于修改交互类型的操作可以由例如系统100(图1中所示)执行,并且可以包括呈现一个或多个用户界面,诸如用户界面200a、200b和/或200c(图2中所示)。然而,操作也可以由不同的系统执行和/或可以包括呈现不同种类的用户界面(或没有用户界面)。

在框302处,移动计算设备监视无线通信信道。例如,移动计算设备102(在图1中被示为设备102a)可以监视无线通信信道,该无线通信信道可以被各种不同的外围设备用于广播可以由移动计算设备接收到的传输。移动计算设备102例如可以运行操作系统,该操作系统包括收听由外围设备所广播的传输的收听者应用,并且包括指定由外围设备所传送的数据的格式的应用编程接口(API)。外围设备提供者(例如,制造商和/或软件开发者)可以选择配置其外围设备以根据API使用无线通信信道来广播传输,例如,使得各种不同的移动计算设备(例如,移动计算设备102)可以解析和使用包括在传输中的数据,而不必将移动计算设备与外围设备配对。一般而言,收听者应用可以使用低功率技术来监视无线通信信道。例如,移动计算设备102可以周期性地(例如,每分钟一次、每分钟两次、每分钟四次、每分钟十次、每分钟二十次、或以另一合适的间隔)针对来自外围设备的传输监视无线通信信道,使得设备电池功率被节省。

在框304处,外围设备使用第一通信协议通过无线通信信道发送传输。例如,外围设备104可以广播包括根据移动计算设备102的API被格式化的数据的传输。该传输可以标识外围设备的类型。例如,由外围设备104广播的传输可以包括将设备104标识为设备的特定类型(例如,对应于设备类型(诸如设备的一般类别)的数据值)、设备类型的特定型号(例如,型号标识符)和/或特定设备(例如,序列号)的一个或多个数据值。在本示例中,由外围设备104广播的传输将设备标识为闹钟。外围设备可以定期地发送这样的传输,并且可以不将这样的传输寻址到任何特定设备(例如,使得传输被认为是向收听这样广播的任何设备进行“广播”)。

在框306处,传输可以可选地包括指定外围设备的一个或多个功能的数据。例如,由外围设备104所广播的传输可以包括一个或多个数据值,该一个或多个数据值指定可以由移动计算设备102触发和/或修改的设备104的功能和/或设置。在本示例中,移动计算设备102(例如,闹钟)可以广播指定其音量可以被修改、其时钟时间可以被设置、其提醒时间可以被设置、并且提醒可以被开启或关闭的数据。

在一些实现方式中,第一通信协议可以包括蓝牙低功耗(BLE)通信协议。例如,外围设备104可以使用BLE通信协议与设备104的通信范围内的一个或多个移动计算设备异步通信。异步通信可以使用数据发布模型来完成,其中外围设备104例如不具体地与移动计算设备102配对,而是广播可以由移动计算设备102读取的数据。在一些实现方式中,第一通信协议可以包括用于异步广播数据的另一技术,诸如使用Wi-Fi信号、红外信号、高频声音或其他合适的技术。

在框308处,移动计算设备使用第一通信协议通过无线通信信道接收传输。例如,移动计算设备102(在图1中被示为设备102a)可以接收由外围设备104所广播的一个或多个传输,同时周期性地监视这样的传输。

在框310处,移动计算设备可以基于接收到传输来确定移动计算设备位于与外围设备的第一接近地带内。例如,移动计算设备102(在图1中被示为设备102a)可以确定其位于与外围设备104的第一接近地带110内。第一接近地带110例如可以对应于移动计算设备102可以接收由外围设备104所广播的数据的通信范围。移动计算设备102确定其在第一接近地带110内可以涉及移动计算设备102响应于接收到传输而采取动作,并且当在特定“地带”内时不一定要求移动计算设备102执行针对性能而被特别标记的操作。

在一些实现方式中,移动计算设备可以响应于确定移动计算设备位于与外围设备的第一接近地带内,修改移动计算设备的显示以可视地指示移动计算设备接近外围设备。例如,移动计算设备102a可以修改其显示以呈现界面200a(图2中所示),这可以包括指示附近已经检测到可配置的外围设备(例如,外围设备104)的通知210,连同与由设备104所广播的一个或多个数据值相对应的信息(例如,设备类型、型号标识符、序列号和/或其他标识信息)。例如,移动计算设备102a可以呈现由外围设备104所广播的标识信息,和/或可以使用标识信息来引用由移动计算设备102a本地存储的或从云上的服务器可用的关于设备104的附加信息。在本示例中,移动计算设备102a基于由设备104所广播的信息(例如,设备型号信息)来选择合适的图像以表示外围设备104,并且将所选择的图像包括在通知210中。基于通知210,例如,移动计算设备102a的用户可以标识外围设备104,并且可以朝向设备104移动以建立与设备104的进一步通信(并且潜在地配置)。

在一些实现方式中,响应于确定移动计算设备位于与外围设备的第一接近地带内,移动计算设备可以不修改移动计算设备的显示以在视觉上指示移动计算设备接近外围设备。例如,当移动计算设备102接近多个不同的外围设备时,和/或当移动计算设备102频繁地进入与这样的设备的第一接近地带时,外围设备检测的通知可以被设备102抑制,使得设备102的用户不会被呈现有太多(或太频繁)的通知。

在框312处,响应于移动计算设备从外围设备接收到传输,移动计算设备可以建立重复地进行以下操作的距离确定过程:(i)确定所述移动计算设备与所述外围设备之间的距离值,以及(ii)确定所述距离值是否满足指示所述移动计算设备位于与所述外围设备的第二接近地带内的阈值。例如,当移动计算设备102(在图1中示为设备102a)在第一接近地带110中(例如,基于使用第一通信协议的无线通信信道在外围设备104的通信范围内)时,移动计算设备102可以执行距离确定过程以确定设备102何时进入第二接近地带120。第二接近地带120例如可以对应于与外围设备104的阈值距离,在该阈值距离处,移动计算设备102(在图1中被示为设备102b)的用户可能潜在地引起设备之间的物理接触,诸如三英尺、四英尺、五英尺或另一合适值的距离。

在一些实现方式中,重复地确定移动计算设备与外围设备之间的距离可以不包括通过无线通信信道进行通信。例如,移动计算设备102可以使用与使用第一通信协议通过无线通信信道进行通信不同的技术来确定距离,诸如测量通信信号强度(例如,蓝牙信号强度、Wi-Fi信号强度、超声强度或另一类型的通信信号)、针对一个或多个接收到的信号执行飞行时间分析技术、或执行另一合适的技术中的一个或多个。通常,可以以比监视用于从外围设备进行传输的无线通信信道的速率更频繁地的速率,来执行当移动计算设备102(在图1中示为设备102a)在第一接近地带110内时所执行的距离确定过程。例如,移动计算设备102可以以给定速率(例如,每分钟一次、每分钟两次、每分钟四次、或以另一合适的间隔)监视用于从外围设备进行传输的无线通信信道(使用第一通信协议),并且当移动计算设备102(在图1中被示为设备102a)进入第一接近地带110时,设备102a可以以更频繁的速率(例如,每秒一次、每秒两次、每隔一秒、或以另一合适的间隔)执行距离确定过程。

在框314处,建立距离确定过程可以可选地包括移动计算设备使用第一通信协议通过同一无线通信信道发送对来自外围设备的传输的响应,并且外围设备接收该响应作为距离确定过程要开始的通知。例如,移动计算设备102a可以通知外围设备104距离确定过程将开始,并且作为响应,外围设备104可以在一个或多个不同的射频信道(例如,蓝牙、Wi-Fi或另一合适的通信信道)上传送或收听传输,作为执行距离确定过程的一部分。

在一些实现方式中,可以使用套接字在不同射频信道上的移动计算设备和外围设备之间建立通信信道。通常,使用套接字建立通信信道可能花费时间。例如,通过在移动计算设备102进入第一接近地带110时发起用于建立与外围设备104的通信信道的过程,可以在设备102进入第二接近地带120时建立信道,使得设备102的用户在使用设备102来控制外围设备104时不会经历滞后(例如,在设备102确定其在第二接近地带内时,用户界面200b立即可呈现)。例如,当在移动计算设备102和外围设备104之间发生复杂通信时,和/或当要在设备之间传达大量数据时,使用套接字建立通信信道可能是有益的。

在一些实现方式中,可以不使用套接字在不同射频上的移动计算设备与外围设备之间建立通信信道。例如,移动计算设备102和外围设备104可以通过广播可以由其他设备接收到的数据来各自继续异步地通信。例如,当在移动计算设备102和外围设备104之间发生简单通信时,和/或当要在设备之间传达少量数据时,不使用套接字来建立通信信道可能是有益的。

在框316处,在移动计算设备已经确定距离值不满足阈值之后,移动计算设备可以确定距离值满足阈值。例如,当移动计算设备102(在图1中示为设备102a)在第一接近地带110内但是还没有进入第二接近地带120时,移动计算设备102可以重复地确定与其到外围设备104的距离相对应的距离值,并且可以基于该距离值不满足阈值来确定设备102还没有进入第二接近地带120。例如,当移动计算设备102(在图1中示为设备102b)进入第二接近地带120时,设备102可以基于其距离值满足该地带的对应距离阈值(例如,三英尺、四英尺、五英尺、或可以基于信号强度所确定的另一适当值)来确定其现在处于第二接近地带120内。

在框318处,响应于确定距离值满足阈值,移动计算设备可以可选地向外围计算设备发送距离值满足阈值的通知。例如,当移动计算设备102(在图1中示为设备102b)进入第二接近地带120时,设备102b可以使用第一通信协议通过无线通信信道将通知广播到外围计算设备104,或者可以使用已经在设备之间建立的不同通信信道将通知发送到外围计算设备104。外围设备104可以接收距离值满足阈值的通知,并且作为响应,可以发送指定与外围设备104有关的数据的传输(例如,使用第一通信协议通过无线通信信道广播传输,或者通过使用已经在设备之间建立的不同通信信道发送传输),该传输可以由移动计算设备102b接收。例如,与外围设备104相关的数据可以包括指定可以由移动计算设备102b触发和/或修改的设备104的功能和/或设置的一个或多个数据值,和/或可以包括用于在将由设备102b呈现的界面中呈现这样的数据值的指令。

在一些实现方式中,与外围设备相关并且被提供给移动计算设备的数据可以由外围设备基于移动计算设备的一个或多个方面来针对移动计算设备进行适配。例如,外围设备104可以从移动计算设备102接收与可能潜在地与外围设备104相关的设备102的各方面相对应的一个或多个数据值以及距离值满足阈值的通知,并且外围设备104可以基于来自设备102的一个或多个数据值来修改要由设备102在界面中呈现的数据。在本示例中,来自移动计算设备102的数据值可以包括指定与外围设备104潜在地相关的设备102的特定方面(例如,在设备102上设置提醒)的数据值。外围设备104例如可以接收指定移动计算设备102的特定方面的数据值,并且作为响应,可以向设备102提供数据,该数据使得设备102呈现包括与设备102的特定方面相对应的选项的界面(例如,向外围设备104发送提醒)。例如,如果来自移动计算设备102的数据值没有包括指定在设备102上设置提醒的数据值,则外围设备104可以不向设备102提供使设备102呈现包括向外围设备104发送提醒的选项的界面的数据。

在框320处,响应于确定距离值满足阈值,移动计算设备可以可选地向云发送对与外围设备相关的数据的请求,并且可以作为响应接收外围设备数据。例如,移动计算设备102可以向云服务提供外围设备104的标识符,云服务进而提供与外围设备104有关的一般信息(例如,一个或多个图像、描述等),和/或提供可以由移动计算设备102用于渲染用于配置外围设备104的界面的数据。

在框322处,响应于确定距离值满足阈值,移动计算设备可以修改移动计算设备的显示以在视觉上指示移动计算设备接近外围设备。例如,当移动计算设备102(在图1中示为设备102b)进入第二接近地带120时,设备102b可以修改其显示以可视地指示设备102b接近外围设备104(例如,在三英尺、四英尺、五英尺或另一合适的距离内)。在本示例中,移动计算设备102b可以通过呈现界面200b(图2中所示)来可视地指示设备102b接近外围设备104。在一些示例中,移动计算设备102b可以在移动计算设备102b确定其在第二接近地带120内时呈现与用户界面200a中示出的通知210类似的通知,并且在用户选择通知210之后,移动计算设备102b可以呈现用于呈现附加控件的用户界面200b。在这样的示例中,移动计算设备102b可以或可以不在移动计算设备102b处于第一接近地带110中时预先呈现通知210。

在框324处,修改移动计算设备的显示以在视觉上指示移动计算设备接近外围设备可以可选地包括在移动计算设备的显示上呈现外围设备的类型的指示,而移动计算设备在从外围设备接收到传输之后不接收用户输入。例如,在从外围设备104接收到传输之后,无需接收用户输入,移动计算设备102b可以呈现界面200b(图2中所示)。在本示例中,界面200b包括视觉指示220,其包括外围设备104的图像、设备描述(例如,包括设备类型、型号标识符和/或序列号)以及指示设备是可配置的消息。

在框326处,修改移动计算设备的显示以在视觉上指示移动计算设备接近外围设备可以可选地包括呈现包括修改外围设备的功能的控件的用户界面。例如,移动计算设备102b可以呈现界面200b(图2中所示)。在本示例中,界面200b包括用于修改外围设备104(例如,闹钟)的各种功能的各种控件230,包括用于修改设备104的音量设置的控件、用于修改设备104的时钟时间设置的控件、用于修改设备104的提醒时间设置的控件、以及用于将设备104上的提醒设置切换为打开或关闭的控件。

在一些实现方式中,移动计算设备可以基于传输已经指定了功能,从可用于包括在用户界面中的多个控件中选择一个或多个控件以修改用于包括在用户界面中的外围设备的功能。例如,移动计算设备102b可以基于接收到的传输来选择界面200b中的控件230以修改外围设备104的功能。通常,支持用于与外围设备通信并控制外围设备的API的移动计算设备可以包括用于渲染用户界面的模板机制。例如,可能存在具有潜在的许多不同功能的大范围的外围设备。例如,外围设备可以发送指定可用功能和对应设置值的最小数据,而不是提供大量数据来渲染用于配置外围设备的定制设计的用户界面,并且接收数据的移动计算设备(例如,控制器设备)可以使用支持可用功能的公共组件(例如,控件)来使用模板机制对用户界面进行渲染。

在本示例中,从外围设备104到移动计算设备102的传输(例如,在移动计算设备102a已经进入第一接近地带110但是还没有进入第二接近地带120之后由移动计算设备102a接收到的传输)可以包括指定外围设备104支持音量功能、时钟时间功能、提醒时间功能和提醒切换功能的数据。使用模板机制,例如,移动计算设备102b可以选择适当的对应控件230来修改外围设备104的指定功能以包括在用户界面200b中,并且可以用从外围设备104接收到的当前数据值来填充控件230。

在框328处,修改移动计算设备的显示以可视地指示移动计算设备接近外围设备可以可选地包括呈现用户界面,该用户界面使得用户输入能够修改指定要响应于移动计算设备确定移动计算设备位于与外围设备的第三接近地带内而执行的动作。例如,移动计算设备102b可以呈现用户界面200b,该用户界面能够通过控件230使得用户输入响应于设备102(在图1中被示为设备102c)确定设备102c位于与外围设备104的第三接近地带130内而修改指定要执行的动作。该动作例如可以包括使用通过用户界面200b指定的值来修改外围设备104的一个或多个功能。作为另一示例,动作可以包括执行可以由外围设备指定的默认动作,诸如将移动计算设备102上设置的提醒应用于外围设备104,或者执行另一适当的动作。在本示例中,用户界面200B包括消息240(例如,“在设备上轻敲电话以更新设备”),其向移动计算设备102b的用户通知要执行的默认动作。

在框330处,移动计算设备可选地接收与修改外围设备的功能的控件交互的用户输入。例如,移动计算设备102(在图1中被示为设备102b)可以接收通过用户界面200b的控件230提供的用户输入。在本示例中,用户可以操纵控件230以指示外围设备104(例如,闹钟)的音量要被改变、设备104的时钟时间要被改变、设备的提醒时间要被改变、和/或提醒要在设备上被设置。

在框332处,移动计算设备可选地发送信号以供外围设备接收,该信号指定对由与控件交互的用户输入指定的功能的修改。例如,移动计算设备102(在图1中示为设备102b)可以发送信号以供外围设备104接收,该信号指定对由用户输入通过一个或多个控件230指定的功能的一个或多个修改。信号可以由移动计算设备102b例如使用第一通信协议通过无线通信信道发送信号来发送,或者可以使用已经在设备之间建立的不同通信信道来发送。在本示例中,移动计算设备102b可以发送信号以供外围设备104接收,而设备102b不进入第三接近地带130。

在框334处,外围设备可选地接收信号并且修改功能。例如,外围设备104可以接收信号,并且基于通过一个或多个控件230提供的用户输入来修改设备104的一个或多个功能。在本示例中,外围设备104(例如,闹钟)可以改变其音量、改变其时钟时间、改变其提醒时间、和/或可以设置提醒。

在框336处,外围设备可以使用第二通信协议发送数据,所述第二通信协议具有比第一通信协议更短的范围。例如,在移动计算设备102(在图1中被示为设备102b)进入第二接近地带120之后(例如,当设备102b在潜在的物理接触范围内时,基于距离确定过程),外围设备104可以开始使用第二通信协议(例如,响应于从移动计算设备102b接收到距离值满足阈值的通知)发送数据。在一些实现方式中,第二通信协议可以包括近场通信(NFC)协议。例如,外围设备104可以在移动计算设备102(在图1中示为设备102c)进入第三接近地带130时生成促进NFC对等通信的射频(RF)场,和/或可以对包括在移动计算设备102c中的无源NFC设备供电。

在一些实现方式中,移动计算设备可以响应于移动计算设备(i)使用第一通信协议从外围设备接收传输,或者(ii)确定距离值满足阈值,发起NFC传输以供外围设备接收。例如,当移动计算设备102(在图1中示为设备102a)进入第一接近地带110时,设备102a可以响应于使用第一通信协议从外围设备接收到NFC传输,发起NFC传输以供外围设备104接收。作为另一示例,当移动计算设备102(在图1中示为设备102b)进入第二接近地带120时,设备102b可以响应于基于距离确定过程确定设备102b在外围设备104的潜在物理接触范围内而发起NFC传输以供外围设备104接收。

在框338处,在移动计算设备已经确定距离值满足阈值之后,并且由于移动计算设备使用第二通信协议从外围设备接收数据,移动计算设备可以确定移动计算设备位于与外围设备的第三接近地带内。如图1所示,例如,第三接近地带130可以小于第二接近地带120,并且可以小于第一接近地带110。在移动计算设备102(在图1中示为设备102b)确定设备102b在外围设备104的潜在物理接触范围内之后(例如,基于距离确定过程),并且由于移动计算设备102(在图1中示为设备102c)使用第二通信协议(例如,NFC通信)从外围设备104接收数据,移动计算设备102c可以确定设备102c在与外围设备104的第三接近地带130内。

在一些实现方式中,确定移动计算设备在与外围设备的第三接近地带内可以包括确定移动计算设备接近外围设备,而没有物理地接触外围设备。例如,当移动计算设备102(在图1中被示为设备102c)在使用第二通信协议的外围设备104的通信范围内(例如,几英寸或几厘米的NFC通信范围)但没有物理地接触外围设备104时,移动计算设备102c可以从外围设备104(例如,使用NFC通信)接收数据。在一些实现方式中,移动计算设备102可以使用先前讨论的用于确定移动计算设备102是否在第二接近地带120内的距离确定技术,但是基于确定移动计算设备102在比用于确定在第二接近地带120内的存在的阈值距离更近的阈值距离内的距离确定技术,来确定移动计算设备102在第三接近地带130内。

在一些实现方式中,确定移动计算设备在与外围设备的第三接近地带内可以包括确定移动计算设备物理地接触外围设备。例如,当移动计算设备102(在图1中示为设备102c)在使用第二通信协议的外围设备104的通信范围内(例如,几英寸或几厘米的NFC通信范围)时,移动计算设备102c和/或外围设备104可以使用运动传感器来确定设备之间何时发生物理接触。

在框340处,移动计算设备可以响应于确定移动计算设备位于与外围设备的第三接近地带内而执行动作。例如,移动计算设备102(在图1中被示为设备102c)可以确定其位于与外围设备104的第三接近地带130内,并且可以响应于该确定而执行一个或多个动作(例如,广播要由一个或多个设备接收到的数据、向特定外围设备传送数据、向云服务器发送数据和/或从云服务器接收数据、更新本地设置、执行应用或另一适当动作)。

在一些实现方式中,执行动作可以包括在移动计算设备在从外围设备接收到传输之后没有接收到用户输入(排除作为用户输入的形式的移动计算设备的物理移动)的情况下执行动作。例如,在移动计算设备102(在图1中示为设备102a)基于使用第一通信协议通过无线通信信道从外围设备104接收到传输而确定其已经进入第一接近地带110之后,移动计算设备102可以继续朝向外围设备104移动通过第二接近地带120,并且进入第三接近地带130,而无需接收用户输入。例如,当移动计算设备102(在图1中示为设备102c)进入第三接近地带130(例如,通过悬停在外围设备104上和/或物理地接触设备104)时,移动计算设备102c可以关于外围设备104执行默认动作(例如,当设备102在第二接近地带120时,在由界面200b呈现的消息240中描述的动作)。在本示例中,移动计算设备102c可以在设备102c没有接收到用户输入的情况下,利用移动计算设备102c的时间和/或提醒设置来更新外围设备104。在更新外围设备104之后,例如,移动计算设备102c可以提供确认外围设备104的更新的界面200c,包括消息250,其可以包括与更新相关的状态通知(例如,“设备更新!”)和/或外围设备104的设置的一个或多个更新值(例如,时间:下午11:03;提醒:上午7:00)。

在一些实现方式中,执行动作可以包括移动计算设备发送外围设备执行动作的请求。例如,移动计算设备102(在图1中被示为设备102c)可以向外围设备104发送设备104执行动作(例如,使用通过用户界面200b指定的值,或执行默认动作)的请求。发送请求例如可以包括移动计算设备102c使用第一通信协议通过无线通信信道发送信号。作为另一示例,发送请求可以包括移动计算设备102c使用已经在设备102和外围设备104之间建立的不同通信信道。作为另一示例,发送请求可以包括移动计算设备102c使用具有比第一通信协议更短的范围的第二通信协议。

在一些实现方式中,外围设备可以是用于另一外围设备的代理外围设备,并且执行动作可以包括移动计算设备发送另一外围设备执行动作的请求。例如,移动计算设备102可以进入用于外围设备104的代理外围设备106的代理接近地带140,并且作为响应,移动计算设备102可以发送外围设备104执行动作的请求。例如,该请求可以由移动计算设备102直接发送到外围设备104,或者可以由移动计算设备102发送到代理外围设备106,以便由代理外围设备106转发到外围设备104。

当移动计算设备102在第二或第三接近地带时,移动计算设备102可以继续执行距离确定过程,以标识移动计算设备102何时已经离开第二和/或第三接近地带并且仅落入第一接近地带。类似地,移动计算设备102可以执行动作以确定其何时离开第一接近地带(例如,由于移动计算设备102不再从外围设备接收广播),并且可以相应地更新其用户界面和操作以对应于贯穿本文所讨论的那些用户界面和操作。

现在参考图4,示出了可以用于实现本文档中描述的系统和方法的系统的概念图。在该系统中,移动计算设备410可以与基站440无线通信,基站440可以通过网络450向移动计算设备提供对多个托管服务460的无线访问。

在该图示中,移动计算设备410被描绘为手持移动电话(例如,智能电话或应用电话),其包括用于向移动计算设备410的用户呈现内容并接收基于触摸的用户输入和/或存在敏感的用户输入(例如,如使用安装在移动计算设备510中的雷达检测器在计算设备的表面上检测到)的触摸屏显示器设备412。还可以提供其他视觉、触觉和听觉输出组件(例如,LED灯、用于触觉输出的振动机构、或用于提供音调、语音生成或记录输出的扬声器),各种不同的输入组件(例如,键盘414、物理按钮、轨迹球、加速计、陀螺仪和磁力计)也可以如此。

显示器设备412形式的示例视觉输出机构可以采取具有电阻或电容触摸能力的显示器的形式。显示器设备可以用于显示视频、图形、图像和文本,并且用于协调用户触摸输入位置与所显示的信息的位置,使得设备410可以将在所显示的项目位置处的用户接触与该项目相关联。移动计算设备410还可以采用替代形式,包括膝上型计算机、平板或平板计算机、个人数字助理、嵌入式系统(例如,汽车导航系统)、台式个人计算机或计算机化工作站。

用于接收用户输入的示例机制包括键盘414,其可以是全QWERTY键盘或包括用于数字“0-9”、“*”和“#”的键的传统小键盘。当用户物理地接触或按压键盘键时,键盘414接收输入。用户操纵轨迹球416或与轨迹板的交互使得用户能够向移动计算设备410提供移动方向和速率信息(例如,操纵光标在显示器设备412上的位置)。

移动计算设备410能够确定与触摸屏显示器设备412的物理接触的位置(例如,手指或手写笔的接触位置)。使用触摸屏412,可以产生各种“虚拟”输入机制,其中用户通过接触在触摸屏412上描绘的图形用户界面元素来与图形用户界面元素交互。“虚拟”输入机制的示例是“软件键盘”,其中键盘被显示在触摸屏上,并且用户通过按压触摸屏412的与每个键相对应的区域来选择键。

移动计算设备410可以包括机械或触敏按钮418a-d。另外,移动计算设备可以包括用于调整由一个或多个扬声器420输出的音量的按钮,以及用于打开或关闭移动计算设备的按钮。麦克风422允许移动计算设备410将可听声音转换成电信号,该电信号可以被数字编码并存储在计算机可读存储器中,或者被传送到另一计算设备。移动计算设备410还可以包括数字罗盘、加速度计、接近度传感器和环境光传感器。

操作系统可以提供移动计算设备的硬件(例如,输入/输出机构和执行从计算机可读介质检索的指令的处理器)与软件之间的接口。示例操作系统包括ANDROID、CHROME、IOS、MAC OS X、WINDOWS 7、WINDOWS PHONE 7、SYMBIAN、BLACKBERRY、WEBOS、各种UNIX操作系统;或用于计算机化设备的专有操作系统。操作系统可以提供用于执行应用程序的平台,该应用程序促进计算设备和用户之间的交互。

移动计算设备410可以利用触摸屏412呈现图形用户界面。图形用户界面是一个或多个图形界面元素的集合,并且可以是静态的(例如,显示器在一段时间内看上去保持相同),或者可以是动态的(例如,图形用户界面包括在没有用户输入的情况下动画化的图形界面元素)。

图形界面元素可以是文本、线、形状、图像或其组合。例如,图形界面元素可以是显示在桌面上的图标和该图标的相关联文本。在一些示例中,图形界面元素利用用户输入是可选择的。例如,用户可以通过按压触摸屏的与图形界面元素的显示相对应的区域来选择图形界面元素。在一些示例中,用户可以操纵跟踪球以将单个图形界面元素突出显示为具有焦点。图形界面元素的用户选择可以调用移动计算设备的预定义动作。在一些示例中,可选择的图形界面元素进一步或替代地对应于键盘404上的按钮。用户选择按钮可以调用预定义动作。

在一些示例中,操作系统提供“桌面”图形用户界面,该“桌面”图形用户界面在打开移动计算设备410之后、在从睡眠状态激活移动计算设备410之后、在“解锁”移动计算设备410之后、或者在接收到“home(主键)”按钮418c的用户选择之后被显示。桌面图形用户界面可以显示若干图形界面元素,当选择这些图形界面元素时,调用对应的应用程序。被调用的应用程序可以呈现图形界面,该图形界面替换桌面图形用户界面,直到应用程序终止或被隐藏不可见为止。

用户输入可以影响移动计算设备410操作的执行序列。例如,单动作用户输入(例如,触摸屏的单击、在触摸屏上轻扫、与按钮的接触、或同时发生的这些组合)可以调用改变用户界面的显示的操作。在没有用户输入的情况下,用户界面可能在特定时间没有改变。例如,利用触摸屏412的多点触摸用户输入可以调用地图应用来“放大”位置,即使地图绘制应用可能已经默认地在几秒之后放大。

桌面图形界面还可以显示“窗口小部件”。窗口小部件是与正在执行的应用程序相关联的并且在桌面上显示由正在执行的应用程序控制的内容的一个或多个图形界面元素。窗口小部件的应用程序可在移动设备开启时启动。此外,窗口小部件可能不对全显示进行聚焦。相反,窗口小部件可以仅“拥有”桌面的一小部分,从而在桌面的该部分内显示内容并接收触摸屏用户输入。

移动计算设备410可以包括一个或多个位置标识机制。位置标识机制可以包括向操作系统和应用程序提供移动设备的地理位置的估计的硬件和软件的集合。位置标识机制可以采用基于卫星的定位技术、基站发射天线标识、多基站三角测量、互联网接入点IP位置确定、基于搜索引擎查询的用户位置的推断标识、以及用户提供的位置标识(例如,通过接收用户对位置的“签到”)。

移动计算设备410可以包括其他应用、计算子系统和硬件。呼叫处理单元可以接收呼入电话呼叫的指示,并且向用户提供应答呼入电话呼叫的能力。媒体播放器可以允许用户收听音乐或播放存储在移动计算设备410的本地存储器中的电影。移动设备410可以包括数字相机传感器以及对应的图像和视频捕获和编辑软件。互联网浏览器可以使用户能够通过键入与网页相对应的地址或选择到网页的链接来查看来自网页的内容。

移动计算设备410可以包括天线以与基站440无线地传达信息。基站440可以是基站集合(例如,移动电话蜂窝网络)中的许多基站之一,其使得移动计算设备410能够在移动计算设备在地理上移动时维持与网络450的通信。计算设备410可以替代地或附加地通过Wi-Fi路由器或有线连接(例如,ETHERNET、USB或FIREWIRE)与网络450通信。计算设备410还可以使用蓝牙协议与其他计算设备无线地通信,或者可以采用自组织无线网络。

操作基站的网络的服务提供商可以将移动计算设备410连接到网络450,以使得能够在移动计算设备410和提供服务460的其他计算系统之间进行通信。尽管可以通过不同的网络(例如,服务提供商的内部网络、公共交换电话网络和互联网)提供服务460,但是网络450被示为单个网络。服务提供商可以操作在移动计算设备410和与服务460相关联的计算系统之间路由信息分组和语音数据的服务器系统452。

网络450可以将移动计算设备410连接到公共交换电话网(PSTN)462,以便在移动计算设备410和另一计算设备之间建立语音或传真通信。例如,服务提供商服务器系统452可以从PSTN 462接收对移动计算设备410的传入呼叫的指示。相反,移动计算设备410可以向服务提供商服务器系统452发送通信,从而使用与通过PSTN 462可访问的设备相关联的电话号码来发起电话呼叫。

网络450可以将移动计算设备410与通过IP网络而不是PSTN来路由语音通信的互联网协议语音(VoIP)服务464连接。例如,移动计算设备410的用户可以调用VoIP应用并且使用该程序发起呼叫。服务提供商服务器系统452可以将语音数据从呼叫转发到VoIP服务,VoIP服务可以通过互联网将呼叫路由到对应的计算设备,从而潜在地将PSTN用于连接的最后支路。

应用商店466可以向移动计算设备410的用户提供浏览用户可以通过网络450下载并且安装在移动计算设备410上的远程存储的应用程序的列表的能力。应用商店466可以用作由第三方应用开发者开发的应用的储存库。安装在移动计算设备410上的应用程序能够通过网络450与为该应用程序指定的服务器系统通信。例如,可以从应用商店466下载VoIP应用程序,使得用户能够与VoIP服务464通信。

移动计算设备410可以通过网络450访问互联网468上的内容。例如,移动计算设备410的用户可以调用web浏览器应用,该web浏览器应用从在指定的通用资源位置处可访问的远程计算设备请求数据。在各种示例中,服务460中的一些服务通过互联网可访问。

移动计算设备可以与个人计算机470通信。例如,个人计算机470可以是移动计算设备410的用户的家用计算机。因此,用户能够从他的个人计算机470流传输媒体。用户还可以查看他的个人计算机470的文件结构,并且在计算机化设备之间传送所选择的文档。

语音识别服务472可以接收利用移动计算设备的麦克风422记录的语音通信数据,并且将语音通信翻译成对应的文本数据。在一些示例中,翻译的文本作为web查询被提供给搜索引擎,并且响应的搜索引擎搜索结果被传送到移动计算设备410。

移动计算设备410可以与社交网络474通信。社交网络可以包括许多成员,其中一些成员已经同意作为熟人而相关。移动计算设备410上的应用程序可以访问社交网络474以基于移动计算设备的用户的熟人来检索信息。例如,“地址簿”应用程序可以检索用户的熟人的电话号码。在各种示例中,可以基于成员的社交网络图中从用户到其他成员的社交网络距离和连接关系来将内容递送到移动计算设备410。例如,可以基于与用户“靠近”的成员(例如,作为“朋友”或“朋友的朋友”的成员)与这样的内容的交互级别来为用户选择广告和新闻文章内容。

移动计算设备410可以通过网络450访问联系人476的个人集合。每个联系人可以标识个人并且包括关于该个人的信息(例如电话号码、电子邮件地址和生日)。因为联系人集合被远程地托管到移动计算设备410,所以用户可以跨若干设备访问并维护联系人476作为共同的联系人集合。

移动计算设备410可以访问基于云的应用程序478。云计算提供应用程序(例如,文字处理器或电子邮件程序),其从移动计算设备410远程地托管,并且可以由设备410使用web浏览器或专用程序来访问。示例的基于云的应用程序包括GOOGLE DOCS字处理器和电子表格服务、GOOGLE GMAIL网络邮件服务和PICASA图片管理器。

地图服务480可以向移动计算设备410提供街道地图、路线规划信息和卫星图像。示例地图服务是GOOGLE MAPS。地图服务480还可以接收查询并且返回位置特定的结果。例如,移动计算设备410可以向地图服务480发送移动计算设备的估计位置和用户输入的对“比萨饼地点”的查询。地图服务480可以返回到具有叠加在标识附近“比萨饼地点”的地理位置的地图上的“标记”的街道地图。

逐向服务482可以向移动计算设备410提供到用户提供的目的地的逐向路线指引。例如,逐向服务482可以向设备410流传输设备的估计位置的街道级视图,连同用于提供音频命令和叠加将设备410的用户引导到目的地的箭头的数据。

移动计算设备410可以请求各种形式的流媒体484。例如,计算设备410可以请求用于预先记录的视频文件、实况电视节目或实况无线电广播节目的流。提供流媒体的示例服务包括YOUTUBE和PANDORA。

微博服务486可以从移动计算设备410接收不标识帖子的接收者的用户输入帖子。微博服务486可以将帖子散布到同意向用户订阅的微博服务486的其他成员。

搜索引擎488可以从移动计算设备410接收用户输入的文本或口头查询,确定响应于该查询的一组互联网可访问文档,并且向设备410提供信息以显示用于响应文档的搜索结果的列表。在接收口头查询的示例中,语音识别服务472可以将接收到的音频翻译为被发送到搜索引擎的文本查询。

这些和其它服务可以在服务器系统490中实现。服务器系统可以是提供服务或一组服务的硬件和软件的组合。例如,一组物理上分离的和联网的计算机化设备可以一起作为逻辑服务器系统单元来操作,以处理向数百个计算设备提供服务所必需的操作。服务器系统在此也被称为计算系统。

在各种实现方式中,如果先前操作不成功(例如,如果没有执行确定),则不执行“响应于”另一操作或“作为另一操作的结果”执行的操作(例如,确定或标识)。“自动”执行的操作是在没有用户干预(例如,干预用户输入)的情况下执行的操作。本文档中用条件语言描述的特征可以描述可选的实现方式。在一些示例中,从第一设备向第二设备“传送”包括第一设备将数据放置到网络中以供第二设备接收,但是可以不包括第二设备接收数据。相反,从第一设备“接收”可以包括从网络接收数据,但是可以不包括第一设备传送数据。

计算系统的“确定”可以包括计算系统请求另一设备执行该确定并且将结果提供给计算系统。此外,计算系统的“显示”或者“呈现”可以包括计算系统发送数据以用于使另一设备显示或呈现所引用的信息。

图5是可以用于将本文档中描述的系统和方法实现为客户端或者服务器或多个服务器的计算设备500、550的框图。计算设备500意在表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、主机和其它适当的计算机。计算设备550旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。这里所示的组件、它们的连接和关系以及它们的功能仅意在作为示例,而不意在限制在本文档中描述和/或要求保护的实现。

计算设备500包括处理器502、存储器504、存储设备506、连接到存储器504和高速扩展端口510的高速接口508、以及连接到低速总线514和存储设备506的低速接口512。组件502、504、506、508、510和512中的每一个使用各种总线互连,并且可以安装在公共主板上或以其他适当的方式安装。处理器502可以处理用于在计算设备500内执行的指令,包括存储在存储器504中或存储设备506上以在外部输入/输出设备(诸如耦合到高速接口508的显示器516)上显示GUI的图形信息的指令。在其它实现方式中,可以适当地使用多个处理器和/或多个总线以及多个存储器和存储器类型。而且,可以连接多个计算设备500,其中每个设备提供必要操作的部分(例如,作为服务器库、刀片服务器组或多处理器系统)。

存储器504存储计算设备500内的信息。在一个实现方式中,存储器504是一个或多个易失性存储器单元。在另一实现方式中,存储器504是一个或多个非易失性存储器单元。存储器504还可以是另一种形式的计算机可读介质,诸如磁盘或光盘。

存储设备506能够为计算设备500提供大容量存储。在一个实现方式中,存储设备506可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备或磁带设备、闪存或其他类似的固态存储器设备、或设备阵列,包括存储区域网络或其他配置中的设备。计算机程序产品可以有形地包含在信息载体中。计算机程序产品还可以包含指令,当执行所述指令时,执行一个或多个方法,例如上面描述的那些方法。信息载体是计算机或机器可读介质,例如存储器504、存储设备506或处理器502上的存储器。

高速控制器508管理用于计算设备500的带宽密集型操作,而低速控制器512管理较低带宽密集型操作。这种功能分配仅是示例。在一个实现方式中,高速控制器508耦合到存储器504、显示器516(例如,通过图形处理器或加速器),并且耦合到可以接受各种扩展卡(未示出)的高速扩展端口510。在该实现方式中,低速控制器512耦合到存储设备506和低速扩展端口514。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、指向设备、扫描仪或诸如交换机或路由器的联网设备。

如图所示,计算设备500可以以多种不同的形式来实现。例如,它可以被实现为标准服务器520,或者在一组这样的服务器中被实现多次。它也可以被实现为机架服务器系统524的一部分。此外,它可以在诸如膝上型计算机522的个人计算机中实现。或者,来自计算设备500的组件可以与诸如设备550等移动设备(未示出)中的其他组件组合。每个这样的设备可以包含一个或多个计算设备500、550,并且整个系统可以由彼此通信的多个计算设备500、550组成。

计算设备550包括处理器552、存储器564、诸如显示器554的输入/输出设备、通信接口566和收发器568,以及其它组件。设备550还可以被提供有诸如微驱动器或其他设备的存储设备以提供附加存储。组件550、552、564、554、566和568中的每一个使用各种总线互连,并且组件中的若干组件可以被安装在公共主板上或以其他适当的方式安装。

处理器552可以执行计算设备550内的指令,包括存储在存储器564中的指令。处理器可以实现为包括单独和多个模拟和数字处理器的芯片的芯片组。另外,处理器可以使用多种架构中的任何架构来实现。例如,处理器可以是CISC(复杂指令集计算机)处理器、RISC(精简指令集计算机)处理器或MISC(最小指令集计算机)处理器。处理器可以提供例如设备550的其它组件的协调,诸如用户接口、由设备550运行的应用以及由设备550进行的无线通信的控制。

处理器552可以通过控制接口558和耦合到显示器554的显示接口556与用户通信。显示器554可以是例如TFT(薄膜晶体管液晶显示器)显示器或OLED(有机发光二极管)显示器,或其它适当的显示器技术。显示接口556可以包括用于驱动显示器554向用户呈现图形和其它信息的适当电路。控制接口558可以从用户接收命令并且转换它们以提交给处理器552。另外,外部接口562可用于与处理器552通信,以便实现设备550与其它设备的近场通信。外部接口562可以在一些实现方式中提供有线通信,或在其它实现方式中提供无线通信,且还可使用多个接口。

存储器564存储计算设备550内的信息。存储器564可以被实现为一个或多个计算机可读介质、一个或多个易失性存储器单元、或者一个或多个非易失性存储器单元。还可以提供扩展存储器574,并且通过扩展接口572将其连接到设备550,该接口可以包括例如SIMM(单列直插存储器模块)卡接口。此类扩展存储器574可以为设备550提供额外存储空间,或还可以存储用于设备550的应用程序或其它信息。具体地,扩展存储器574可以包括用于执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器574可被提供作为用于设备550的安全模块,并且可以用允许安全使用设备550的指令来编程。此外,可以经由SIMM卡提供安全应用以及附加信息,诸如以不可以被黑客的方式将识别信息放置在SIMM卡上。

存储器可以包括例如闪存和/或NVRAM存储器,如下所述。在一个实现方式中,计算机程序产品有形地包含在信息载体中。计算机程序产品包含指令,当执行所述指令时,执行一个或多个方法,诸如上面描述的那些方法。信息载体是计算机或机器可读介质,诸如存储器564、扩展存储器574、或者例如可以通过收发器568或外部接口562接收的处理器552上的存储器。

设备550可以通过通信接口566无线地通信,该通信接口在必要时可以包括数字信号处理电路。通信接口566可以提供在各种模式或协议下的通信,例如GSM语音呼叫、SMS、EMS或MMS消息收发、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等。这样的通信可以例如通过射频收发器568发生。此外,可以进行短距离通信,例如使用蓝牙、WiFi或其它这样的收发器(未示出)。另外,GPS(全球定位系统)接收器模块570可以向设备550提供额外的导航和位置相关无线数据,其可由在设备550上运行的应用适当地使用。

设备550还可以使用音频编解码器560来进行可听通信,该音频编解码器可以从用户接收口述信息并且将其转换为可用的数字信息。音频编解码器560同样可以诸如通过例如设备550的听筒中的扬声器为用户生成可听声音。这样的声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息、音乐文件等),并且还可以包括由在设备550上操作的应用生成的声音。

如图所示,计算设备550可以以多种不同形式来实现。例如,它可以被实现为蜂窝电话580。它也可以被实现为智能电话582、个人数字助理或其他类似移动设备的一部分。

另外,计算设备500或550可以包括通用串行总线(USB)闪存驱动器。USB闪存驱动器可以存储操作系统和其他应用。USB闪存驱动器可以包括输入/输出组件,诸如可以插入到另一计算设备的USB端口中的无线发射机或USB连接器。

这里描述的系统和技术的各种实现方式可以在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实现方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实现方式,所述可编程系统包括至少一个可编程处理器、至少一个输入设备和至少一个输出设备,所述可编程处理器可以是专用或通用的,被耦合以从存储系统接收数据和指令以及向存储系统发送数据和指令。

这些计算机程序(也称为程序、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或汇编/机器语言来实现。如本文所使用的,术语“机器可读介质”、“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。

为了提供与用户的交互,这里描述的系统和技术可以在具有用于向用户显示信息的显示器设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以通过其向计算机提供输入的键盘和指向设备(例如,鼠标或轨迹球)的计算机上实现。其他种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以以任何形式接收来自用户的输入,包括声音、言语或触觉输入。

这里描述的系统和技术可以在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有图形用户界面或Web浏览器的客户端计算机,通过该图形用户界面或Web浏览器,用户可以与这里描述的系统和技术的实现进行交互),或者这样的后端、中间件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)、对等网络(具有自组织或静态成员)、网格计算基础设施和互联网。

计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系借助于在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。

尽管以上已经详细描述了一些实现方式,但是其它修改是可能的。此外,可以使用用于执行本文中描述的系统和方法的其他机制。另外,附图中描绘的逻辑流程不需要所示的特定顺序或连续顺序来实现期望的结果。可以提供其它步骤,或者可以从所描述的流程中去除步骤,并且可以向所描述的系统添加其它组件,或者从所描述的系统中去除其它组件。因此,其它实现方式在所附权利要求的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号