智能设备识别
相关申请的交叉引用
本申请是国际申请号为PCT/US2016/031549、国际申请日为2016 年5月9日、进入中国国家阶段日期为2018年2月26日、中国国家 申请号为201680049415.5、发明名称为“智能设备识别”的发明专利 申请的分案申请。
本专利申请要求2015年9月30日提交的名称为“INTELLIGENT DEVICEIDENTIFICATION”的美国临时专利申请序列号62/235,546 和2016年5月2日提交的名称为“INTELLIGENT DEVICE IDENTIFICATION”的美国专利申请序列号15/144,618的优先权。这些专利申请的内容据此以引用方式并入以用于所有目的。
背景技术
这通常涉及多设备系统,并且更具体地涉及多设备系统中的设备 的智能识别。
技术领域
许多当代设备提供虚拟助理服务以响应于口头用户输入来执行 各种任务。在某些情况下,多个设备可以例如在共享环境中同时操作。 因此,单个用户输入可能导致多个设备中的每个设备执行相同的所请 求的任务。这继而可能导致设备的重复或冲突操作。
发明内容
本发明提供了用于智能设备识别的系统和过程。在一个示例性过 程中,音频输入可在多个电子设备中的两个或更多个电子设备中的每 个电子设备处用麦克风进行采样。可以识别多个电子设备中用于确定 与采样的音频输入相关联的任务的第一电子设备。该过程可基于用第 一电子设备采样的音频输入来确定任务,并且识别多个电子设备中用 于执行该任务的第二电子设备。第二电子设备将执行该任务。在一些 示例中,第二电子设备不是第一电子设备。
在一个示例性过程中,可以接收指示任务的数据。该任务可能与 音频输入相关联。该过程可以在第一电子设备处确定是第一电子设备 还是第二电子设备要执行该任务。根据确定该任务与第一电子设备相 关联,该任务可以由第一电子设备执行。根据确定该任务与第二电子 设备相关联,可以使指示该任务的数据被传输到第二电子设备。
附图说明
图1A是示出根据本公开的一些实施方案的具有触敏显示器的多功能设 备的框图。
图1B是示出根据本公开的一些实施方案的用于事件处理的示例性部件 的框图。
图2示出根据本公开的一些实施方案的具有触摸屏的多功能设备。
图3是根据本公开的一些实施方案的具有显示器和触敏表面的示例性多 功能设备的框图。
图4A示出了根据一些实施方案的针对便携式多功能设备上的应用程序 的菜单的示例性用户界面。
图4B示出了根据一些实施方案的针对具有与显示器分开的触敏表面的 多功能设备的示例性用户界面。
图5A至图5B示出了根据本公开的一些实施方案的用于设备的示例性架 构的框图。
图6A至图6F示出了根据各种示例的多个电子设备。
图7A至图7C示出了根据各种示例的多个电子设备。
图8A至图8E示出了根据各种示例的用于识别要执行任务的电子设备的 过程。
图9A至图9C示出了根据各种示例的用于识别要执行任务的电子设备的 过程。
图10示出了根据各种示例的电子设备的功能框图。
具体实施方式
在以下对示例的描述中将引用附图,在附图中以例示的方式示出了可被 实施的特定示例。应当理解,在不脱离各个示例的范围的情况下,可使用其 他示例并且可作出结构性变更。
虚拟助理服务可以由用户的任意数量的设备提供。例如,用户可以同时 使用移动设备和可穿戴设备,每个移动设备和可穿戴设备可以提供相应的虚 拟助理服务。由于在使用和/或接近多个设备时用户可能请求一个或多个设备 执行任务,因此需要对设备进行智能识别以执行相应任务,使得用户请求被 直观地满足。
尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应 受术语的限制。这些术语只是用来将一个元件与另一元件区分开。例如,第 一触摸可被命名为第二触摸,并且类似地第二触摸可被命名为第一触摸,而 不脱离各种所述实施方案的范围。第一触摸和第二触摸两者都是触摸,但是 它们不是同一触摸。
在本文中对各种所述实施方案的描述中所使用的术语只是为了描述特 定实施方案的目的,而并非旨在进行限制。如在对各种所述实施方案中的描 述和所附权利要求书中所使用的那样,单数形式“一个”、“一种”和“该” 旨在也包括复数形式,除非上下文另外明确地指示。还将理解的是,本文中 所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或多个项 目的任何和全部可能的组合。还将理解的是,术语“包括”和/或“包含”在 本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/ 或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、 元件、部件和/或其分组。
根据上下文,术语“如果”可被解释为意指“当...时”或“在...时”或 “响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确 定...”或“如果检测到[所陈述的条件或事件]”可以被解释为意指“在确定... 时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于 检测到[所陈述的条件或事件]”。
本文描述了电子设备、此类设备的用户界面和使用此类设备的相关过程 的实施方案。在一些实施方案中,该设备是还包含其他功能诸如PDA和/或 音乐播放器功能的便携式通信设备,诸如移动电话。便携式多功能设备的示 例性实施方案包括但不限于来自Apple Inc.(Cupertino,California)的设备、iPod设备、和设备。任选地使用其他便携式电子设备, 诸如具有触敏表面(例如,触摸屏显示器和/或触摸板)的膝上型电脑或平板 电脑。还应当理解,在一些实施方案中,该设备并非便携式通信设备,而是 具有触敏表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而, 应当理解,该电子设备任选地包括一个或多个其他物理用户接口设备,诸如 物理键盘、鼠标和/或操纵杆。
设备可支持多种应用程序,诸如以下应用程序中的一个或多个应用程 序:绘图应用程序、呈现应用程序、文字处理应用程序、网站创建应用程序、 盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频 会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、 照片管理应用程序、数字相机应用程序、数字视频相机应用程序、web浏览 应用程序、数字音乐播放器应用程序、和/或数字视频播放器应用程序。
在设备上执行的各种应用程序任选地使用至少一个通用的物理用户界 面设备,诸如触敏表面。触敏表面的一种或多种功能以及显示在设备上的对 应信息任选地针对不同的应用程序调整和/或变化,和/或在相应应用程序内调 整和/或变化。这样,设备的通用物理架构(例如,触敏表面)任选地利用对 于用户而言直观且清楚的用户界面来支持各种应用程序。
1.用于执行语言输入校正的示例性设备
现在将注意力转到具有触敏显示器的便携式设备的实施方案。图1A是 示出了根据一些实施方案的具有触敏显示系统112的便携式多功能设备100 的框图。触敏显示器112有时为了方便被叫做“触摸屏”,并且有时可被称 为或被叫做“触敏显示系统”。设备100包括存储器102(其任选地包括一 个或多个计算机可读存储介质)、存储器控制器122、一个或多个处理单元 (CPU)120、外围设备接口118、RF电路108、音频电路110、扬声器111、 麦克风113、输入/输出(I/O)子系统106、其他输入控制设备116和外部端口 124。设备100任选地包括一个或多个光学传感器164。设备100任选地包括 用于检测设备100(例如触敏表面,诸如设备100的触敏显示系统112)上接 触强度的一个或多个接触强度传感器165。设备100任选地包括用于在设备 100上生成触觉输出(例如,在触敏表面诸如设备100的触敏显示器系统112 或设备300的触摸板355上生成触觉输出)的一个或多个触觉输出发生器 167。这些部件任选地通过一个或多个通信总线或信号线103进行通信。
如在本说明书和权利要求书中所使用的那样,触敏表面上的接触的术语 “强度”是指触敏表面上的接触(例如,手指接触)的力或压力(每单位面 积的力),或是指触敏表面上的接触的力或压力的替代物(代用物)。接触 的强度具有值范围,该值范围包括至少四个不同的值并且更典型地包括上百 个不同的值(例如,至少256个)。接触的强度任选地使用各种方法和各种 传感器或传感器的组合来确定(或测量)。例如,任选地使用在触敏表面下方或相邻于触敏表面的一个或多个力传感器来测量触敏表面上的不同点处的 力。在一些具体实施中,来自多个力传感器的力测量被合并(例如,加权平 均),以确定估计的接触力。类似地,触笔的压敏顶端任选地用于确定触笔 在触敏表面上的压力。或者,在触敏表面上检测到的接触面积的大小和/或其 变化、邻近接触的触敏表面的电容和/或其变化、和/或邻近接触的触敏表面的 电阻和/或其变化任选地被用作触敏表面上的接触的力或压力的替代。在一些 具体实施中,接触力或压力的替代测量值直接用于确定是否已超过强度阈值(例如,强度阈值以与替代测量值对应的单位描述)。在一些具体实施中, 接触力或压力的替代测量被转换成估计的力或压力,并且估计的力或压力用 于确定是否已超过强度阈值(例如,强度阈值是以压力的单位进行测量的压 力阈值)。使用接触强度作为用户输入的属性,从而允许用户访问用户在尺 寸更小的设备上可能本来不能访问的附加设备功能,该尺寸更小的设备具有 有限的实地面积以用于(例如,在触敏显示器上)显示示能表示和/或接收用 户输入(例如,经由触敏显示器、触敏表面或物理控件/机械控件,诸如旋钮 或按钮)。
如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户 利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部 件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、 或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户的对触 摸敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下, 通过物理位移生成的触觉输出将由用户解释为触感,该触感对应于设备或设 备的部件的物理特征的所感知的变化。例如,触敏表面(例如,触敏显示器 或触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松 开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开 点击”,即使在通过用户的移动而物理地被按压(例如,被移位)的与触敏 表面相关联的物理致动按钮没有移动时。又如,即使在触敏表面的光滑度无 变化时,触敏表面的移动也会任选地由用户解释或感测为触敏表面的“粗糙 度”。虽然由用户对触摸的此类解释将受到用户的个体化感官知觉的限制, 但是有许多触摸的感官知觉是大多数用户共有的。因此,当触觉输出被描述 为对应于用户的特定感官知觉(例如,“松开点击”、“按下点击”、“粗 糙度”)时,除非另外陈述,否则所生成的触觉输出对应于设备或其部件的 物理位移,该物理位移将会生成典型(或普通)用户的所描述的感官知觉。
应当理解,设备100仅是便携式多功能设备的一个示例,并且设备100 任选地具有比所示出的更多或更少的部件,任选地组合两个或更多个部件, 或者任选地具有这些部件的不同配置或布置。图1A中所示的各种部件以硬 件、软件或硬件与软件两者的组合来实现,包括一个或多个信号处理电路和/ 或专用集成电路。
存储器102可包括一个或多个计算机可读存储介质。该计算机可读存储 介质可以是有形的和非暂态的。计算机可读存储介质可以存储用于执行下面 描述的过程800和900的指令。存储器102可以包括高速随机存取存储器, 并且还可包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器 设备、或其他非易失性固态存储器设备。存储器控制器122可控制设备100 的其他部件访问存储器102。
外围设备接口118可用于将设备的输入外围设备和输出外围设备耦接到 CPU 120和存储器102。一个或多个处理器120运行或执行存储在存储器102 中的各种软件程序和/或指令集,以执行设备100的各种功能并处理数据。在 一些实施方案中,外围设备接口118、CPU 120、和存储器控制器122可在单 个芯片诸如芯片104上实现。在一些其他实施方案中,它们可在单独的芯片 上实现。
RF(射频)电路108接收和发送也被叫做电磁信号的RF信号。RF电路 108将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号 与通信网络和其他通信设备进行通信。RF电路108任选地包括用于执行这些 功能的熟知的电路,包括但不限于天线系统、RF收发器、一个或多个放大器、 调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模 块(SIM)卡、存储器等等。RF电路108任选地通过无线通信与网络和其他设 备进行通信,该网络为诸如互联网(也被称为万维网(WWW))、内联网和/ 或无线网络(例如,蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))。 RF电路108任选地包括用于检测近场通信(NFC)场的熟知的电路,诸如通过 近程通信无线电部件来进行检测。无线通信任选地使用多种通信标准、协议 和技术中的任一者,包括但不限于全球移动通信系统(GSM)、增强型数据GSM 环境(EDGE)、高速下行链路分组接入(HSDPA)、高速上行链路分组接入 (HSUPA)、演进、纯数据(EV-DO)、HSPA、HSPA+、双单元HSPA(DC-HSPDA)、 长期演进(LTE)、近场通信(NFC)、宽带码分多址(W-CDMA)、码分多址 (CDMA)、时分多址(TDMA)、蓝牙、蓝牙低功耗(BTLE)、无线保真(Wi-Fi) (例如,IEEE 802.11a、IEEE 802.11b、IEEE 802.11g、IEEE802.11n和/或IEEE 802.11ac)、互联网协议语音(VoIP)、Wi-MAX、电子邮件协议(例如,互联网消息访问协议(IMAP)和/或邮局协议(POP))、即时消息(例如,可扩展消 息处理和存在协议(XMPP)、用于即时消息和存在利用扩展的会话发起协议 (SIMPLE)、即时消息和存在服务(IMPS))、和/或短消息服务(SMS),或者包 括在本文档提交日期时还未开发出的通信协议的任何其他适当的通信协议。
音频电路110、扬声器111和麦克风113提供用户和设备100之间的音 频接口。音频电路110从外围设备接口118接收音频数据,将音频数据转换 为电信号,并将电信号传输到扬声器111。扬声器111将电信号转换为人类 可听见的声波。音频电路110还接收由麦克风113从声波转换而来的电信号。 音频电路110将电信号转换为音频数据,并将音频数据传输到外围设备接口 118以用于处理。音频数据可由外围设备接口118从存储器102和/或RF电路108进行检索和/或被传输至该存储器和/或RF电路。在一些实施方案中, 音频电路110还包括耳麦插孔(例如,图2中的212)。耳麦插孔提供音频 电路110和可移除的音频输入/输出外围设备之间的接口,该可移除的音频输 入/输出外围设备诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳 机)和输入(例如,麦克风)两者的耳麦。
I/O子系统106将设备100上的输入/输出外围设备诸如触摸屏112和其 他输入控制设备116耦接至外围设备接口118。I/O子系统106任选地包括显 示控制器156、光学传感器控制器158、强度传感器控制器159、触觉反馈控 制器161、和用于其他输入或控制设备的一个或多个输入控制器160。一个或 多个输入控制器160从其他输入控制设备116接收电信号/将电信号发送到其 他输入控制设备116。其他输入控制设备116任选地包括物理按钮(例如, 下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击轮等。在一些 另选的实施方案中,一个或多个输入控制器160任选地耦接到以下各项中的 任一者(或不耦接到以下各项中的任一者):键盘、红外线端口、USB端口、 以及指针设备诸如鼠标。一个或多个按钮(例如,图2中的208)任选地包 括用于扬声器111和/或麦克风113的音量控制的增大/减小按钮。一个或多个 按钮任选地包括下压按钮(例如,图2中的206)。
快速按下下压按钮可解除触摸屏112的锁定或者开始使用触摸屏上的手 势来对设备进行解锁的过程,如在2005年12月23日提交的名称为“Unlocking a Device byPerforming Gestures on an Unlock Image”的美国专利申请 11/322,549以及美国专利申请7,657,849中所述的,上述美国专利申请全文以 引用方式并入本文。更长地按下下压按钮(例如206)可使设备100开机或 关机。用户能够对一个或多个按钮的功能进行自定义。触摸屏112用于实现 虚拟按钮或软按钮以及一个或多个软键盘。
触敏显示器112提供设备和用户之间的输入接口和输出接口。显示控制 器156从触摸屏112接收电信号和/或将电信号发送至该触摸屏。触摸屏112 向用户显示视觉输出。该视觉输出可包括图形、文本、图标、视频、以及它 们的任意组合(统称为“图形”)。在一些实施方案中,一些视觉输出或全 部的视觉输出可对应于用户界面对象。
触摸屏112具有基于触觉和/或触感接触来接受来自用户的输入的触敏 表面、传感器或传感器组。触摸屏112和显示控制器156(与存储器102中 的任何相关联的模块和/或指令集一起)检测触摸屏112上的接触(和该接触 的任何移动或中断),并且将所检测到的接触转换为与被显示在触摸屏112 上的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。 在一个示例性实施方案中,触摸屏112和用户之间的接触点与用户的手指对 应。
触摸屏112可使用LCD(液晶显示器)技术、LPD(发光聚合物显示器) 技术、或LED(发光二极管)技术,但是在其他实施方案中可使用其他显示 技术。触摸屏112和显示控制器156可使用现在已知的或以后将开发出的多 种触摸感测技术中的任何触摸感测技术以及其他接近传感器阵列或用于确定 与触摸屏112的一个或多个接触点的其他元件来检测接触及其任何移动或中 断,该多种触摸感测技术包括但不限于电容性技术、电阻性技术、红外技术 和表面声波技术。在一个示例性实施方案中,使用投射式互电容感测技术, 诸如在Apple Inc.(Cupertino,California)的和iPod中发现的技 术。
触摸屏112的一些实施方案中的触敏显示器可类似于以下美国专利中所 述的多点触敏触摸板:6,323,846(Westerman等人)、6,570,557(Westerman 等人)和/或6,677,932(Westerman);和/或美国专利公开2002/0015024A1,这 些专利中的每个专利据此全文以引用方式并入本文。然而,触摸屏112显示 来自设备100的视觉输出,而触敏触摸板不提供视觉输出。
触摸屏112的一些实施方案中的触敏显示器可为如以下专利申请中所描 述的:(1)2006年5月2日提交的名称为“Multipoint Touch Surface Controller” 的美国专利申请11/381,313;(2)2004年5月6日提交的名称为“Multipoint Touchscreen”的美国专利申请10/840,862;(3)2004年7月30日提交的名称 为“Gestures For Touch Sensitive InputDevices”的美国专利申请10/903,964; (4)2005年1月31日提交的名称为“Gestures ForTouch Sensitive Input Devices” 的美国专利申请11/048,264;(5)2005年1月18日提交的名称为“Mode-Based Graphical User Interfaces For Touch Sensitive InputDevices”的美国专利申请 11/038,590;(6)2005年9月16日提交的名称为“Virtual InputDevice Placement On A Touch Screen User Interface”的美国专利申请11/228,758;(7)2005年9 月16日提交的名称为“Operation Of A Computer With A Touch ScreenInterface”的美国专利申请11/228,700;(8)2005年9月16日提交的名称为 “ActivatingVirtual Keys Of A Touch-Screen Virtual Keyboard”的美国专利申 请11/228,737;和(9)2006年3月3日提交的名称为“Multi-Functional Hand-Held Device”美国专利申请11/367,749。所有这些专利申请全文以引用方式并入本 文。
触摸屏112可具有超过100dpi的视频分辨率。在一些实施方案中,触摸 屏具有约160dpi的视频分辨率。用户可使用任何合适的对象或附加物诸如触 笔、手指等来与触摸屏112接触。在一些实施方案中,将用户界面设计用来 主要与基于手指的接触和手势一起工作,由于手指在触摸屏上的接触面积较 大,因此这可能不如基于触笔的输入那样精确。在一些实施方案中,设备将 基于手指的粗略输入翻译为精确的指针/光标位置或命令,以用于执行用户所 期望的动作。
在一些实施方案中,除了触摸屏之外,设备100可包括用于激活或去激 活特定功能的触摸板(未示出)。在一些实施方案中,触摸板是设备的触敏 区域,该触敏区域与触摸屏不同,其不显示视觉输出。触摸板可以是与触摸 屏112分开的触敏表面,或者是由触摸屏形成的触敏表面的延伸部分。
设备100还包括用于为各种部件供电的电力系统162。电力系统162可 包括电力管理系统、一个或多个电源(例如,电池、交流电(AC))、再充电 系统、电力故障检测电路、功率变换器或逆变器、电源状态指示器(例如, 发光二极管(LED))和与便携式设备中的电力的生成、管理和分配相关联的任 何其他部件。
设备100还可包括一个或多个光学传感器164。图1A示出了耦接到I/O 子系统106中的光学传感器控制器158的光学传感器。光学传感器164可包 括电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光电晶体管。光学传 感器164从环境接收通过一个或多个透镜而投射的光,并且将光转换为表示 图像的数据。结合成像模块143(也称为相机模块),光学传感器164可捕 获静态图像或视频。在一些实施方案中,光学传感器位于设备100的与设备的前部上的触摸屏显示器112相背对的后部上,使得触摸屏显示器可被用作 用于静态图像和/或视频图像采集的取景器。在一些实施方案中,光学传感器 位于设备前部上,使得在用户在触摸屏显示器上查看其他视频会议参与者时 可获得该用户的图像以用于该视频会议。在一些实施方案中,光学传感器164 的位置可由用户改变(例如通过旋转设备外壳中的透镜和传感器),使得单 个光学传感器164可与触摸屏显示器一起使用,以用于视频会议和静态图像 和/或视频图像采集两者。
设备100任选地还包括一个或多个接触强度传感器165。图1A示出了耦 接到I/O子系统106中的强度传感器控制器159的接触强度传感器。接触强 度传感器165任选地包括一个或多个压阻应变仪、电容式力传感器、电气力 传感器、压电力传感器、光学力传感器、电容式触敏表面、或其他强度传感 器(例如,用于测量触敏表面上的接触的力(或压力)的传感器)。接触强 度传感器165从环境接收接触强度信息(例如,压力信息或压力信息的代用物)。在一些实施方案中,至少一个接触强度传感器与触敏表面(例如,触 敏显示器系统112)并置排列或邻近。在一些实施方案中,至少一个接触强 度传感器位于设备100的后部上,与位于设备100的前部上的触摸屏显示器 112相背对。
设备100还可包括一个或多个接近传感器166。图1A示出了耦接到外围 设备接口118的接近传感器166。另选地,接近传感器166可耦接到I/O子系 统106中的输入控制器160。接近传感器166可以如美国专利申请11/241,839 “Proximity Detector In HandheldDevice”;11/240,788,“Proximity Detector In Handheld Device”;11/620,702,“UsingAmbient Light Sensor To Augment Proximity Sensor Output”;11/586,862,“Automated Response To And Sensing Of User Activity In Portable Devices”;和11/638,251,“Methods And Systems For Automatic Configuration Of Peripherals”中所述执行,所述专利申请据此 全文以引用方式并入本文。在一些实施方案中,当多功能设备被置于用户的 耳朵附近时(例如,当用户正在进行电话呼叫时),接近传感器关闭并且禁用触摸屏112。
设备100任选地还包括一个或多个触觉输出发生器167。图1A示出了耦 接到I/O子系统106中的触觉反馈控制器161的触觉输出发生器。触觉输出 发生器167任选地包括一个或多个电声设备诸如扬声器或其他音频部件;和/ 或用于将能量转换成线性运动的机电设备诸如电机、螺线管、电活性聚合器、 压电致动器、静电致动器或其他触觉输出生成部件(例如,用于将电信号转 换成设备上的触觉输出的部件)。接触强度传感器165从触觉反馈模块133 接收触觉反馈生成指令,并且在设备100上生成能够由设备100的用户感觉 到的触觉输出。在一些实施方案中,至少一个触觉输出发生器与触敏表面(例 如,触敏显示器系统112)并置排列或邻近,并且任选地通过垂直地(例如, 向设备100的表面内/外)或侧向地(例如,在与设备100的表面相同的平面 中向后和向前)移动触敏表面来生成触觉输出。在一些实施方案中,至少一 个触觉输出发生器传感器位于设备100的后部上,与位于设备100的前部上 的触摸屏显示器112相背对。
设备100还可包括一个或多个加速度计168。图1A示出了耦接到外围设 备接口118的加速度计168。另选地,加速度计168可耦接到I/O子系统106 中的输入控制器160。加速度计168可如以下美国专利公开中所述的那样执 行:20050190059,名称为“Acceleration-based Theft Detection System for Portable Electronic Devices”和20060017692,名称为“Methods And Apparatuses For Operating A Portable Device Based On AnAccelerometer”,这两个美国专 利公开均全文以引用方式并入本文。在一些实施方案中,信息基于对从一个 或多个加速度计所接收的数据的分析而在触摸屏显示器上以纵向视图或横向 视图被显示。除了一个或多个加速度计168之外,设备100任选地还包括磁 力仪(未示出)和GPS(或GLONASS或其他全球导航系统)接收器(未示 出),以用于获取关于设备100的位置和取向(例如,纵向或横向)的信息。
在一些实施方案中,存储于存储器102中的软件部件包括操作系统126、 通信模块(或指令集)128、接触/运动模块(或指令集)130、图形模块(或 指令集)132、文本输入模块(或指令集)134、全球定位系统(GPS)模块(或 指令集)135以及应用程序(或指令集)136。此外,在一些实施方案中,存 储器102(图1A)或370(图3)存储设备/全局内部状态157,如图1A、和 图3中所示。设备/全局内部状态157包括以下各项中的一者或多者:活动应 用程序状态,指示哪些应用程序(如果存在的话)当前是活动;显示状态, 其指示什么应用程序、视图或其他信息占据触摸屏显示器112的各个区域; 传感器状态,包括从设备的各个传感器和输入控制设备116获取的信息;以 及关于设备的位置和/或姿态的位置信息。
操作系统126(例如,Darwin、RTXC、LINUX、UNIX、OS X、iOS、 WINDOWS、或嵌入式操作系统诸如VxWorks)包括用于控制和管理一般系 统任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件 和/或驱动程序,并且促进各种硬件部件和软件部件之间的通信。
通信模块128促进通过一个或多个外部端口124来与其他设备进行通 信,并且还包括用于处理由RF电路108和/或外部端口124所接收的数据的 各种软件部件。外部端口124(例如,通用串行总线(USB)、火线等)适于直 接耦接到其他设备,或间接地通过网络(例如,互联网、无线LAN等)进行 耦接。在一些实施方案中,外部端口是与(Apple Inc.的商标)设备上 所使用的30针连接器相同的或类似的和/或与其兼容的多针(例如,30针)连接器。
接触/运动模块130任选地检测与触摸屏112(结合显示控制器156)和 其他触敏设备(例如,触摸板或物理点击轮)的接触。接触/运动模块130包 括各种软件部件以用于执行与接触检测相关的各种操作,诸如确定是否已经 发生了接触(例如,检测手指按下事件)、确定接触强度(例如,接触的力 或压力,或者接触的力或压力的替代物)、确定是否存在接触的移动并跟踪 在触敏表面上的移动(例如,检测一个或多个手指拖动事件),以及确定接触是否已经停止(例如,检测手指抬起事件或者接触断开)。接触/运动模块 130从触敏表面接收接触数据。确定接触点的移动任选地包括确定接触点的 速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的变化), 接触点的移动由一系列接触数据表示。这些操作任选地被应用于单点接触(例 如,单指接触)或者多点同时接触(例如,“多点触摸”/多个手指接触)。 在一些实施方案中,接触/运动模块130和显示控制器156检测触摸板上的接触。
在一些实施方案中,接触/运动模块130使用一组一个或多个强度阈值来 确定操作是否已由用户执行(例如,确定用户是否已“点击”图标)。在一 些实施方案中,根据软件参数来确定强度阈值的至少一个子集(例如,强度 阈值不是由特定物理致动器的激活阈值确定的,并且可在不改变设备100的 物理硬件的情况下被调节)。例如,在不改变触控板或触摸屏显示器硬件的 情况下,触控板或触摸屏显示器的鼠标“点击”阈值可被设定成预定义的阈 值的大范围中的任一个阈值。另外,在一些具体实施中,向设备的用户提供 用于调节一组强度阈值中的一个或多个强度阈值(例如,通过调节各个强度 阈值和/或通过利用对“强度”参数的系统级点击来一次调节多个强度阈值) 的软件设置。
接触/运动模块130任选地检测用户的手势输入。触敏表面上的不同手势 具有不同的接触模式(例如,所检测到的接触的不同运动、定时和/或强度)。 因此,任选地通过检测特定的接触模式来检测手势。例如,检测手指轻击手 势包括检测手指按下事件,然后在与手指按下事件相同的位置(或基本上相 同的位置)处(例如,在图标的位置处)检测手指抬起(抬离)事件。作为 另一个示例,在触敏表面上检测手指轻扫手势包括检测手指按下事件,然后 检测一个或多个手指拖动事件,并且随后检测手指抬起(抬离)事件。
图形模块132包括用于在触摸屏112或其他显示器上呈现和显示图形的 各种已知的软件部件,包括用于改变所显示的图形的视觉冲击(例如,亮度、 透明度、饱和度、对比度或其他视觉特征)的部件。如本文所用,术语“图 形”包括可被显示给用户的任何对象,非限制性地包括文本、网页、图标(诸 如,包括软键的用户界面对象)、数字图像、视频、动画等。
在一些实施方案中,图形模块132存储待使用的用于表示图形的数据。 每个图形任选地被分配有对应的代码。图形模块132从应用程序等接收用于 指定待显示的图形的一个或多个代码,在必要的情况下还一起接收坐标数据 和其他图形属性数据,然后生成屏幕图像数据以输出至显示控制器156。
触觉反馈模块133包括用于生成指令的各种软件部件,该指令由一个或 多个触觉输出发生器167使用,以响应于用户与设备100的交互而在设备100 上的一个或多个位置处产生触觉输出。
可作为图形模块132的部件的文本输入模块134提供用于在多种应用程 序(例如,联系人137、电子邮件140、即时消息141、浏览器147、和需要 文本输入的任何其他应用程序)中输入文本的软键盘。具体地讲,文本输入 模块134可包括用于语言输入校正的一个或多个几何模型和一个或多个语言 模型,如下所述。
GPS模块135确定设备的位置并提供该信息以用于各种应用(例如,提 供至用于基于位置的拨号的电话138;提供至相机143作为图片/视频元数据; 以及提供至提供基于位置的服务诸如天气桌面小程序、当地黄页桌面小程序 和地图/导航桌面小程序的应用程序)。
应用程序136可包括以下模块(或指令集)或者其子集或超集:
·联系人模块137(有时称为地址簿或联系人列表);
·电话模块138;
·视频会议模块139;
·电子邮件客户端模块140;
·即时消息(IM)模块141;
·健身支持模块142;
·用于静态图像和/或视频图像的相机模块143;
·图像管理模块144;
·视频播放器模块;
·音乐播放器模块;
·浏览器模块147;
·日历模块148;
·桌面小程序模块149,其可包括以下各项中的一者或多者:天气桌面 小程序149-1、股市桌面小程序149-2、计算器桌面小程序149-3、闹 钟桌面小程序149-4、词典桌面小程序149-5和由用户获取的其他桌 面小程序、以及用户创建的桌面小程序149-6;
·用于形成用户创建的桌面小程序149-6的桌面小程序创建器模块 150;
·搜索模块151;
·视频和音乐播放器模块152,其合并视频播放器模块和音乐播放器模 块;
·记事本模块153;
·地图模块154;和/或
·在线视频模块155。
可被存储在存储器102中的其他应用程序136的示例包括其他文字处理 应用程序、其他图像编辑应用程序、绘图应用程序、呈现应用程序、支持JAVA 的应用程序、加密、数字权益管理、语音识别和语音复制。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132 和文本输入模块134,联系人模块137可用于管理通讯录或联系人列表(例 如,存储在存储器102或存储器370中的联系人模块137的应用程序内部状 态192中),包括:将一个或多个姓名添加到地址簿;从通讯录删除一个或 多个姓名;将一个或多个电话号码、一个或多个电子邮件地址、一个或多个 物理地址或其他信息与姓名相关联;将图像与姓名进行关联;对姓名进行归 类和分类;提供电话号码或电子邮件地址来发起和/或促进通过电话138、视 频会议模块139、电子邮件140或即时消息141的通信;等等。
结合RF电路108、音频电路110、扬声器111、麦克风113、触摸屏112、 显示控制器156、接触/运动模块130、图形模块132、和文本输入模块134, 电话模块138可用于输入与电话号码对应的字符序列、访问联系人模块137 中的一个或多个电话号码、修改已输入的电话号码、拨打相应的电话号码、 进行会话以及当会话完成时断开或挂断。如上所述,无线通信可使用多个通 信标准、协议和技术中的任一者。
结合RF电路108、音频电路110、扬声器111、麦克风113、触摸屏112、 显示控制器156、光学传感器164、光学传感器控制器158、接触/运动模块 130、图形模块132、文本输入模块134、联系人模块137和电话模块138, 视频会议模块139包括根据用户指令来发起、进行和终止用户与一个或多个 其他参与者之间的视频会议的可执行指令。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132和文本输入模块134,电子邮件客户端模块140包括响应于用 户指令来创建、发送、接收和管理电子邮件的可执行指令。结合图像管理模 块144,电子邮件客户端模块140使得非常容易创建和发送具有由相机模块 143拍摄的静态图像或视频图像的电子邮件。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132和文本输入模块134,即时消息模块141包括用于以下操作的 可执行指令:输入与即时消息对应的字符序列,修改先前输入的字符,传输 相应即时消息(例如,使用短消息服务(SMS)或多媒体消息服务(MMS)协议 以用于基于电话的即时消息,或者使用XMPP、SIMPLE或IMPS以用于基于 互联网的即时消息),接收即时消息,以及查看所接收的即时消息。在一些 实施方案中,所传输的和/或所接收的即时消息可包括图形、照片、音频文件、 视频文件和/或在MMS和/或增强型消息服务(EMS)中支持的其他附件。如本 文所用,“即时消息”是指基于电话的消息(例如,使用SMS或MMS发送 的消息)和基于互联网的消息(例如,使用XMPP、SIMPLE、或IMPS发送 的消息)两者。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132、文本输入模块134、GPS模块135、地图模块154和音乐播放 器模块,健身支持模块142包括创建健身(例如,具有时间、距离和/或卡路 里燃烧目标)的可执行指令;与健身传感器(运动设备)进行通信;接收健 身传感器数据;校准用于监视健身的传感器;选择和播放用于健身的音乐; 以及显示、存储和传输健身数据。
结合触摸屏112、显示控制器156、一个或多个光学传感器164、光学传 感器控制器158、接触/运动模块130、图形模块132和图像管理模块144,相 机模块143包括用于以下操作的可执行指令:捕获静态图像或视频(包括视 频流)并且将它们存储到存储器102中、修改静态图像或视频的特征、或从 存储器102删除静态图像或视频。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132、 文本输入模块134、和相机模块143,图像管理模块144包括用于排列、修改 (例如,编辑)、或以其他方式操控、加标签、删除、呈现(例如,在数字 幻灯片或相册中)、以及存储静态图像和/或视频图像的可执行指令。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132和文本输入模块134,浏览器模块147包括根据用户指令来浏 览互联网(包括搜索、链接至、接收和显示网页或其部分,以及链接至网页 的附件和其他文件)的可执行指令。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132、文本输入模块134、电子邮件客户端模块140和浏览器模块147,日历模块148包括根据用户指令来创建、显示、修改和存储日历以及与 日历相关联的数据(例如,日历条目、待办事项等)的可执行指令。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132、文本输入模块134、和浏览器模块147,桌面小程序模块149 是可由用户下载并使用的微型应用程序(例如,天气桌面小程序149-1、股市 桌面小程序149-2、计算器桌面小程序149-3、闹钟桌面小程序149-4、和字 典桌面小程序149-5)或由用户创建的微型应用程序(例如,用户创建的桌面 小程序149-6)。在一些实施方案中,桌面小程序包括HTML(超文本标记 语言)文件、CSS(层叠样式表)文件和JavaScript文件。在一些实施方案中, 桌面小程序包括XML(可扩展标记语言)文件和JavaScript文件(例如,Yahoo! 桌面小程序)。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132、文本输入模块134、和浏览器模块147,桌面小程序创建器模 块150可被用户用于创建桌面小程序(例如,将网页的用户指定部分转到桌 面小程序中)。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132 和文本输入模块134,搜索模块151包括根据用户指令来搜索存储器102中 的匹配一个或多个搜索条件(例如,一个或多个用户指定的搜索词)的文本、 音乐、声音、图像、视频和/或其他文件的可执行指令。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132、 音频电路110、扬声器111、RF电路108、和浏览器模块147,视频和音乐播 放器模块152包括允许用户下载和回放以一种或多种文件格式(诸如MP3或 AAC文件)存储的所记录的音乐和其他声音文件的可执行指令,以及用于显 示、呈现或以其他方式回放视频(例如,在触摸屏112上或在经由外部端口 124连接的外部显示器上)的可执行指令。在一些实施方案中,设备100任选地包括MP3播放器,诸如iPod(Apple Inc.的商标)的功能。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132 和文本输入模块134,记事本模块153包括根据用户指令来创建和管理记事 本、待办事项等的可执行指令。
结合RF电路108、触摸屏112、显示控制器156、接触/运动模块130、 图形模块132、文本输入模块134、GPS模块135和浏览器模块147,地图模 块154可用于根据用户指令来接收、显示、修改和存储地图以及与地图相关 联的数据(例如,驾驶方向、与特定位置处或附近的商店及其他兴趣点有关 的数据,以及其他基于位置的数据)。
结合触摸屏112、显示控制器156、接触/运动模块130、图形模块132、 音频电路110、扬声器111、RF电路108、文本输入模块134、电子邮件客户 端模块140和浏览器模块147,在线视频模块155包括用于进行以下操作的 指令:允许用户访问、浏览、接收(例如,通过流式传输和/或下载)、回放 (例如在触摸屏上或在经由外部端口124所连接的外部显示器上)、发送具 有至特定在线视频的链接的电子邮件,以及以其他方式管理一种或多种文件 格式诸如H.264的在线视频。在一些实施方案中,使用即时消息模块141而 不是电子邮件客户端模块140发送指向特定在线视频的链接。在线视频应用 程序的附加描述可在2007年6月20日提交的名称为“Portable Multifunction Device,Method,and Graphical UserInterface for Playing Online Videos”的美国 临时专利申请60/936,562、和2007年12月31日提交的名称为“Portable Multifunction Device,Method,and Graphical UserInterface for Playing Online Videos”的美国专利申请11/968,067中找到,这两个专利申请的内容据此全 文以引用方式并入本文。
上述模块和应用程序中的每个模块和应用程序对应于用于执行上述一 种或多种功能以及在该专利申请中所述的方法(例如,本文所述的计算机实 现的方法和其他信息处理方法)的可执行指令集。这些模块(例如,指令集) 不必被实现为独立的软件程序、过程或模块,并因此在各种实施方案中可组 合或以其他方式重新布置这些模块的各种子集。例如,视频播放器模块可与 音乐播放器模块组合成单个模块(例如,图1A中的视频和音乐播放器模块 152)。在一些实施方案中,存储器102可存储上文识别的模块和数据结构的 子集。此外,存储器102可存储上文没有描述的附加模块和数据结构。
在一些实施方案中,设备100是该设备上的一组预定义功能的操作唯一 地通过触摸屏和/或触摸板来执行的设备。通过使用触摸屏和/或触摸板作为用 于设备100的操作的主要输入控制设备,可减少设备100上的物理输入控制 设备(诸如下压按钮、拨号盘等等)的数量。
唯一地通过触摸屏和/或触摸板执行的该组预定义功能任选地包括在用 户界面之间进行导航。在一些实施方案中,触摸板在被用户触摸时将设备100 从显示在设备100上的任何用户界面导航到主菜单、home菜单或根菜单。在 此类实施方案中,使用触摸板来实现“菜单按钮”。在一些其他实施方案中, 菜单按钮是物理下压按钮或者其他物理输入控制设备,而不是触摸板。
图1B是示出了根据一些实施方案用于事件处理的示例性部件的框图。 在一些实施方案中,存储器102(图1A)或存储器370(图3)包括事件分 类器170(例如,在操作系统126中)以及相应的应用程序136-1(例如,前 述应用程序137至151,155,380至390中的任一个应用程序)。
事件分类器170接收事件信息并确定要将事件信息递送到的应用程序 136-1和应用程序136-1的应用程序视图191。事件分类器170包括事件监视 器171和事件分配器模块174。在一些实施方案中,应用程序136-1包括应用 程序内部状态192,该应用程序内部状态指示当应用程序是活动的或正在执 行时被显示在触敏显示器112上的一个或多个当前应用程序视图。在一些实 施方案中,设备/全局内部状态157被事件分类器170用于确定哪个(哪些) 应用程序当前是活动的,并且应用程序内部状态192被事件分类器170用于 确定要将事件信息递送到的应用程序视图191。
在一些实施方案中,应用程序内部状态192包括另外的信息,诸如以下 各项中的一者或多者:当应用程序136-1恢复执行时将被使用的恢复信息、 指示正被应用程序136-1显示的信息或准备好用于被该应用程序显示的信息 的用户界面状态信息、用于使得用户能够返回到应用程序136-1的前一状态 或视图的状态队列,以及用户采取的先前动作的重复/撤销队列。
事件监视器171从外围设备接口118接收事件信息。事件信息包括关于 子事件(例如,作为多点触摸手势一部分的触敏显示器112上的用户触摸) 的信息。外围设备接口118传输其从I/O子系统106或传感器(例如,接近 传感器166、一个或多个加速度计168和/或麦克风113(通过音频电路110)) 接收的信息。外围设备接口118从I/O子系统106接收的信息包括来自触敏 显示器112或触敏表面的信息。
在一些实施方案中,事件监视器171以预先确定的间隔将请求发送至外 围设备接口118。作为响应,外围设备接口118传输事件信息。在其他实施 方案中,外围设备接口118仅当存在显著事件(例如,接收到高于预先确定 的噪声阈值和/或接收到超过预先确定的持续时间的输入)时才传输事件信 息。
在一些实施方案中,事件分类器170还包括命中视图确定模块172和/ 或活动事件识别器确定模块173。
当触敏显示器112显示多于一个视图时,命中视图确定模块172提供用 于确定子事件已在一个或多个视图内的什么地方发生的软件过程。视图由用 户可在显示器上看到的控件和其他元件构成。
与应用程序相关联的用户界面的另一方面是一组视图,在本文中有时也 被称为应用程序视图或用户界面窗口,在其中显示信息并且发生基于触摸的 手势。在其中检测到触摸的(相应应用程序的)应用程序视图可对应于应用 程序的程序化或视图分级结构内的程序化水平。例如,在其中检测到触摸的 最低层级视图可被叫做命中视图,并且被识别为正确输入的那组事件可至少 部分地基于开始基于触摸的手势的初始触摸的命中视图来确定。
命中视图确定模块172接收与基于触摸的手势的子事件相关的信息。当 应用程序具有以分级结构组织的多个视图时,命中视图确定模块172将命中 视图识别为该分级结构中应当处理该子事件的最低视图。在大多数情况下, 命中视图是发起子事件(例如,形成事件或潜在事件的子事件序列中的第一 子事件)在其中发生的最低水平视图。一旦命中视图被命中视图确定模块172 识别,命中视图便通常接收与其被识别为命中视图所针对的同一触摸或输入 源相关的所有子事件。
活动事件识别器确定模块173确定视图分级结构内的哪个或哪些视图应 接收特定子事件序列。在一些实施方案中,活动事件识别器确定模块173确 定仅命中视图才应接收特定子事件序列。在其他实施方案中,活动事件识别 器确定模块173确定包括子事件的物理位置的所有视图都是活跃参与的视 图,因此确定所有活跃参与的视图都应接收特定子事件序列。在其他实施方 案中,即使触摸子事件完全被局限到与一个特定视图相关联的区域,但在分 级结构中较高的视图将仍然保持为活跃参与的视图。
事件分配器模块174将事件信息分配到事件识别器(例如,事件识别器 180)。在包括活动事件识别器确定模块173的实施方案中,事件分配器模块 174将事件信息递送到由活动事件识别器确定模块173确定的事件识别器。 在一些实施方案中,事件分配器模块174在事件队列中存储事件信息,该事 件信息由相应事件接收器182进行检索。
在一些实施方案中,操作系统126包括事件分类器170。或者,应用程 序136-1包括事件分类器170。在其他实施方案中,事件分类器170是独立的 模块,或者是存储在存储器102中的另一个模块(例如,接触/运动模块130) 的一部分。
在一些实施方案中,应用程序136-1包括多个事件处理程序190和一个 或多个应用程序视图191,其中每个应用程序视图包括用于处理发生在应用 程序的用户界面的相应视图内的触摸事件的指令。应用程序136-1的每个应 用程序视图191包括一个或多个事件识别器180。通常,相应应用程序视图 191包括多个事件识别器180。在其他实施方案中,事件识别器180中的一个 或多个事件识别器是独立模块的一部分,该独立模块诸如用户界面工具包(未 示出)或应用程序136-1从中继承方法和其他属性的更高层级的对象。在一 些实施方案中,相应事件处理程序190包括以下各项中的一者或多者:数据 更新器176、对象更新器177、GUI更新器178和/或从事件分类器170接收 的事件数据179。事件处理程序190可利用或调用数据更新器176、对象更新 器177或GUI更新器178,以更新应用程序内部状态192。另选地,应用视 图191中的一个或多个应用视图包括一个或多个相应事件处理程序190。另 外,在一些实施方案中,数据更新器176、对象更新器177和GUI更新器178 中的一者或多者包括在相应应用程序视图191中。
相应的事件识别器180从事件分类器170接收事件信息(例如,事件数 据179),并且从事件信息识别事件。事件识别器180包括事件接收器182 和事件比较器184。在一些实施方案中,事件识别器180还至少包括以下各 项的子集:元数据183、和事件递送指令188(其可包括子事件递送指令)。
事件接收器182接收来自事件分类器170的事件信息。事件信息包括关 于子事件(例如,触摸或触摸移动)的信息。根据子事件,事件信息还包括 附加信息,诸如子事件的位置。当子事件涉及触摸的运动时,事件信息还可 包括子事件的速率和方向。在一些实施方案中,事件包括设备从一个取向旋 转到另一取向(例如,从纵向取向到横向取向,或反之亦然)的旋转,并且 事件信息包括关于设备的当前取向(也被称为设备姿态)的对应信息。
事件比较器184将事件信息与预定义的事件或子事件定义进行比较,并 且基于该比较来确定事件或子事件,或者确定或更新事件或子事件的状态。 在一些实施方案中,事件比较器184包括事件定义186。事件定义186包含 事件的定义(例如,预定义的子事件序列),例如事件1(187-1)、事件2(187-2) 以及其他。在一些实施方案中,事件(187)中的子事件包括例如触摸开始、触 摸结束、触摸移动、触摸取消、和多点触摸。在一个示例中,事件1(187-1) 的定义是在被显示对象上的双击。例如,双击包括被显示对象上的预先确定 时长的第一次触摸(触摸开始)、预先确定时长的第一次抬离(触摸结束)、 被显示对象上的预先确定时长的第二次触摸(触摸开始)、以及预先确定时 长的第二次抬离(触摸结束)。又如,事件2(187-2)的定义是被显示对象上 的拖动。例如,拖动包括所显示对象上的预先确定时长的触摸(或接触)、 触摸在触敏显示器112上的移动,以及触摸的抬离(触摸结束)。在一些实 施方案中,事件还包括用于一个或多个相关联的事件处理程序190的信息。
在一些实施方案中,事件定义187包括对用于相应用户界面对象的事件 的定义。在一些实施方案中,事件比较器184执行命中测试,以确定哪个用 户界面对象与子事件相关联。例如,在触摸显示器112上显示三个用户界面 对象的应用程序视图中,当在触敏显示器112上检测到触摸时,事件比较器 184执行命中测试,以确定这三个用户界面对象中的哪一个用户界面对象与 该触摸(子事件)相关联。如果每个所显示的对象与相应的事件处理程序190 相关联,则事件比较器使用该命中测试的结果来确定哪个事件处理程序190 应当被激活。例如,事件比较器184选择与子事件和触发该命中测试的对象 相关联的事件处理程序。
在一些实施方案中,相应事件187的定义还包括延迟动作,该延迟动作 延迟事件信息的递送,直到已确定子事件序列确实对应于或不对应于事件识 别器的事件类型。
当相应事件识别器180确定子事件序列不与事件定义186中的任何事件 匹配时,该相应事件识别器180进入事件不可能、事件失败或事件结束状态, 在此之后忽略基于触摸的手势的后续子事件。在这种情况下,对于命中视图 保持活动的其他事件识别器(如果有的话)继续跟踪和处理持续的基于触摸 的手势的子事件。
在一些实施方案中,相应事件识别器180包括具有指示事件递送系统应 该如何执行对活跃参与的事件识别器的子事件递送的可配置属性、标记和/ 或列表的元数据183。在一些实施方案中,元数据183包括用于指示事件识 别器彼此如何交互或可如何交互的可配置属性、标志和/或列表。在一些实施 方案中,元数据183包括指示子事件是否递送到视图或程序化分级结构中的 不同层级的可配置属性、标志和/或列表。
在一些实施方案中,当识别事件的一个或多个特定子事件时,相应事件 识别器180激活与事件相关联的事件处理程序190。在一些实施方案中,相 应事件识别器180将与事件相关联的事件信息递送到事件处理程序190。激 活事件处理程序190不同于将子事件发送(和延期发送)到相应命中视图。 在一些实施方案中,事件识别器180抛出与所识别的事件相关联的标志,并 且与该标志相关联的事件处理程序190获取该标志并执行预定义的过程。
在一些实施方案中,事件递送指令188包括递送关于子事件的事件信息 而无需激活事件处理程序的子事件递送指令。相反,子事件递送指令将事件 信息递送到与子事件系列相关联的事件处理程序或递送到活跃参与的视图。 与子事件系列或与活跃参与的视图相关联的事件处理程序接收事件信息并执 行预先确定的过程。
在一些实施方案中,数据更新器176创建并更新在应用程序136-1中使 用的数据。例如,数据更新器176对联系人模块137中所使用的电话号码进 行更新,或者对视频播放器模块中所使用的视频文件进行存储。在一些实施 方案中,对象更新器177创建和更新在应用程序136-1中使用的对象。例如, 对象更新器177创建新的用户界面对象或更新用户界面对象的位置。GUI更 新器178更新GUI。例如,GUI更新器178准备显示信息并将其发送至图形模块132以用于在触敏显示器上显示。
在一些实施方案中,一个或多个事件处理程序190包括数据更新器176、 对象更新器177和GUI更新器178,或具有对该数据更新器、该对象更新器 和该GUI更新器的访问权限。在一些实施方案中,数据更新器176、对象更 新器177和GUI更新器178被包括在相应应用程序136-1或应用程序视图191 的单个模块中。在其他实施方案中,它们被包括在两个或更多个软件模块中。
应当理解,关于触敏显示器上的用户触摸的事件处理的上述论述还适用 于利用输入设备来操作多功能设备100的其他形式的用户输入,并不是所有 用户输入都是在触摸屏上发起的。例如,任选地与单次或多次键盘按下或按 住协作的鼠标移动和鼠标按钮按下;触摸板上的接触移动,诸如轻击、拖拽、 滚动等;触笔输入;设备的移动;口头指令;检测到的眼睛移动;生物特征 输入;和/或它们的任何组合任选地被用作对应于限定要识别的事件的子事件 的输入。
图2示出了根据一些实施方案的具有触摸屏112的便携式多功能设备 100。触摸屏任选地在用户界面(UI)200内显示一个或多个图形。在本实施方 案中以及在下文中描述的其他实施方案中,用户能够通过例如利用一个或多 个手指202(在附图中未按比例绘制)或者利用一个或多个触笔203(在附图 中未按比例绘制)在图形上作出手势来选择这些图形中的一个或多个图形。 在一些实施方案中,当用户中断与一个或多个图形的接触时,将发生对一个 或多个图形的选择。在一些实施方案中,手势任选地包括一次或多次轻击、 一次或多次轻扫(从左向右、从右向左、向上和/或向下)和/或已与设备100 发生接触的手指的滚动(从右向左、从左向右、向上和/或向下)。在一些具 体实施中或在一些情况下,不经意地与图形接触不会选择图形。例如,当与 选择对应的手势是轻击时,在应用程序图标上方扫动的轻扫手势任选地不会 选择对应的应用程序。
设备100还可包括一个或多个物理按钮,诸如“home”按钮或菜单按钮 204。如前所述,菜单按钮204可被用于导航到可在设备100上执行的应用程 序集中的任何应用程序136。另选地,在一些实施方案中,菜单按钮被实现 为显示在触摸屏112上的GUI中的软键。
在一些实施方案中,设备100包括触摸屏112、菜单按钮204、用于使 设备开机/关机和用于锁定设备的下压按钮206、一个或多个音量调节按钮 208、用户身份模块(SIM)卡槽210、耳麦插孔212和对接/充电外部端口124。 下压按钮206任选地用于通过压下该按钮并且将该按钮保持在压下状态预定 义的时间间隔来对设备进行开/关机;通过压下该按钮并在该预定义的时间间 隔过去之前释放该按钮来锁定设备;和/或对设备进行解锁或发起解锁过程。 在另选的实施方案中,设备100还通过麦克风113来接受用于激活或去激活 某些功能的语音输入。设备100还任选地包括用于检测触摸屏112上的接触 的强度的一个或多个接触强度传感器165,和/或用于为设备100的用户生成 触觉输出的一个或多个触觉输出发生器167。
图3是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备 的框图。设备300不必是便携式的。在一些实施方案中,设备300是膝上型 计算机、台式计算机、平板电脑、多媒体播放器设备、导航设备、教育设备 (例如,儿童学习玩具)、游戏系统或控制设备(例如,家用控制器或工业 用控制器)。设备300通常包括一个或多个处理单元(CPU)310、一个或多个 网络或其他通信接口360、存储器370和用于使这些部件互连的一个或多个 通信总线320。通信总线320任选地包括使系统部件互连并控制系统部件之 间的通信的电路(有时称为芯片组)。设备300包括具有显示器340的输入/ 输出(I/O)接口330,该显示器通常是触摸屏显示器。I/O接口330还任选地包 括键盘和/或鼠标(或其他指向设备)350和触摸板355、用于在设备300上 生成触觉输出的触觉输出发生器357(例如,类似于以上参考图1A所述的一 个或多个触觉输出发生器167)、传感器359(例如,光学传感器、加速度传 感器、接近传感器、触敏传感器和/或接触强度传感器(类似于以上参考图1A 所述的一个或多个接触强度传感器165))。存储器370包括高速随机存取 存储器,诸如DRAM、SRAM、DDR RAM或其它随机存取固态存储器设备; 并且任选地包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储 设备、闪存设备、或其它非易失性固态存储设备。存储器370任选地包括远 离一个或多个CPU 310定位的一个或多个存储设备。在一些实施方案中,存 储器370存储与在便携式多功能设备100(图1A)的存储器102中所存储的 程序、模块和数据结构类似的程序、模块和数据结构,或它们的子集。此外, 存储器370任选地存储在便携式多功能设备100的存储器102中不存在的附 加程序、模块、和数据结构。例如,设备300的存储器370任选地存储绘图 模块380、呈现模块382、文字处理模块384、网站创建模块386、盘编辑模块388、和/或电子表格模块390,而便携式多功能设备100(图1A)的存储 器102任选地不存储这些模块。
图3中的上述元件中的每个元件可被存储在一个或多个前面提到的存储 器设备中。上述模块中的每个模块与用于执行上述功能的指令集对应。上述 模块或程序(例如,指令集)不必被实现为单独的软件程序、过程或模块, 并且因此这些模块的各种子集可在各种实施方案中被组合或以其他方式重新 布置。在一些实施方案中,存储器370可存储上述模块和数据结构的子集。 此外,存储器370可存储上面没有描述的附加模块和数据结构。
现在将注意力转到可在例如便携式多功能设备100上实现的用户界面的 实施方案。
图4A示出了根据一些实施方案的便携式多功能设备100上的应用菜单 的示例性用户界面。类似的用户界面可在设备300上实现。在一些实施方案 中,用户界面400包括以下元件或者其子集或超集:
·一个或多个无线通信(诸如蜂窝信号和Wi-Fi信号)的一个或多个信 号强度指示符402;
·时间404;
·蓝牙指示符405;
·电池状态指示符406;
·具有常用应用程序图标的托盘408,图标诸如:
○电话模块138的被标记为“电话”的图标416,该图标任选地包 括未接来电或语音留言的数量的指示符414;
○电子邮件客户端模块140的被标记为“邮件”的图标418,该图 标任选地包括未读电子邮件的数量的指示符410;
○浏览器模块147的被标记为“浏览器”的图标420;和
○视频和音乐播放器模块152(也称为iPod(Apple Inc.的商标)模 块152)的被标记为“iPod”的图标422;以及
·其它应用程序的图标,诸如:
○IM模块141的被标记为“消息”的图标424;
○日历模块148的被标记为“日历”的图标426;
○图像管理模块144的被标记为“照片”的图标428;
○相机模块143的被标记为“相机”的图标430;
○在线视频模块155的被标记为“在线视频”的图标432;
○股市桌面小程序149-2的被标记为“股市”的图标434;
○地图模块154的被标记为“地图”的图标436;
○天气桌面小程序149-1的被标记为“天气”的图标438;
○闹钟桌面小程序149-4的被标记为“时钟”的图标440;
○健身支持模块142的被标记为“健身支持”的图标442;
○记事本模块153的被标记为“记事本”的图标444;和
○用于设置应用程序或模块的被标记为“设置”的图标446,该图 标提供对设备100及其各种应用程序136的设置的访问。
需注意,图4A中示出的图标标签仅是示例性的。例如,视频和音乐播 放器模块152的图标422可任选地被标记为“音乐”或“音乐播放器”。其 他标签任选地用于各种应用程序图标。在一些实施方案中,相应应用程序图 标的标签包括与该相应应用程序图标对应的应用程序的名称。在一些实施方 案中,特定应用程序图标的标签不同于与该特定应用程序图标对应的应用程 序的名称。
图4B示出了具有与显示器450(例如,触摸屏显示器112)分开的触敏 表面451(例如,图3的平板电脑或触摸板355)的设备(例如,图3的设备 300)上的示例性用户界面。设备300还任选地包括用于检测触敏表面451 上的接触的强度的一个或多个接触强度传感器(例如,传感器357中的一个 或多个传感器),和/或用于为设备300的用户生成触觉输出的一个或多个触 觉输出发生器359。
尽管将参考触摸屏显示器112(其中组合了触敏表面和显示器)上的输 入给出随后的示例中的一些示例,但是在一些实施方案中,设备检测与显示 器分开的触敏表面上的输入,如图4B中所示。在一些实施方案中,触敏表 面(例如,图4B中的451)具有与显示器(例如,450)上的主轴(例如, 图4B中的453)对应的主轴(例如,图4B中的452)。根据这些实施方案, 设备检测在与显示器上的相应位置对应的位置(例如,在图4B中,460对应 于468并且462对应于470)处的与触敏表面451的接触(例如,图4B中的 460和462)。这样,在触敏表面(例如,图4B中的451)与多功能设备的 显示器(图4B中的450)分开时,由设备在触敏表面上检测到的用户输入(例 如,接触460和462以及它们的移动)被该设备用于操纵显示器上的用户界 面。应当理解,类似的方法任选地用于本文所述的其他用户界面。
另外,虽然主要是参考手指输入(例如,手指接触、单指轻击手势、手 指轻扫手势)来给出下面的示例,但是应当理解,在一些实施方案中,这些 手指输入中的一个或多个手指输入由来自另一输入设备的输入(例如,基于 鼠标的输入或触笔输入)替代。例如,轻扫手势任选地由鼠标点击(例如, 而不是接触),之后是光标沿着轻扫的路径的移动(例如,而不是接触的移 动)替代。又如,轻击手势任选地由在光标位于轻击手势的位置上方时的鼠标点击(例如,代替对接触的检测,之后是停止检测接触)替代。类似地, 当同时检测到多个用户输入时,应当理解,多个计算机鼠标任选地被同时使 用,或鼠标和手指接触任选地被同时使用。
图5A示出了示例性个人电子设备500。设备500包括主体502。在一些 实施方案中,设备500可包括相对于设备100和300(例如,图1A至图4B) 所述的特征中的一些或全部特征。在一些实施方案中,设备500具有在下文 中称为触摸屏504的触敏显示屏504。作为触摸屏504的替代或补充,设备 500具有显示器和触敏表面。与设备100和300的情况一样,在一些实施方 案中,触摸屏504(或触敏表面)可具有用于检测所施加的接触(例如,触 摸)的强度的一个或多个强度传感器。触摸屏504(或触敏表面)的一个或 多个强度传感器可提供表示触摸的强度的输出数据。设备500的用户界面可 基于触摸强度来对触摸作出响应,这意味着不同强度的触摸可调用设备500 上的不同用户界面操作。
例如,可在如下相关专利申请中找到用于检测和处理触摸强度的技术: 2013年5月8日提交的名称为“Device,Method,and Graphical User Interface for DisplayingUser Interface Objects Corresponding to an Application”的国际专利 申请序列号PCT/US2013/040061,以及2013年11月11日提交的名称为 “Device,Method,and GraphicalUser Interface for Transitioning Between Touch Input to Display OutputRelationships”的国际专利申请序列号 PCT/US2013/069483,这两个专利申请中的每个专利申请据此全文以引用方 式并入本文。
在一些实施方案中,设备500具有一个或多个输入机构506和508。输 入机构506和508(如果包括的话)可以是物理形式的。物理输入机构的示 例包括下压按钮和可旋转机构。在一些实施方案中,设备500具有一个或多 个附接机构。此类附接机构(如果包括的话)可允许将设备500与例如帽子、 眼镜、耳环、项链、衬衣、夹克、手镯、表带、手链、裤子、皮带、鞋子、 钱包、背包等附接。这些附接机构可允许用户穿戴设备500。
图5B示出了示例性个人电子设备500。在一些实施方案中,设备500 可包括参考图1A、图1B和图3所述的部件中的一些或全部部件。设备500 具有总线512,该总线将I/O部分514与一个或多个计算机处理器516和存储 器518操作性地耦接。I/O部分514可连接到显示器504,该显示器可具有触 敏部件522并且任选地还具有触摸强度敏感部件524。此外,I/O部分514可 与通信单元530连接,以用于使用Wi-Fi、蓝牙、近场通信(NFC)、蜂窝和/ 或其他无线通信技术来接收应用和操作系统数据。设备500可包括输入机构 506和/或508。例如,输入机构506可以是可旋转输入设备或者可按压输入 设备以及可旋转输入设备。在一些示例中,输入机构508可以是按钮。
在一些示例中,输入机构508可以是麦克风。个人电子设备500可包括 各种传感器,诸如GPS传感器532、加速度计534、定向传感器540(例如, 罗盘)、陀螺仪536、运动传感器538、和/或它们的组合,所有这些设备可 操作性地连接到I/O部分514。
个人电子设备500的存储器518可以是用于存储计算机可执行指令的非 暂态计算机可读存储介质,该计算机可执行指令在由一个或多个计算机处理 器516执行时例如可使得计算机处理器执行下文描述的技术,包括过程800 (图8A至图8E)和过程900(例如,图9A至图9C)。该计算机可执行指 令还可以在任何非暂态计算机可读存储介质内进行存储和/或传输,以供指令 执行系统、装置或设备诸如基于计算机的系统、包括处理器的系统或可从指 令执行系统、装置或设备获取指令并执行指令的其他系统使用或与其结合。 个人电子设备500不限于图5B的部件和配置,而是可包括多种配置的其他 部件或附加部件。
如本文所用,术语“示能表示”是指可在设备100,300和/或500(图1、 3和5)的显示屏上显示的用户交互式图形用户界面对象。例如,图像(例如, 图标)、按钮和文本(例如,超链接)可各自构成示能表示。
如本文所用,术语“焦点选择器”是指用于指示用户正与之进行交互的 用户界面的当前部分的输入元素。在包括光标或其他位置标记物的一些具体 实施中,光标充当“焦点选择器”,使得当在光标在特定用户界面元素(例 如,按钮、窗口、滑块或其他用户界面元素)上方时在触敏表面(例如,图 3中的触摸板355或图4B中的触敏表面451)上检测到输入(例如,按压输 入)的情况下,该特定用户界面元素根据所检测到的输入而被调节。在包括能够实现与触摸屏显示器上的用户界面元素的直接交互的触摸屏显示器(例 如,图1A中的触敏显示系统112或图4A中的触摸屏112)的一些具体实施 中,触摸屏上所检测到的接触充当“焦点选择器”,使得当在触摸屏显示器 上在特定用户界面元素(例如,按钮、窗口、滑块或其他用户界面元素)的 位置处检测到输入(例如,由接触进行的按压输入)时,该特定用户界面元 素根据所检测到的输入而被调节。在一些具体实施中,焦点从用户界面的一 个区域移动到用户界面的另一个区域,而无需光标的对应移动或触摸屏显示 器上的接触的移动(例如,通过使用制表键或箭头键将焦点从一个按钮移动 到另一个按钮);在这些具体实施中,焦点选择器根据焦点在用户界面的不 同区域之间的移动而移动。不考虑焦点选择器所采取的具体形式,焦点选择 器通常是由用户控制的以便递送与用户界面的用户预期的交互(例如,通过 向设备指示用户界面的用户期望与其进行交互的元素)的用户界面元素(或 触摸屏显示器上的接触)。例如,在触敏表面(例如,触摸板或触摸屏)上 检测到按压输入时,焦点选择器(例如,光标、接触或选择框)在相应按钮 上方的位置将指示用户期望激活相应按钮(而不是设备的显示器上示出的其 他用户界面元素)。
如说明书和权利要求书中所使用的,接触的“特征强度”这一术语是指 基于接触的一个或多个强度的接触的特征。在一些实施方案中,特征强度基 于多个强度样本。特征强度任选地基于相对于预定义事件(例如,在检测到 接触之后,在检测到接触抬起之前,在检测到接触开始移动之前或之后,在 检测到接触结束之前,在检测到接触的强度增大之前或之后,和/或在检测到 接触的强度减小之前或之后)而言在预先确定的时间段(例如,0.05秒、0.1 秒、0.2秒、0.5秒、1秒、2秒、5秒、10秒)期间采集的预定义数量的强度 样本或一组强度样本。接触的特征强度任选地基于以下各项中的一者或多者: 接触强度的最大值、接触强度的均值、接触强度的平均值、接触强度的前10% 处的值、接触强度的半最大值、接触强度的90%最大值等。在一些实施方案 中,在确定特征强度时使用接触的持续时间(例如,在特征强度是接触的强 度随时间的平均值时)。在一些实施方案中,将特征强度与一组一个或多个 强度阈值进行比较,以确定用户是否已执行操作。例如,该组一个或多个强 度阈值可包括第一强度阈值和第二强度阈值。在该示例中,特征强度未超过 第一阈值的接触导致第一操作,特征强度超过第一强度阈值但未超过第二强 度阈值的接触导致第二操作,并且特征强度超过第二阈值的接触导致第三操 作。在一些实施方案中,使用特征强度与一个或多个阈值之间的比较来确定 是否要执行一个或多个操作(例如,是执行相应操作还是放弃执行相应操作), 而不是用于确定执行第一操作还是第二操作。
在一些实施方案中,识别手势的一部分以用于确定特征强度。例如,触 敏表面可接收连续的轻扫接触,该连续的轻扫接触从起始位置过渡并到达结 束位置,在该结束位置处,接触的强度增加。在该示例中,接触在结束位置 处的特征强度可仅基于连续轻扫接触的一部分,而不是整个轻扫接触(例如, 仅结束位置处的轻扫接触的一部分)。在一些实施方案中,可在确定接触的 特征强度之前向轻扫手势的强度应用平滑化算法。例如,该平滑化算法任选 地包括以下各项中的一者或多者:不加权滑动平均平滑化算法、三角平滑化算法、中值滤波器平滑化算法和/或指数平滑化算法。在一些情况下,这些平 滑化算法消除了轻扫接触的强度中的窄的尖峰或凹陷,以用于确定特征强度。
可相对于一个或多个强度阈值诸如接触检测强度阈值、轻按压强度阈 值、深按压强度阈值、和/或一个或多个其他强度阈值来表征触敏表面上的接 触的强度。在一些实施方案中,轻按压强度阈值对应于这样的强度:在该强 度下设备将执行通常与点击物理鼠标的按钮或触控板相关联的操作。在一些 实施方案中,深按压强度阈值对应于这样的强度:在该强度下,设备将执行 与通常与点击物理鼠标或触控板的按钮相关联的操作不同的操作。在一些实 施方案中,当检测到特征强度低于轻按压强度阈值(例如,并且高于标称接触检测强度阈值,比该标称接触检测强度阈值低的接触不再被检测到)的接 触时,设备将根据接触在触敏表面上的移动来移动焦点选择器,而不执行与 轻按压强度阈值或深按压强度阈值相关联的操作。一般来讲,除非另有说明, 否则这些强度阈值在不同组的用户界面附图之间是一致的。
接触的特征强度从低于轻按压强度阈值的强度增大到介于轻按压强度 阈值与深按压强度阈值之间的强度有时被称为“轻按压”输入。接触特征强 度从低于深按压强度阈值的强度增大到高于深按压强度阈值的强度有时被称 为“深按压”输入。接触的特征强度从低于接触检测强度阈值的强度增大到 介于接触检测强度阈值与轻按压强度阈值之间的强度有时被称为检测到触摸 表面上的接触。接触的特征强度从高于接触检测强度阈值的强度减小到低于 接触检测强度阈值的强度有时被称为检测到接触从触摸表面抬离。在一些实 施方案中,接触检测强度阈值为零。在一些实施方案中,接触检测强度阈值 大于零。
在本文中所述的一些实施方案中,响应于检测到包括相应按压输入的手 势或响应于检测到利用相应接触(或多个接触)执行的相应按压输入来执行 一个或多个操作,其中至少部分地基于检测到该接触(或多个接触)的强度 增大到高于按压输入强度阈值而检测到相应按压输入。在一些实施方案中, 响应于检测到相应接触强度增大到高于按压输入强度阈值(例如,相应按压 输入的“向下冲程”)而执行相应操作。在一些实施方案中,按压输入包括 相应接触强度增大到高于按压输入强度阈值以及该接触强度随后减小到低于按压输入强度阈值,并且响应于检测到相应接触强度随后减小到低于按压输 入阈值(例如,相应按压输入的“向上冲程”)而执行相应操作。
在一些实施方案中,设备采用强度滞后以避免有时称为“抖动”的意外 输入,其中该设备限定或选择与按压输入强度阈值具有预定义关系的滞后强 度阈值(例如,滞后强度阈值比按压输入强度阈值小X个强度单位,或滞后 强度阈值是按压输入强度阈值的75%、90%或某些合理的比例)。因此,在 一些实施方案中,按压输入包括相应接触强度增大到高于按压输入强度阈值 以及该接触强度随后减小到低于与按压输入强度阈值对应的滞后强度阈值, 并且响应于检测到相应接触强度随后减小到低于滞后强度阈值(例如,相应 按压输入的“向上冲程”)而执行相应操作。类似地,在一些实施方案中, 仅在设备检测到接触的强度从等于或低于滞后强度阈值的强度增大到等于或 高于按压输入强度阈值的强度并且任选地接触的强度随后减小到等于或低于 滞后强度的强度时才检测到按压输入,并且响应于检测到按压输入(例如, 根据环境,接触的强度增大或接触的强度减小)来执行相应操作。
为了容易解释,任选地,响应于检测到以下各种情况中的任一种情况而 触发对响应于与按压输入强度阈值相关联的按压输入或响应于包括按压输入 的手势而执行的操作的描述:接触强度增大到高于按压输入强度阈值、接触 强度从低于滞后强度阈值的强度增大到高于按压输入强度阈值的强度、接触 强度减小到低于按压输入强度阈值、和/或接触强度减小到低于与按压输入强 度阈值对应的滞后强度阈值。另外,在将操作描述为响应于检测到接触的强 度减小到低于按压输入强度阈值而执行的示例中,任选地响应于检测到接触 的强度减小到低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行 操作。
2.用于智能设备识别的示例性技术
图6A至图6F示出了根据一些实施方案的用于智能设备识别的示例性技 术。这些附图还用于示出下文描述的包括图8A至图8E和图9A至图9C中 的过程的过程。
图6A示出了用户600的电子设备602,604,606和608。在一些实施方案 中,设备602-608中的一个或多个设备可以是设备104,、122,200,400和1000 (图1、2、4和10)中的任何一个。在一些示例中,电子设备602是可穿戴 电子设备诸如智能手表,并且当处于放下位置时被断电,如图所示。在一些 示例中,电子设备604是诸如移动电话的移动设备,电子设备606是具有相 对较大显示器性能的电子设备诸如电视,并且电子设备608是具有音频输出 能力的设备诸如扬声器基座。虽然在此参考电子设备602-608描述了所示出 的示例,但是应当理解,在其他具体实施中可以使用更少或更多数量的设备。
图6B示出了用户600将电子设备602提升到升高位置。响应于该移动, 设备602开启电子设备602的触摸屏。根据电子设备602的触摸屏开启,电 子设备602也开始通过其麦克风对音频输入进行采样,以监听来自用户600 的语音输入。诸如电子设备604,606和608的一个或多个其他电子设备也可 开始采样音频输入,以监听来自用户600的语音输入。电子设备604,606和 608中的每个电子设备可响应于检测到用户600接近而开始采样音频输入, 或者可以连续采样音频输入。
如图所示,用户600可在电子设备602-608中的一个或多个电子设备采 样音频输入时提供语音指令612。每个电子设备602-608在采样音频输入时检 测语音指令612,并且确定语音指令612是否包含用于触发相应设备的虚拟 助理服务的短语。对于电子设备602-608中的每个电子设备,如果确定采样 的输入包含语音触发,则触发虚拟助理。可选地,还可以提供指示采样的音 频输入包括语音触发的输出。输出可以是视觉的(例如,显示通知或LED来 回切换)、听觉的和/或触觉的。如果确定所采样的音频输入不包含语音触发, 则可进一步以预先确定的时间量或无限期地采样音频输入。
在所示示例中,语音触发是短语“嘿,Siri”。因此,语音指令612在采 样语音指令612的每个电子设备中触发相应虚拟助理。除语音触发之外,语 音指令612还包括自然语言输入(例如,“来部电视剧”),相应设备的虚 拟助理中的至少一个虚拟助理将该自然语言输入解析为(例如,操作化)一 个或多个任务。
在一些示例中,自然语言输入被电子设备602-608中的单个设备解析为 一个或多个任务。例如,一旦对语音音频输入进行了采样,电子设备602-608 中的一个电子设备可被识别为用于基于采样的音频输入确定任务的第一设 备。例如,用于确定任务的第一设备可以基于一组优先化规则来识别。例如, 第一设备可以是其采样的音频输入具有最高语音质量、声压级和/或音量的设 备。在另一个示例中,第一设备可以是最靠近用户600的设备。在又一个示 例中,可以基于相应设备的类型来识别第一设备。例如,在包括移动设备和 其他不可穿戴设备的系统中,移动设备可以是用于确定任务的第一设备。在 包括可穿戴设备的系统中,可穿戴设备可以是用于确定任务的第一设备。相 应地,在所示示例中,设备602可以被识别为用于基于采样的音频输入来确 定任务的设备。
任务可以在本地或远程地确定。诸如电子设备602的设备可以使用采样 的音频输入在本地确定任务,或者可以将表示采样的音频输入的数据传输到 一个或多个服务器。该任务可以由一个或多个服务器基于传输的数据确定并 提供给设备。可选地,一个或多个设备可在确定任务之后提供输出。参照图 6C至图6F,电子设备602-608中的任一个电子设备可以分别提供用于确认任 务已被确定的输出,。在一些示例中,在任务确定之后,多个设备提供输出。 提供输出的方式例如可指示哪些设备被用来确定任务。
一旦任务已确定,电子设备602-608中的一个电子设备可被识别为用于 执行该任务的第二设备。第二设备可以由第一设备进行识别,并且还可以是 第一设备或不同于第一设备的设备。在一些示例中,可以基于任务要求来识 别第二设备。例如,任务可能需要由具有特定能力(例如,功能)的设备来 执行任务。例如,在所示的示例中,该任务可针对电视节目的某集的回放并 且需要显示功能。相应地,电子设备602可确定电子设备602-608中的哪一 个满足显示能力要求。在其他实施方案中,任务可能需要用移动设备来执行。 在又一个实施方案中,任务可能需要用插入电源插座中的设备来执行。如果 电子设备602-608中的任何一个电子设备都不能满足任务的要求,则设备 602-608中的一个或多个设备可放弃执行该任务。
由于多个设备可满足任务要求,因此第二设备可除此之外或另选地根据 多个优先化规则来识别。在一些示例中,第二设备可以是“最适合”执行任 务的设备。例如,对于针对视频回放的任务,第二设备可以是具有最大显示 器的电子设备。在所示示例中,电子设备602可例如基于电子设备602-606 的相对显示器尺寸来确定电子设备606最适合视频回放。对于针对映射功能 的任务,第二设备可以是移动设备。在一些示例中,第二设备可基于先前的 使用进行识别。例如,通常用于执行任务的设备可被识别为执行该任务或类 似任务的后续迭代。在一些实施方案中,第二设备可基于第一设备与其他设 备中的每个设备之间的信号强度来识别。
一旦第二设备被识别,该任务可由第一设备提供给第二设备。如图6C 所示,响应于对包含指令612的音频输入的采样,电子设备602将任务提供 给电子设备606,该电子设备继而通过播放所请求的剧集来执行任务。在一 些示例中,任务由设备602直接提供给设备606,并且在其他示例中,经由 一个或多个中间设备(诸如设备604)提供。一旦任务已被第二设备接收, 第二设备可执行该任务。
在一些示例中,第二设备可延迟任务的执行。例如,任务可包括在执行 任务之前必须满足的一个或多个标准。例如,任务可能要求在执行任务之前 用户停止驾驶(例如,通过GPS确定),并且/或者可能在执行任务之前要求 特定形式的连接(例如,蓝牙)。
又如,任务可能要求在执行任务之前对用户进行认证。参照图7A,用户 可以提供请求回放R级电影的音频输入702,并且该请求可例如由设备602 解析为在电子设备606上回放该R级电影的任务。由于电影评级的性质,该 任务可能首先要求用户进行认证。可以使用生物识别认证(例如,指纹认证) 和/或凭据认证(例如,用户名和密码)来实施认证。参照图7B,设备604 可分别提供请求输入生物特征(例如,指纹识别)的输入请求712,714。如 图7C所示,用户可提供生物特征输入,并且设备604可认证用户。在一些 示例中,设备604可提供分别确认认证完成以及R级电影正在设备606上播 放的输出722,724。应当理解,可以使用电子设备602-608中的任何一个电子 设备来采用认证,包括但不限于用于解析和/或执行任务的设备。
3.识别电子设备以执行任务的过程
图8A至图8E示出了根据各种示例的用于识别要执行任务的电子设备的 过程。在一些示例中,过程800可使用例如在一个或多个电子设备上实现的 数字助理来采用。在一些示例中,过程800可使用实现数字助理的客户端- 服务器系统(例如,系统100)来执行。应当认识到,在其他示例中,过程 800的各个框可以任何适当的方式在一个或多个计算机、系统或电子设备之 间分配。例如,在一些示例中,过程800可完全在电子设备(例如,设备104,200,400)上执行。此外,虽然以下讨论将过程800描述为由数字助理系统(例 如,系统100)执行,但是应当认识到,该过程或该过程的任何特定部分不 限于任何特定设备、设备的组合或具体实施来执行。
在框802处,可在多个电子设备中的两个或更多个电子设备(例如,设 备104,200,400)中的每个电子设备处对音频输入进行采样。具体地讲,可 以从多个电子设备的用户接收音频输入。音频输入可在与相应的或相同的数 字助理进行交互的过程中或作为该交互的一部分被接收,其中该数字助理在 多个电子设备的每个电子设备上实施。在一些示例中,可以经由电子设备的 麦克风(例如,麦克风113)接收音频输入。所接收的音频输入可(例如, 使用音频电路210或一个或多个处理器220)被处理并且被转换成表示形式, 诸如电子信号(数字或模拟)或一个或多个音频文件。
在一些示例中,音频输入可表示和/或包含用户请求。例如,音频输入可 包括请求“播放权力的游戏最新一集”,从而请求播放电视剧“权力的游戏” 的最近一集。此外,在一些示例中,音频输入可不明确地包含用户请求,而 是可以基于接收到音频输入的上下文来暗示该用户请求。具体地讲,该用户 请求可基于音频输入所针对的输入字段和/或应用来进行暗示。例如,在焦点 当前针对地图应用程序的搜索字段时,音频输入可包括字词“餐厅”。在该 示例中,音频输入可表示获取特定地理区域中的餐馆位置信息的用户请求。
应当认识到,在一些示例中,在框802处可接收文本输入而不是音频输 入。例如,可经由多个电子设备中的一个或多个电子设备上的合适的用户界 面来接收来自用户的表示用户请求的文本输入。用于接收文本输入的合适的 用户界面的示例可包括虚拟键盘、手写识别界面、手势识别界面等。
在一些示例中,在框802处,对音频输入进行采样可包括确定音频输入 是否包括语音触发。语音触发可包括触发多个电子设备中的一个或多个电子 设备针对用户请求分析后续输入的任何预先确定的关键字、短语或其他语音 输入。例如,语音触发可包括短语“嘿,Siri”。作为响应,每个电子设备可 采样后续音频输入。在一些示例中,可以提供确认对音频输出的采样的输出。 例如,可以根据确定音频输入包括语音触发来提供输出。
在框806处,可以识别用于确定与采样的音频输入相关联的任务的多个 电子设备中的第一电子设备。在一些示例中,基于由设备接收的语音的质量 来识别电子设备。语音质量可例如基于用户与多个电子设备中的每个电子设 备之间的距离和/或多个电子设备的运行环境的一个或多个其他声学特征而 不同。在多个设备包括移动电话和电视的示例中,可在移动电话更接近用户 的情况下识别移动电话。在一些示例中,识别第一电子设备包括确定在两个 或更多个电子设备中的每个电子设备处采样的音频输入中的相应语音质量。 语音质量可以例如基于声学环境噪声、最小音量、最大音量、音量变化、频 率或其组合来确定。
可以基于预先确定的一组优先化规则来进一步识别设备,该组优先化规 则指定哪种类型的电子设备将优先于其他类型的电子设备。例如,在一些示 例中,识别第一电子设备包括确定两个或更多个电子设备是否包括可穿戴电 子设备(例如,智能手表)。如果包括,则可穿戴电子设备被识别为第一电 子设备。
在一些示例中,识别第一电子设备包括确定在两个或更多个电子设备中 的每个电子设备处的采样的音频输入的相应声压级。被识别为具有最高声压 级的电子设备可被识别为第一电子设备。
在框818处,可基于采样的音频输入来确定任务。在一些示例中,该任 务可以由第一电子设备确定。在至少一个实施方案中,第一电子设备在本地 将音频输入解析为任务。也就是说,音频输入在第一电子设备上被解析。在 其他实施方案中,音频输入被远程解析。例如,第一电子设备可与服务诸如 基于云端的虚拟助理服务进行通信,并将音频输入提供给服务,该服务继而 可以将音频输入解析为任务。之后该任务可以由服务提供给第一电子设备。 示例性任务可包括但不限于任何数量的回放、映射、查找和存储功能。
在一些示例中,在音频输入已被采样之后,可以提供确认已基于采样的 音频输入确定了任务的输出。输出可以由一个或多个电子设备提供,并且可 以是视觉的、听觉的和/或触觉的。在一些示例中,输出用作用户的音频输入 已被接收的确认。在一些示例中,输出由除了第一电子设备之外的多个电子 设备中的电子设备提供。例如,用户可以对着可穿戴电子设备说话,并且另 一个电子设备(诸如扬声器基座)可以输出发出“我正在播放您的播放列表” 的音频。在一些示例中,输出由除采样和/或解析音频输入的第一电子设备和 执行任务的第二电子设备之外的多个电子设备中的电子设备提供。例如,用 户可以对着第一电子设备(例如,移动电话)说话,并且用户的可穿戴电子 设备(例如,智能手表)可提供输出,诸如指示任务正被提供给第三设备(例 如,电视)的振动。
在一些示例中,可以提供确认对音频输入的采样的第一输出,并且在音 频输入已被采样之后,可以提供指示已基于采样的音频输入确定了任务的第 二输出。在一些示例中,第一输出和第二输出具有不同特征。在一些示例中, 第一输出可以由两个或更多个电子设备提供。例如,在一些实施方案中,多 个电子设备中的多个电子设备提供相对较少的可感知指示(诸如,LED的点 亮),以指示正在对音频输入进行采样,而特定电子设备则提供相对更多的 可感知指示诸如听觉(例如,口头)指示,以指示采样的音频输入被解析。 这样,使得用户意识到一个或多个电子设备正在处理音频输入,但是选择电 子设备提供将基于音频输入来执行任务的确认。
在框824处,可以识别用于执行任务的第二电子设备。例如,第二电子 设备可以由第一电子设备、多个设备中的另一个电子设备和/或用于解析音频 输入的服务进行识别(框818)。
在一些示例中,识别第二电子设备包括确定第一电子设备与多个电子设 备中的一个或多个其他电子设备之间的无线通信(例如,蓝牙、蓝牙LE、 WiFi)的信号强度。例如,可以使用信号可靠性和/或数据吞吐量来测量信号 强度。具有最高信号强度的电子设备可被识别为第二电子设备。
在一些示例中,可以通过获得多个电子设备中的电子设备的显示屏尺寸 的指示来识别第二电子设备。然后可以确定指示是否符合任务的要求。例如, 可以确定任务是否需要大于阈值尺寸或小于阈值尺寸的屏幕尺寸。根据确定 指示符合要求,该电子设备可被识别为第二电子设备。例如,第一电子设备 可以将该电子设备识别为第二电子设备。根据确定指示不符合要求,电子设 备可能不被识别为第二电子设备。例如,第一电子设备可以放弃将该电子设 备识别为第二电子设备。
在一些示例中,可以通过确定多个电子设备中的电子设备是否是移动电 子设备来识别第二电子设备。在一些示例中,移动设备可以是电池供电的任 何设备。根据确定电子设备是移动设备,电子设备可以被识别为第二电子设 备。例如,第一电子设备可以将该电子设备识别为第二电子设备。根据确定 电子设备不是移动设备,电子设备不能被识别为第二电子设备。例如,第一 电子设备可以放弃将该电子设备识别为第二电子设备。
在一些示例中,可以通过确定多个电子设备中的电子设备是否由电源插 座供电来识别第二电子设备。根据确定电子设备由电插座供电,电子设备可 被识别为第二电子设备。例如,第一电子设备可以将该电子设备识别为第二 电子设备。根据确定电子设备不由电插座供电,电子设备不可被识别为第二 电子设备。例如,第一电子设备可以放弃将该电子设备识别为第二电子设备。
在一些示例中,可基于任务来确定第二电子设备。例如,如所描述的, 该任务可以指定一个或多个要求,并且可以选择最适合于根据指定的一个或 多个要求执行任务的电子设备。例如,任务可能需要使用映射服务,因此, 可以确定具有蜂窝和/或互联网连接的设备诸如移动电话。
在框868处,例如可以使用第二电子设备执行该任务。在一些示例中, 第二电子设备不是第一电子设备。
可选地,在使用第二电子设备执行任务之前,提示用户进行输入。以这 种方式提供的输入可包括生物特征输入和/或密码或其他凭据的输入。在一些 示例中,可以使用诸如指纹读取器的生物识别传感器来接收提示的输入。在 接收到提示的输入之后,第二电子设备执行该任务。在一些示例中,识别多 个电子设备中的第三电子设备。第三电子设备可以具有被配置为检测提示输 入的输入接口。
任选地,任务的执行可被延迟,直到满足标准。在一些示例中,该延迟 可由第二电子设备执行。以这种方式依赖的标准可包括针对用户活动和/或一 个或多个电子设备的状态的标准。例如,第一标准可要求用户已经如GPS坐 标所确定的那样停止了驾驶,并且第二标准可包括蓝牙连接性。在一些示例 中,可例如由第二电子设备提供输出,该输出提供用于执行任务的标准。提 供标准的该输出可以是视觉的、听觉的和/或触觉的。
图9A至图9C示出了根据各种示例的用于识别要执行任务的电子设备的 过程。在一些示例中,过程900可使用例如在一个或多个电子设备上实现的 数字助理来采用。在一些示例中,过程900可使用实现数字助理的客户端- 服务器系统(例如,系统100)来执行。应当认识到,过程900的各个框可 以任何适当的方式在一个或多个计算机、系统或电子设备之间分配。例如, 在一些示例中,过程900可完全在电子设备(例如,设备104,200,400)上执行。此外,虽然以下讨论将过程900描述为由数字助理系统(例如,系统 100)执行,但是应当认识到,该过程或该过程的任何特定部分不限于任何特 定设备、设备的组合或具体实施来执行。
在框902处,可在第一电子设备(例如,设备104,200,400)处接收指 示任务的数据。该指示任务的数据可以是表示任务的数据、与任务相对应的 数据、与任务相关联的数据和/或可以其他方式导出任务的数据。指示任务的 该数据可以从第一电子设备的用户接收。在一些示例中,指示任务的数据可 以在与在第一电子设备上实现的相应的或相同的数字助理进行交互的过程中 或作为该交互的一部分被接收。在一些实施方案中,任务被本地解析,并且 在其他实施方案中被远程解析(例如,服务器端)。任务包括但不限于任何 数量的回放、映射、查找和存储功能。在一些示例中,该任务与音频输入相 关联。该音频输入可包括讲话触发(例如“嘿,Siri”)和/或一个或多个用 户请求或命令。
在一些示例中,接收指示任务的数据包括经由第一电子设备的麦克风 (例如,麦克风113)接收音频输入。所接收的音频输入可(例如,使用音 频电路210或一个或多个处理器220)被处理并且被转换成表示形式,诸如 电子信号(数字或模拟)或一个或多个音频文件。响应于接收到该音频输入, 可基于所接收的音频输入来生成指示任务的数据。指示任务的该数据可由第 一电子设备生成。
在一些示例中,接收指示任务的数据包括经由第一电子设备的麦克风 (例如,麦克风113)接收音频输入。表示所接收的音频输入的数据可被提 供(例如,传输)给一个或多个服务器,并且可从一个或多个服务器接收指 示任务的数据。在一些示例中,由一个或多个服务器基于表示所接收的音频 输入的数据来确定任务。
应当认识到,在一些示例中,在框902处可接收文本输入而不是音频输 入。例如,可经由多个电子设备中的一个或多个上的合适的用户界面来接收 来自用户的表示用户请求的文本输入。用于接收文本输入的合适的用户界面 的示例可包括虚拟键盘、手写识别界面、手势识别界面等。
在框914处,确定是第一电子设备还是第二电子设备要执行该任务。在 一些示例中,用第一电子设备进行确定。
在一些示例中,确定是第一电子设备还是第二电子设备要执行该任务包 括根据多个优先化规则来确定任务是与第一电子设备相关联还是与第二电子 设备相关联。在一些示例中,优先化规则可以是特定于任务和/或特定于设备 的。例如,优先化规则可基于每个电子设备的类型、能力和/或使用(例如, 使用的新近性、使用频率、在使用期间执行的任务)来指定哪些设备要执行 相应的任务。根据多个优先化规则来确定任务是与第一电子设备相关联还是 与第二电子设备相关联可包括基于第一电子设备的显示能力、第一电子设备 的移动性或者它们的组合来确定任务是与第一电子设备相关联还是与第二电 子设备相关联。具有较大显示器的电子设备可被确定为执行该任务的电子设 备。又如,该确定可包括基于第一电子设备和第二电子设备的先前使用来确 定该任务是与第一电子设备相关联还是与第二电子设备相关联。最近使用的 电子设备可被确定为执行该任务的电子设备,或者最近执行特定任务的电子 设备可被确定为执行该任务的电子设备。
在框922处,根据确定该任务与第一电子设备相关联,可以用第一电子 设备来执行该任务。
在一些示例中,用第一电子设备执行该任务包括执行与第一用户相关联 的第一任务以及与不同于第一用户的第二用户相关联的第二任务。例如,第 一电子设备可以为第一用户执行歌曲的回放并且为第二用户提供到餐馆的指 示。
在一些示例中,用第一电子设备执行任务包括验证与第一电子设备相关 联的用户。第一电子设备可使用一个或多个凭据(诸如,用户名和密码或数 字键)来验证用户。在至少一个实施方案中,用第一电子设备验证用户包括 接收生物特征输入(例如,指纹)。响应于验证用户,执行任务。
在框932处,根据确定该任务与第二电子设备相关联,使得指示任务的 数据被传输至第二电子设备。例如,使得以这种方式传输数据可包括使用第 二电子设备向第三电子设备提供指示任务的数据,或者可包括使得另一电子 设备向第三电子设备提供指示该任务的数据。
4.附加的示例性电子设备
以上参考图8A至图8E描述的操作任选地由图1A、图2、图4、图 6A至图6B、图7A中描绘的部件来实现。例如,采样操作802、识别操 作806和824、确定操作818以及执行操作868任选地由I/O处理模块728、 STT处理模块730、自然语言处理模块732以及任务流处理模块736来实 现。I/O处理模块728可接收表示用户请求的语音输入,并且可接收与该 语音输入相关联的元数据。STT处理模块730可确定对应于语音输入的 文本串。自然语言处理模块732可基于该元数据来确定是否对文本串执 行自然语言处理。响应于确定要对文本串执行自然语言处理,自然语言 处理模块732可进一步确定元数据是否识别对应于用户请求的一个或多 个域。响应于确定元数据识别对应于用户请求的一个或多个域,自然语 言处理模块732可使用文本串并且基于一个或多个域来生成表示与一个 或多个域相关联的可操作意图的结构化查询。任务流处理模块736可执 行与该结构化查询相关联的任务流。任务流处理模块736可确定是否从 执行任务流获得了满足用户请求的结果。响应于确定从执行任务流获得 了满足用户请求的结果,I/O处理模块728可输出包含该结果的数据内 容。
又如,采样操作802、识别操作806和824、确定操作818以及执行操 作868任选地由数字助理客户端模块229和应用程序236来实现。数字助理 客户端模块229可从麦克风213接收表示用户请求的语音输入。数字助理客 户端模块229可使用RF电路208来传输与语音输入相关联的语音输入和元 数据。该元数据可识别知识本体的一个或多个域,并且该一个或多个域对应 于用户请求。数字助理客户端模块可使用RF电路208来接收数据内容以促进满足用户请求。该数据内容可以从语音输入中导出。数字助理客户端模块 229可确定数据内容是否满足用户请求。响应于确定数据内容满足用户请求, 数字助理客户端模块229和应用程序236可输出基于数据内容的结果。
图10示出了根据各种所述示例的原理进行配置的电子设备1000的功能 框图。该设备的功能块可任选地由执行各种所述示例的原理的硬件、软件、 或硬件和软件的组合来实现。本领域的技术人员应当理解,图10中所述的功 能块可任选地被组合或被分离为子块,以便实现各种所述示例的原理。因此, 本文的描述任选地支持本文所述的功能块的任何可能的组合、分离或进一步 限定。
如图10所示,电子设备1000可包括麦克风1002和耦接到麦克风1002 的处理单元1008。在一些示例中,处理单元1008可包括接收单元1010、确 定单元1012、执行单元1014、引发单元1016,并且任选地包括提供单元1018、 生成单元1020、传输单元1022以及验证单元924。
处理单元1008被配置为在第一电子设备处接收(例如,用接收单元1010) 指示任务的数据,其中该任务与音频输入相关联;用第一电子设备确定(例 如,用确定单元1012)是第一电子设备还是第二电子设备要执行该任务。根 据确定该任务与第一电子设备相关联,用第一电子设备执行(例如,用执行 单元1014)该任务;并且根据确定该任务与第二电子设备相关联,使得(例 如,用引发单元1016)指示该任务的数据被传输到第二电子设备。
在一些示例中,使得指示该任务的数据被提供给第二电子设备包括向第 三电子设备提供(例如,用提供单元1018)指示该任务的数据。
在一些示例中,接收包括在麦克风1002处接收音频输入,并且响应于 接收到该音频输入,用第一电子设备至少部分地基于所接收的音频输入来生 成(例如,用生成单元1020)指示该任务的数据。
在一些示例中,接收包括在麦克风1002处接收音频输入;将表示所接 收的音频输入的数据传输(例如,用传输单元1022)到一个或多个服务器; 以及从一个或多个服务器接收(例如,用接收单元1010)指示任务的数据, 其中该任务由一个或多个服务器基于表示所接收的音频输入的数据来确定。
在一些示例中,确定包括根据多个优先化规则来确定(例如,用确定单 元1012)该任务是与第一电子设备相关联还是与第二电子设备相关联。
在一些示例中,根据多个优先化规则来确定任务是与第一电子设备相关 联还是与第二电子设备相关联包括基于第一电子设备的显示能力、第一电子 设备的移动性或它们的组合来确定(例如,用确定单元1012)该任务是与第 一电子设备相关联还是与第二电子设备相关联。
在一些示例中,根据多个优先化规则确定任务是与第一电子设备相关联 还是与第二电子设备相关联包括基于第一电子设备和第二电子设备的先前使 用来确定(例如,用确定单元1012)该任务是与第一电子设备相关联还是与 第二电子设备相关联。
在一些示例中,用第一电子设备执行任务包括执行(例如,用执行单元 1014)与第一用户相关联的第一任务,并且其中处理单元被进一步配置为用 第一电子设备执行(例如,用执行单元1014)与不同于第一用户的第二用户 相关联的第二任务。
在一些示例中,用第一电子设备执行任务包括验证(例如,用验证单元 1024)与第一电子设备相关联的用户;并且响应于验证用户,执行(例如, 用执行单元1014)该任务。
在一些示例中,验证用户包括接收(例如,用接收单元1010)生物特征 输入。
以上参考图9A至图9C描述的操作任选地由图1A、图2、图4、图 6A至图6B、图7A或图10中描绘的部件来实现。例如,接收操作902、 确定操作914、执行操作922以及引发操作932任选地由I/O处理模块728、 STT处理模块730、自然语言处理模块732以及任务流处理模块736来实 现。I/O处理模块728可接收表示用户请求的语音输入,并且可接收与该 语音输入相关联的元数据。STT处理模块730可确定对应于语音输入的 文本串。自然语言处理模块732可基于该元数据来确定是否对文本串执 行自然语言处理。响应于确定要对文本串执行自然语言处理,自然语言 处理模块732可进一步确定元数据是否识别对应于用户请求的一个或多 个域。响应于确定元数据识别对应于用户请求的一个或多个域,自然语 言处理模块732可使用文本串并且基于一个或多个域来生成表示与该一 个或多个域相关联的可操作意图的结构化查询。任务流处理模块736可 执行与该结构化查询相关联的任务流。任务流处理模块736可确定是否 从执行任务流获得了满足用户请求的结果。响应于确定从执行任务流获
又如,接收操作902、确定操作914、执行操作922以及引发操作932 任选地由数字助理客户端模块229和应用程序236实现。数字助理客户端模 块229可从麦克风213接收表示用户请求的语音输入。数字助理客户端模块 229可使用RF电路208来传输与语音输入相关联的语音输入和元数据。该元 数据可识别知识本体的一个或多个域,并且该一个或多个域对应于用户请求。 数字助理客户端模块可使用RF电路208来接收数据内容以促进满足用户请 求。该数据内容可以从语音输入中导出。数字助理客户端模块229可确定数 据内容是否满足用户请求。响应于确定数据内容满足用户请求,数字助理客 户端模块229和应用程序236可输出基于数据内容的结果。
示例性方法、非暂态计算机可读存储介质、系统以及电子设备在以下项 目中列出:
1.一种从多个电子设备中识别用于执行任务的电子设备的方法,所述 方法包括:
在多个电子设备中的两个或更多个电子设备中的每个电子设 备处用麦克风对音频输入进行采样;
识别多个电子设备中用于确定与采样的音频输入相关联的任 务的第一电子设备。
用该第一电子设备基于采样的音频输入来确定任务;
识别多个电子设备中用于执行该任务的第二电子设备;以及
用该第二电子设备执行该任务,其中该第二电子设备不是该第 一电子设备。
2.根据项目1所述的方法,还包括:
在对音频输入进行采样之后,提供指示已基于采样的音频输入 确定了任务的输出,其中该输出由多个电子设备中除第一电子设备 之外的电子设备提供。
3.根据项目2所述的方法,其中该输出由多个电子设备中除第一电子 设备和第二电子设备之外的电子设备提供。
4.根据项目1至3中任一项所述的方法,其中对音频输入进行采样包 括确定该音频输入是否包括口头触发,并且其中所述方法还包括:
根据确定该音频输入包括口头触发,
提供确认音频输入的采样的第一输出;以及
在对音频输入进行采样之后,提供指示已基于采样的音频输入 确定了任务的输出,
其中第一输出和第二输出具有不同的特征,并且
其中第一输出由两个或更多个电子设备提供。
5.根据项目4所述的方法,其中该口头触发包括预先确定的短语。
6.根据项目1至5中任一项所述的方法,其中识别多个电子设备中用 于确定与采样的音频输入相关联的任务的第一电子设备包括:
确定在两个或更多个电子设备处采样的音频输入中的相应语 音质量。
7.根据项目1至6中任一项所述的方法,其中识别多个电子设备中用 于确定与采样的音频输入相关联的任务的第一电子设备包括:
确定在两个或更多个电子设备处的采样的音频输入的相应声 压级;以及
将两个或更多个电子设备中具有最高声压级的电子设备识别 为第一电子设备。
8.根据项目1至7中任一项所述的方法,其中识别多个电子设备中用 于确定与采样的音频输入相关联的任务的第一电子设备包括:
确定正在对音频输入进行采样的两个或更多个电子设备是否 包括可穿戴电子设备;以及
将该可穿戴电子设备识别为第一电子设备。
9.根据项目1至8中任一项所述的方法,其中识别多个电子设备中用 于执行任务的第二电子设备包括:
确定第一电子设备与多个电子设备中的至少一个其他电子设 备之间的无线通信的信号强度;以及
将具有最高信号强度的电子设备识别为第二电子设备。
10.根据项目1至9中任一项所述的方法,其中识别多个电子设备中用 于执行任务的第二电子设备包括:
获得多个电子设备中的一个电子设备的显示屏尺寸的指示;
确定该指示是否满足任务的要求;
根据确定该指示满足要求,将该电子设备识别为第二电子设 备;以及
根据确定该指示不满足要求,放弃将该电子设备识别为第二电 子设备。
11.根据项目1至10中任一项所述的方法,其中识别多个电子设备中 用于执行任务的第二电子设备包括:
确定多个电子设备中的电子设备是否为移动电子设备;
根据确定该电子设备是移动电子设备,将该电子设备识别为第 二电子设备;以及
根据确定该电子设备不是移动电子设备,放弃将该电子设备识 别为第二电子设备。
12.根据项目1至11中任一项所述的方法,其中识别多个电子设备中 用于执行任务的第二电子设备包括:
确定多个电子设备中的电子设备是否正在由电源插座供电;
根据确定该电子设备正在由电源插座供电,将该电子设备识别 为第二电子设备;以及
根据确定该电子设备未由电源插座供电,放弃将该电子设备识 别为第二电子设备;
13.根据项目1至8中任一项所述的方法,其中识别多个电子设备中用 于执行任务的第二电子设备包括:
基于任务识别第二电子设备。
14.根据项目1至13中任一项所述的方法,还包括:
延迟用第二电子设备执行任务直到满足标准;以及
提供指示用于执行任务的标准的输出。
15.根据项目1至14中任一项所述的方法,还包括:
在用第二电子设备执行任务之前提示用户进行输入,其中该第 二电子设备在接收到提示输入之后执行任务。
16.根据项目15所述的方法,其中在用第二电子设备执行任务之前提 示用户进行输入包括:
识别多个电子设备中的第三电子设备,该第三电子设备具有被 配置为检测提示输入的输入界面。
17.根据项目16所述的方法,其中接收提示输入包括接收生物识别传 感器内的输入。
18.一种从多个电子设备中识别用于执行任务的电子设备的方法,所述 方法包括:
在第一电子设备处接收指示任务的数据,其中该任务与音频输 入相关联;
用第一电子设备确定是第一电子设备还是第二电子设备要执 行任务;
根据确定该任务与第一电子设备相关联,用第一电子设备执行 该任务;以及
根据确定该任务与第二电子设备相关联,使得指示该任务的数 据被传输到第二电子设备。
19.根据项目18所述的方法,其中使得指示该任务的数据被提供给第 二电子设备包括:
将指示该任务的数据提供给第三电子设备。
20.根据项目18至19中任一项所述的方法,其中接收包括:
在第一电子设备的麦克风处接收音频输入;以及
响应于接收到音频输入,至少部分地基于所接收的音频输入, 用第一电子设备生成指示该任务的数据。
21.根据项目18至20中任一项所述的方法,其中接收包括:
在第一电子设备的麦克风处接收音频输入;
将表示所接收的音频输入的数据传输到一个或多个服务器;以 及
从一个或多个服务器接收指示任务的数据,其中该任务由一个 或多个服务器基于表示所接收的音频输入的数据来确定。
22.根据项目18至21中任一项所述的方法,其中确定包括:
根据多个优先化规则来确定该任务是与第一电子设备相关联 还是与第二电子设备相关联。
23.根据项目22所述的方法,其中根据多个优先化规则来确定该任务 是与第一电子设备相关联还是与第二电子设备相关联包括:
基于第一电子设备的显示能力、第一电子设备的移动性或它们 的组合来确定该任务是与第一电子设备相关联还是与第二电子设 备相关联。
24.根据项目22所述的方法,其中根据多个优先化规则来确定该任务 是与第一电子设备相关联还是与第二电子设备相关联包括:
基于第一电子设备和第二电子设备的先前使用来确定该任务 是与第一电子设备相关联还是与第二电子设备相关联。
25.根据项目18至24中任一项所述的方法,其中用第一电子设备执行 该任务包括执行与第一用户相关联的第一任务,并且其中所述方法 还包括:
用第一电子设备执行与不同于第一用户的第二用户相关联的 第二任务。
26.根据项目18至25中任一项所述的方法,其中用第一电子设备执行 该任务包括:
验证与第一电子设备相关联的用户;以及
响应于验证用户,执行任务。
27.根据项目26所述的方法,其中验证用户包括接收生物特征输入。
28.一种存储一个或多个程序的一个或多个非暂态计算机可读存储介 质,所述一个或多个程序包括指令,该指令在由一个或多个处理器 执行时使得所述一个或多个处理器:
在多个电子设备中的两个或更多个电子设备中的每个电子设 备处用麦克风对音频输入进行采样;
识别多个电子设备中用于确定与采样的音频输入相关联的任 务的第一电子设备。
用该第一电子设备基于该采样的音频输入来确定任务;
识别多个电子设备中用于执行该任务的第二电子设备;以及
用第二电子设备执行该任务,其中该第二电子设备不是该第一 电子设备。
29.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个 或多个程序包括指令,所述指令在由电子设备的一个或多个处理器 执行时,致使所述电子设备:
在第一电子设备处接收指示任务的数据,其中该任务与音频输 入相关联;
用第一电子设备确定是第一电子设备还是第二电子设备要执 行任务;
根据确定该任务与第一电子设备相关联,用第一电子设备执行 该任务;以及
根据确定该任务与第二电子设备相关联,使得指示该任务的数 据被传输到第二电子设备。
30.一种系统,包括:
一个或多个处理器;
存储器;和
一个或多个程序,其中所述一个或多个程序存储在所述存储器 中并被配置为由所述一个或多个处理器执行,所述一个或多个程序
包括用于执行以下操作的指令:
在多个电子设备中的两个或更多个电子设备中的每个电 子设备处用麦克风对音频输入进行采样;
识别多个电子设备中用于确定与采样的音频输入相关联 的任务的第一电子设备。
用该第一电子设备基于该采样的音频输入来确定任务;
识别多个电子设备中用于执行该任务的第二电子设备;以 及
用该第二电子设备执行该任务,其中该第二电子设备不是 该第一电子设备。
31.一种电子设备,包括:
一个或多个处理器;
存储器;和
一个或多个程序,其中所述一个或多个程序存储在所述存储器 中并被配置为由所述一个或多个处理器执行,所述一个或多个程序
包括用于执行以下操作的指令:
在第一电子设备处接收指示任务的数据,其中该任务与音 频输入相关联;
用第一电子设备确定是第一电子设备还是第二电子设备 要执行任务;
根据确定该任务与第一电子设备相关联,用第一电子设备 执行该任务;以及
根据确定该任务与第二电子设备相关联,使得指示该任务 的数据被传输到第二电子设备。
32.一种系统,包括:
用于在多个电子设备中的两个或更多个电子设备中的每个电 子设备处用麦克风对音频输入进行采样的装置;
用于识别多个电子设备中用于确定与采样的音频输入相关联 的任务的第一电子设备的装置。
用于用该第一电子设备基于该采样的音频输入来确定任务的 装置;
用于识别多个电子设备中用于执行该任务的第二电子设备的 装置;以及
用于用该第二电子设备执行该任务的装置,其中该第二电子设 备不是该第一电子设备。
33.一种电子设备,包括:
用于在第一电子设备处接收指示任务的数据的装置,其中该任 务与音频输入相关联;
用于用第一电子设备确定是第一电子设备还是第二电子设备 要执行任务的装置;
用于根据确定该任务与第一电子设备相关联,用第一电子设备 执行该任务的装置;以及
用于根据确定该任务与第二电子设备相关联,使得指示该任务 的数据被传输到第二电子设备的装置。
34.一种系统,包括:
一个或多个处理器;
存储器;和
一个或多个程序,其中所述一个或多个程序存储在存储器中并 被配置为由一个或多个处理器执行,所述一个或多个程序包括用于 执行根据项目1至17所述的方法的指令。
35.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个 或多个程序包括指令,该指令在由一个或多个处理器执行时使得所 述一个或多个处理器执行根据项目1至17中任一项所述的方法。
36.一种系统,包括:
用于执行根据项目1至17中任一项所述的方法的装置。
37.一种电子设备,包括:
一个或多个处理器;
存储器;和
一个或多个程序,其中所述一个或多个程序存储在存储器中并 被配置为由一个或多个处理器执行,所述一个或多个程序包括用于 执行根据项目18至27所述的方法的指令。
38.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个 或多个程序包括指令,该指令在由电子设备的一个或多个处理器执 行时使得电子设备执行根据项目18至27中任一项所述的方法。
39.一种电子设备,包括:
用于执行根据项目18至27中任一项所述的方法的装置。
40.一种电子设备,包括:
处理单元,所述处理单元被配置为:
在第一电子设备处接收指示任务的数据,其中该任务与音 频输入相关联;
用第一电子设备确定是第一电子设备还是第二电子设备 要执行任务;
根据确定该任务与第一电子设备相关联,用第一电子设备 执行该任务;并且
根据确定该任务与第二电子设备相关联,使得指示该任务 的数据被传输到第二电子设备。
41.根据项目40所述的电子设备,其中使得指示该任务的数据被提供 给第二电子设备包括:
将指示该任务的数据提供给第三电子设备。
42.根据项目40至41中任一项所述的电子设备,其中接收包括:
在第一电子设备的麦克风处接收音频输入;以及
响应于接收到该音频输入,至少部分地基于所接收的音频输 入,用第一电子设备生成指示该任务的数据。
43.根据项目40至42中任一项所述的电子设备,其中接收包括:
在第一电子设备的麦克风处接收音频输入;
将表示所接收的音频输入的数据传输到一个或多个服务器;以 及
从一个或多个服务器接收指示任务的数据,其中该任务由一个 或多个服务器基于表示所接收的音频输入的数据来确定。
44.根据项目40至43中任一项所述的电子设备,其中确定包括:
根据多个优先化规则来确定该任务是与第一电子设备相关联 还是与第二电子设备相关联。
45.根据项目44所述的电子设备,其中根据多个优先化规则来确定该 任务是与第一电子设备相关联还是与第二电子设备相关联包括:
基于第一电子设备的显示能力、第一电子设备的移动性或它们 的组合来确定该任务是与第一电子设备相关联还是与第二电子设 备相关联。
46.根据项目44所述的电子设备,其中根据多个优先化规则来确定该 任务是与第一电子设备相关联还是与第二电子设备相关联包括:
基于第一电子设备和第二电子设备的先前使用来确定该任务 是与第一电子设备相关联还是与第二电子设备相关联。
47.根据项目40至46中任一项所述的电子设备,其中用第一电子设备 执行任务包括执行与第一用户相关联的第一任务,并且其中处理单 元被进一步配置为:
用第一电子设备执行与不同于第一用户的第二用户相关联的 第二任务。
48.根据项目40至47中任一项所述的电子设备,其中用第一电子设备 执行该任务包括:
验证与第一电子设备相关联的用户;以及
响应于验证用户,执行任务。
49.根据项目48所述的电子设备,其中验证用户包括接收生物特征输 入。
处于解释的目的,已经参考具体实施方案对上述描述进行了描述。然而, 以上的例示性讨论并非旨在穷尽或将本发明限制于所公开的精确形式。根据 以上教导内容,很多修改形式和变型形式都是可能的。选择并描述这些实施 方案是为了最好地解释这些技术的原理及其实际应用。本领域的其他技术人 员由此能够最好地利用这些技术以及具有适合于所设想的特定用途的各种修 改的各种实施方案。
虽然参照附图对本公开以及示例进行了全面的描述,但应当注意,各种 变化和修改对于本领域内的技术人员而言将变得显而易见。应当理解, 此类变化和修改被认为被包括在由权利要求书所限定的本公开和示 例的范围内。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:音量调整方法及电子设备