首页> 中国专利> 使用通信耦接的电子设备来进行位置确定

使用通信耦接的电子设备来进行位置确定

摘要

本公开涉及使用通信耦接的电子设备来进行位置确定。提供了一种用于选择由通信耦接的电子设备提供的位置数据的系统和过程。在一个示例性过程中,第一电子设备可选择由第一电子设备确定的第一位置和由第二电子设备确定的第二位置中的一者作为第一电子设备的位置。该选择可基于以下各项中的一者或多者来进行:第一位置和第二位置被确定的时间、第一位置确定和第二位置确定的精确度、第一位置和第二位置是否相交、与用于确定第一位置和第二位置的来源相关联的优先级、以及由第一电子设备进行的先前位置确定。所选择的位置可被用作第一电子设备的位置,以执行第一电子设备上的应用程序。

著录项

  • 公开/公告号CN112631484A

    专利类型发明专利

  • 公开/公告日2021-04-09

    原文格式PDF

  • 申请/专利权人 苹果公司;

    申请/专利号CN202011481359.7

  • 发明设计人 A·帕瓦;M·B·巴尔;

    申请日2015-09-01

  • 分类号G06F3/0484(20130101);G06F3/0488(20130101);G06F21/54(20130101);G01S5/00(20060101);G01S19/48(20100101);G01S19/49(20100101);G06T11/60(20060101);H04W4/02(20180101);H04W4/80(20180101);

  • 代理机构11038 中国贸促会专利商标事务所有限公司;

  • 代理人吴信刚

  • 地址 美国加利福尼亚

  • 入库时间 2023-06-19 10:32:14

说明书

本申请是申请日为2015年9月1日的、名称为“使用通信耦接的电子设备来进行位置确定”的发明专利申请No.201580047039.1的分案申请。

技术领域

本公开整体涉及使用电子设备来进行位置确定,并且更具体地涉及选择由通信耦接的电子设备提供的位置数据。

背景技术

随着移动电子设备的日益普及,用户携带这些设备中的多于一个设备的情况并不少见。例如,用户可具有移动电话和可穿戴电子设备诸如手表两者。这些设备中的很多设备能够使用各种技术来确定其位置。虽然设备的位置可用于改善在设备上运行的应用程序(诸如地图和导航、天气、互联网浏览、推荐、和其他应用程序)的性能,但是当前的移动电子设备不能彼此高效地工作,而是限于使用由其自身的传感器所生成的位置数据,或者完全依赖由另一设备生成的位置数据。

因此,需要改进的过程用于电子设备之间的交互。

发明内容

本公开涉及一种用于选择由通信耦接的电子设备提供的位置数据的系统和过程。在一个示例性过程中,第一电子设备可选择由第一电子设备确定的第一位置和由第二电子设备确定的第二位置中的一者作为第一电子设备的位置。该选择可基于以下各项中的一者或多者来进行:第一位置和第二位置被确定的时间、第一位置确定和第二位置确定的精确度、第一位置和第二位置是否相交、与用于确定第一位置和第二位置的来源相关联的优先级、以及由第一电子设备进行的先前位置确定。所选择的位置可被用作第一电子设备的位置,以执行第一电子设备上的应用程序。

附图说明

图1A是示出根据一些示例的具有触敏显示器的便携式多功能设备的框图。

图1B是示出根据一些示例的用于事件处理的示例性部件的框图。

图2示出了根据一些示例的具有触敏显示器的便携式多功能设备。

图3是根据一些示例的具有显示器和触敏表面的示例性多功能设备的框图。

图4A和图4B示出了根据一些示例的用于便携式多功能设备上的应用程序的菜单的示例性用户界面。

图5A是示出根据一些示例的具有触敏显示器的便携式多功能设备的框图。

图5B示出了根据一些示例的具有触敏显示器的便携式多功能设备。

图6示出了根据各种示例的用于选择由通信耦接的电子设备提供的位置数据的示例性系统的框图。

图7示出了根据各种示例的用于选择由通信耦接的电子设备提供的位置数据的示例性过程。

图8示出了根据各种示例的用于选择由通信耦接的电子设备提供的位置数据的另一示例性过程。

图9是根据一些示例的电子设备的功能框图。

具体实施方式

以下描述阐述了示例性方法、参数等。然而,应当认识到,此类描述并非意在限制本公开的范围,而是作为对示例性实施方案的描述来提供。

本公开涉及一种用于选择由通信耦接的电子设备提供的位置数据的系统和过程。在一个示例性过程中,第一电子设备可选择由第一电子设备确定的第一位置和由第二电子设备确定的第二位置中的一者作为第一电子设备的位置。该选择可基于以下各项中的一者或多者来进行:第一位置和第二位置被确定的时间、第一位置确定和第二位置确定的精确度、第一位置和第二位置是否相交、与用于确定第一位置和第二位置的来源相关联的优先级、以及由第一电子设备进行的先前位置确定。所选择的位置可被用作第一电子设备的位置,以执行第一电子设备上的应用程序。

下面,图1A至图1B、图2、图3、和图5A至图5B提供了对用于执行用于选择由通信耦接的电子设备提供的位置数据的技术的示例性设备的描述。图4A至图4B示出了可被显示在这些示例性设备上的示例性用户界面。

尽管以下描述使用术语第一、第二等来描述各种元件,但这些元件不应受术语的限制。这些术语只是用于将一个元件与另一元件区分开。例如,第一触摸可被命名为第二触摸并且类似地第二触摸可被命名为第一触摸,而不脱离各种所述实施方案的范围。第一触摸和第二触摸两者都是触摸,但是它们不是同一触摸。

在本文中对各种所述实施方案的描述中所使用的术语只是为了描述特定实施方案的目的,而并非旨在进行限制。如在对各种所述实施方案中的描述和所附权利要求书中所使用的那样,单数形式“一个”(“a”,“an”)和“该”旨在也包括复数形式,除非上下文另外明确地指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”(“includes”,“including”,“comprises”和/或“comprising”)当在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元素和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件和/或其分组。

根据上下文,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。

本文描述了电子设备、此类设备的用户界面和使用此类设备的相关联的过程的实施方案。在一些实施方案中,该设备是还包含其他功能诸如PDA和/或音乐播放器功能的便携式通信设备诸如移动电话。便携式多功能设备的示例性实施方案包括但不限于来自Apple Inc.(Cupertino,California)的

在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而,应当理解,该电子设备任选地包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。

设备可支持多种应用程序,诸如以下应用程序中的一个或多个应用程序:绘图应用程序、呈现应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字视频相机应用程序、web浏览应用程序、数字音乐播放器应用程序、和/或数字视频播放器应用程序。

在设备上执行的各种应用程序任选地使用至少一个共用的物理用户界面设备诸如触敏表面。触敏表面的一种或多种功能以及被显示在设备上的对应信息任选地对于不同应用程序被调整和/或变化和/或在相应应用程序内被调整和/或变化。这样,设备的共用物理架构(诸如触敏表面)任选地利用对于用户而言直观且清楚的用户界面来支持各种应用程序。

现在关注具有触敏显示器的便携式设备的实施方案。图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上生成触觉输出的一个或多个触觉输出发生器167(例如,在触敏表面诸如设备100的触敏显示器系统112或设备300的触摸板355上生成触觉输出)。这些部件任选地通过一个或多个通信总线或信号线103来进行通信。

如在本说明书和权利要求书中所使用,术语触敏表面上的接触的“强度”是指触敏表面上的接触(例如,手指接触)的力或压力(每单位面积的力),或是指触敏表面上的接触的力或压力的替代物(代用物)。接触的强度具有值范围,该值范围包括至少四个不同的值并且更典型地包括上百个不同的值(例如,至少256个)。接触的强度任选地使用各种方法和各种传感器或传感器的组合来确定(或测量)。例如,在触敏表面下方或相邻于触敏表面的一个或多个力传感器任选地用于测量触敏表面上的不同点处的力。在一些具体实施中,来自多个力传感器的力测量被合并(例如,加权平均)以确定估计的接触力。类似地,触笔的压敏顶端任选地用于确定触笔在触敏表面上的压力。另选地,在触敏表面上检测到的接触面积的大小和/或其变化、邻近接触的触敏表面的电容和/或其变化、和/或邻近接触的触敏表面的电阻和/或其变化任选地被用作触敏表面上的接触的力或压力的替代物。在一些具体实施中,接触力或压力的替代物测量直接用于确定是否已超过强度阈值(例如,强度阈值是以与替代物测量对应的单位来描述的)。在一些具体实施中,将接触力或压力的替代测量值转换为预估力或压力,并且使用预估力或压力确定是否已超过强度阈值(例如,强度阈值是以压力单位测量的压力阈值)。使用接触的强度作为用户输入的属性,从而允许用户访问用户在尺寸更小的设备上可能本来不能访问的附加设备功能,该尺寸更小的设备具有有限的实地面积用于(例如,在触敏显示器上)显示示能表示和/或接收用户输入(例如,经由触敏显示器、触敏表面或物理控件/机械控件,诸如旋钮或按钮)。

如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户对触摸敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下,通过物理位移生成的触觉输出将由用户解释为触感,该触感与设备或设备的部件的物理特征的所感知的变化对应。例如,触敏表面(例如,触敏显示器或触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开点击”,即使在通过用户的移动而物理地被按压(例如,被移位)的与触敏表面相关联的物理致动按钮没有移动时。作为另一个示例,即使在触敏表面的光滑度无变化时,触敏表面的移动也会任选地由用户解释为或感测为触敏表面的“粗糙度”。虽然由用户对触摸的此类解释将受到用户的个体化感官知觉的限制,但是存在触摸的许多感官知觉是大多数用户共有的。因此,当触觉输出被描述为与用户的特定感官知觉(例如,“松开点击”、“按下点击”、“粗糙度”)对应时,除非另外陈述,否则所生成的触觉输出与设备或其部件的物理位移对应,该物理位移将会生成典型(或普通)用户的所描述的感官知觉。

应当理解,设备100仅是便携式多功能设备的一个示例,并且设备100任选地具有比所示出的更多或更少的部件,任选地组合两个或更多个部件,或者任选地具有这些部件的不同配置或布置。图1A中所示的各种部件以硬件、软件、或硬件与软件两者的组合来实现,包括一个或多个信号处理电路和/或专用集成电路。

存储器102可包括一个或多个计算机可读存储介质。该计算机可读存储介质可以是有形的和非暂态的。存储器102可以包括高速随机存取存储器,并且还可包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备、或其他非易失性固态存储器设备。存储器控制器122可控制设备100的其他部件访问存储器102。

外围设备接口118可被用于将设备的输入外围设备和输出外围设备耦接到CPU120和存储器102。所述一个或多个处理器120运行或执行存储在存储器102中的各种软件程序和/或指令集以执行设备100的各种功能并处理数据。在一些示例中,外围设备接口118、CPU 120、和存储器控制器122可在单个芯片诸如芯片104上实现。在一些其他示例中,它们可在单独的芯片上实现。

RF(射频)电路108接收和发送也被叫做电磁信号的RF信号。RF电路108将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号来与通信网络以及其他通信设备进行通信。RF电路108任选地包括用于执行这些功能的熟知的电路,包括但不限于天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模块(SIM)卡、存储器等等。RF电路108任选地通过无线通信与网络以及其他设备进行通信,该网络为诸如互联网(也被称为万维网(WWW))、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))。无线通信任选地使用多种通信标准、协议和技术中的任何一种,包括但不限于全球移动通信系统(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和/或IEEE 802.11n)、互联网协议语音技术(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进行检索和/或被传输至存储器102和/或RF电路108。在一些实施方案中,音频电路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即美国专利No.7,657,849中所述的,上述美国专利申请据此全文以引用方式并入本文。更长地按下下压按钮(例如206)可使设备100开机或关机。用户能够对一个或多个按钮的功能进行自定义。触摸屏112用于实现虚拟按钮或软按钮以及一个或多个软键盘。

触敏显示器112提供设备和用户之间的输入接口和输出接口。显示控制器156从触摸屏112接收电信号和/或将电信号发送至触摸屏112。触摸屏112向用户显示视觉输出。视觉输出可包括图形、文本、图标、视频及它们的任意组合(统称为“图形”)。在一些示例中,一些视觉输出或全部的视觉输出可对应于用户界面对象。

触摸屏112具有基于触觉和/或触感接触来接受来自用户的输入的触敏表面、传感器、或传感器组。触摸屏112和显示控制器156(与存储器102中的任何相关联的模块和/或指令集一起)检测触摸屏112上的接触(和该接触的任何移动或中断),并且将所检测到的接触转换为与被显示在触摸屏112上的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。在一个示例性实施方案中,触摸屏112和用户之间的接触点对应于用户的手指。

触摸屏112可使用LCD(液晶显示器)技术、LPD(发光聚合物显示器)技术、或LED(发光二极管)技术,但是在其他实施方案中可使用其他显示技术。触摸屏112和显示控制器156可使用现在已知的或以后将开发出的多种触摸感测技术中的任何触摸感测技术以及其他接近传感器阵列或用于确定与触摸屏112的一个或多个接触点的其他元件来检测接触及其任何移动或中断,该多种触摸感测技术包括但不限于电容性技术、电阻性技术、红外技术和表面声波技术。在一个示例性实施方案中,使用投射式互电容感测技术,诸如在Apple Inc.(Cupertino,California)的

触摸屏112的一些实施方案中的触敏显示器可类似于以下美国专利中所述的多点触敏触摸板:6,323,846(Westerman等人)、6,570,557(Westerman等人)和/或6,677,932(Westerman);和/或美国专利公开2002/0015024A1,这些专利文献中的每个专利文献据此全文以引用方式并入本文。然而,触摸屏112显示来自设备100的视觉输出,而触敏触摸板不提供视觉输出。

触摸屏112的一些实施方案中的触敏显示器可如在以下专利申请中那样进行描述:(1)于2006年5月2日提交的美国专利申请11/381,313,“Multipoint Touch SurfaceController”;(2)于2004年5月6日提交的美国专利申请10/840,862,“MultipointTouchscreen”;(3)于2004年7月30日提交的美国专利申请10/903,964,“Gestures ForTouch Sensitive Input Devices”;(4)于2005年1月31日提交的美国专利申请11/048,264,“Gestures For Touch Sensitive Input Devices”;(5)于2005年1月18日提交的美国专利申请11/038,590,“Mode-Based Graphical User Interfaces For Touch SensitiveInput Devices”;(6)于2005年9月16日提交的美国专利申请11/228,758,“Virtual InputDevice Placement On A Touch Screen User Interface”;(7)于2005年9月16日提交的美国专利申请11/228,700,“Operation Of A Computer With A Touch Screen Interface”;(8)于2005年9月16日提交的美国专利申请11/228,737,“Activating Virtual Keys Of ATouch-Screen Virtual Keyboard”;和(9)于2006年3月3日提交的美国专利申请11/367,749,“Multi-Functional Hand-Held Device”。所有这些专利申请均全文以引用方式并入本文。

触摸屏112可以具有超过100dpi的视频分辨率。在一些实施方案中,触摸屏具有约160dpi的视频分辨率。用户可使用任何合适的物体或附加物诸如触笔、手指等等来与触摸屏112接触。在一些实施方案中,用户界面被设计用于主要与基于手指的接触和手势工作,由于手指在触摸屏上的接触区域较大,因此这可能不如基于触笔的输入精确。在一些实施方案中,设备将基于手指的粗略输入翻译为精确的指针/光标位置或命令,以用于执行用户所期望的动作。

在一些实施方案中,除了触摸屏之外,设备100可包括用于激活或去激活特定功能的触摸板(未示出)。在一些实施方案中,触摸板是设备的触敏区域,该触敏区域与触摸屏不同,其不显示视觉输出。触摸板可以是与触摸屏112分开的触敏表面,或者是由触摸屏形成的触敏表面的延伸部分。

设备100还包括用于为各种部件供电的电力系统162。电力系统162可包括电力管理系统、一个或多个电源(例如,电池、交流电(AC))、再充电系统、电力故障检测电路、功率变换器或逆变器、电源状态指示器(例如,发光二极管(LED))和与便携式设备中的电力的生成、管理和分配相关联的任何其他部件。

设备100也可包括一个或多个光学传感器164。图1A和图1B示出了耦接到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和图1B示出了耦接到外围设备接口118的接近传感器166。另选地,接近传感器166可耦接至I/O子系统106中的输入控制器160。接近传感器166可如以下美国专利申请中所述的那样执行:11/241,839,标题为“Proximity Detector In Handheld Device”;11/240,788,标题为“Proximity DetectorIn Handheld Device”;11/620,702,标题为“Using Ambient Light Sensor To AugmentProximity Sensor Output”;11/586,862,标题为“Automated Response To And SensingOf User Activity In Portable Devices”;和11/638,251,标题为“Methods And SystemsFor 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和图1B示出了耦接到外围设备接口118的加速度计168。另选地,加速度计168可耦接至I/O子系统106中的输入控制器160。加速度计168可如以下美国专利公开中所述的那样执行:20050190059,“Acceleration-basedTheft Detection System for Portable Electronic Devices,”和20060017692,“Methods And Apparatuses For Operating A Portable Device Based On AnAccelerometer”,这两个美国专利公开均全文以引用方式并入本文。在一些实施方案中,基于对从该一个或多个加速度计所接收的数据的分析来在触摸屏显示器上以纵向视图或横向视图显示信息。设备100任选地除了一个或多个加速度计168之外还包括磁力仪(未示出)和GPS(或GLONASS或其他全球导航系统)接收器(未示出),以用于获取关于设备100的位置和取向(例如,纵向或横向)的信息。

在一些实施方案中,被存储在存储器102中的软件部件包括操作系统126、通信模块(或指令集)128、接触/运动模块(或指令集)130、图形模块(或指令集)132、文本输入模块(或指令集)134、全球定位系统(GPS)模块(或指令集)135以及应用程序(或指令集)136。此外,在一些示例中,存储器102存储设备/全局内部状态157,如图1A、1B和3中所示。设备/全局内部状态157包括以下各项中的一者或多者:活动应用程序状态,该活动应用程序状态用于指示哪些应用程序(如果有的话)当前是活动的;显示状态,该显示状态用于指示什么应用程序、视图或其他信息占据触摸屏显示器112的各个区域;传感器状态,该传感器状态包括从设备的各个传感器和输入控制设备116获得的信息;和关于设备位置和/或姿态的位置信息。

操作系统126(例如,Darwin、RTXC、LINUX、UNIX、OS X、iOS、WINDOWS、或嵌入式操作系统诸如VxWorks)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件和/或驱动程序,并且促进各种硬件部件和软件部件之间的通信。

通信模块128促进通过一个或多个外部端口124来与其他设备进行通信,并且还包括用于处理由RF电路108和/或外部端口124所接收的数据的各种软件部件。外部端口124(例如,通用串行总线(USB)、火线等)适于直接耦接到其他设备或者间接地通过网络(例如,互联网、无线LAN等)进行耦接。在一些示例中,外部端口是与

接触/运动模块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、和需要文本输入的任何其他应用程序)中输入文本的软键盘。

GPS模块135确定设备的位置并提供该信息以在各种应用程序中使用(例如,提供给电话138以在基于位置的拨号中使用,提供给相机143作为图片/视频元数据,以及提供给提供基于位置的服务的应用程序,诸如天气桌面小程序、当地黄页桌面小程序和地图/导航桌面小程序)。

应用程序136可包括以下模块(或指令集)或者其子组或超集:

·联系人模块137(有时也称为通讯录或联系人列表);

·电话模块138;

·视频会议模块139;

·电子邮件客户端模块140;

·即时消息(IM)模块141;

·健身支持模块142;

·用于静态图像和/或视频图像的相机模块143;

·图像管理模块144;

·视频播放器模块145;

·音乐播放器模块146;

·浏览器模块147;

·日历模块148;

·桌面小程序模块149,其可包括以下各项中的一者或多者:天气桌面小程序149-1、股市桌面小程序149-2、计算器桌面小程序149-3、闹钟桌面小程序149-4、词典桌面小程序149-5、和由用户获取的其他桌面小程序以及用户创建的桌面小程序149-6;

·用于生成用户创建的桌面小程序149-6的桌面小程序创建器模块150;

·搜索模块151;

·视频和音乐播放器模块152,其合并视频播放器模块145和音乐播放器模块146;

·记事本模块153;

·地图模块154;和/或

·在线视频模块155。

可被存储在存储器102中的其他应用程序136的示例包括其他文字处理应用程序、其他图像编辑应用程序、绘图应用程序、呈现应用程序、支持JAVA的应用程序、加密、数字权益管理、语音识别和语音复制。

结合触摸屏112、显示控制器156、接触模块130、图形模块132、和文本输入模块134,联系人模块137可被用于管理通讯录或联系人列表(例如存储在存储器102或存储器370中的联系人模块137的应用程序内部状态192中),包括:将一个或多个姓名添加到通讯录;从通讯录删除一个或多个姓名;使一个或多个电话号码、一个或多个电子邮件地址、一个或多个物理地址或其他信息与姓名相关联;使图像与姓名相关联;对姓名归类和分类;提供电话号码或电子邮件地址以发起和/或促成通过电话138、视频会议139、电子邮件140、或IM 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、和音乐播放器模块146,健身支持模块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 User Interface forPlaying Online Videos”的美国临时专利申请No.60/936,562、和于2007年12月31日提交的标题为“Portable Multifunction Device,Method,and Graphical User Interfacefor Playing Online Videos”的美国专利申请No.11/968,067中找到,这两个专利申请的内容据此全文以引用方式并入。

每个上述模块和应用程序对应于用于执行上述一种或多种功能以及本专利申请所述的方法(例如,本文所述的计算机实现的方法和其他信息处理方法)的可执行指令集。这些模块(例如指令集)不必实施为单独的软件程序、过程或模块,并且因此在各种示例中,这些模块的各种子集可组合或以其他方式重新布置。例如,视频播放器模块145可与音乐播放器模块146组合成单个模块(例如图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显示的信息的用户界面状态信息、用于使得用户能够返回到应用程序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将命中视图识别为应对子事件进行处理的分级结构中的最低视图。在大多数情况下,命中视图是发起子事件(例如,形成事件或潜在事件的子事件序列中的第一子事件)在其中发生的最低水平视图。一旦命中视图被命中视图确定模块所识别,命中视图通常接收与其被识别为命中视图所针对的同一触摸或输入源相关的所有子事件。

活动事件识别器确定模块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中所使用的电话号码进行更新,或者对视频播放器模块145中所使用的视频文件进行存储。在一些实施方案中,对象更新器177创建和更新在应用程序136-1中使用的对象。例如,对象更新器176创建新的用户界面对象或更新用户界面对象的位置。GUI更新器178更新GUI。例如,GUI更新器178准备显示信息并将其发送至图形模块132以用于在触敏显示器上显示。

在一些实施方案中,一个或多个事件处理程序190包括数据更新器176、对象更新器177和GUI更新器178或者具有对数据更新器176、对象更新器177和GUI更新器178的访问权限。在一些实施方案中,数据更新器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上实现的用户界面(“UI”)的示例。

图4A示出了根据一些示例的便携式多功能设备100上的应用程序菜单的示例性用户界面。类似的用户界面可在设备300上实现。在一些实施方案中,用户界面400包括以下元素或者其子集或超集:

·一个或多个无线通信(诸如蜂窝信号和Wi-Fi信号)的一个或多个信号强度指示符402;

·时间404;

·蓝牙指示符405;

·电池状态指示符406;

·具有常用应用程序图标的托盘408,该常用应用程序图标诸如:

ο电话模块138的被标记为“电话”的图标416,该图标任选地包括未接来电或语音留言的数量的指示符414;

ο电子邮件客户端模块140的被标记为“邮件”的图标418,该图标任选地包括未读电子邮件的数量的指示符410;

ο浏览器模块147的被标记为“浏览器”的图标420;和

ο视频和音乐播放器模块152的被标记为“iPod”的图标422,视频和音乐播放器模块152也被称为iPod(Apple Inc.的商标)模块152;和

·其他应用程序的图标,该其他应用程序的图标诸如:

ο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上的不同的用户界面操作。如这里所用,触摸屏504(或触敏表面)上的接触(或触摸)的“强度”这一术语是指触摸屏上的触摸(例如手指)的力或压力(每单位面积的力)。

例如,可在如下相关专利申请中找到用于检测和处理触摸强度的技术:于2013年5月8日提交的标题为“Device,Method,and Graphical User Interface for DisplayingUser Interface Objects Corresponding to an Application”的国际专利申请No.PCT/US2013/040061,以及于2013年11月11日提交的标题为“Device,Method,and GraphicalUser Interface for Transitioning Between Touch Input to Display OutputRelationships”的国际专利申请No.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、Bluetooth

在一些示例中,输入机构508可以是麦克风。计算设备500可包括各种传感器,诸如GPS传感器532、加速度计534、定向传感器540(例如,罗盘)、陀螺仪536、运动传感器538和/或其组合,所有这些设备均可操作性地连接到I/O部分514。

计算设备500的存储器518可以是用于存储计算机可执行指令的非暂态计算机可读存储介质,该指令当由一个或多个计算机处理器516执行时例如可使得计算机处理器执行上述技术,包括过程700和800(图7至图8)。该计算机可执行指令也可在任何非暂态计算机可读存储介质内进行存储和/或传送,以供指令执行系统、装置或设备诸如基于计算机的系统、包含处理器的系统或可从指令执行系统、装置或设备取指令并执行指令的其他系统使用或与其结合。对于本文的目的而言,“非暂态计算机可读存储介质”可以是可有形地包含或存储计算机可执行指令以供指令执行系统、装置或设备使用或与其结合的任何介质。非暂态计算机可读存储介质可包括但不限于磁存储装置、光学存储装置和/或半导体存储装置。此类存储装置的示例包括磁盘、基于CD、DVD或Blu-ray技术的光盘、以及持久性固态存储器诸如闪存、固态驱动器等。计算设备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%或某个合理比例)。因此,在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于对应于按压输入强度阈值的滞后强度阈值,并且响应于检测到相应接触的强度随后减小到低于滞后强度阈值(例如,相应按压输入的“向上冲程”)来执行相应操作。类似地,在一些实施方案中,仅在设备检测到接触的强度从等于或低于滞后强度阈值的强度增大到等于或高于按压输入强度阈值的强度并且任选地接触的强度随后减小到等于或低于滞后强度的强度时才检测到按压输入,并且响应于检测到按压输入(例如,根据环境,接触的强度增大或接触的强度减小)来执行相应操作。

为了容易解释,任选地,响应于检测到以下各种情况中的任一种情况而触发对响应于与按压输入强度阈值相关联的按压输入或响应于包括按压输入的手势而执行的操作的描述:接触强度增大到高于按压输入强度阈值、接触强度从低于滞后强度阈值的强度增大到高于按压输入强度阈值的强度、接触强度减小到低于按压输入强度阈值、和/或接触强度减小到低于与按压输入强度阈值对应的滞后强度阈值。另外,在将操作描述为响应于检测到接触强度减小到低于按压输入强度阈值而执行的示例中,任选地响应于检测到接触的强度减小到低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行操作。

如本文所用,“已安装的应用程序”是指已下载到电子设备(例如,设备100、300和/或500)上并准备好在设备上启动(例如,变为打开的)的软件应用程序。在一些实施方案中,下载的应用程序利用安装程序而变为已安装的应用程序,已安装的应用程序从下载的软件包提取程序部分并将提取的部分与计算机系统的操作系统集成。

如本文所用,术语“打开的应用程序”或“执行中的应用程序”是指具有保持状态信息(例如,作为设备/全局内部状态157和/或应用程序内部状态192的一部分)的软件应用程序。打开的或执行中的应用程序是以下类型的应用程序中的任一个应用程序:

·当前显示于正使用应用程序的设备的显示屏上的活动应用程序;

·当前未显示但用于应用程序的一个或多个进程正在由一个或多个处理器处理的后台应用程序(或后台进程);和

·没有运行但具有被存储在存储器(分别有易失性和非易失性的)中并可用于恢复应用程序的执行的状态信息的暂停的或休眠的应用程序。

如本文所用,术语“关闭的应用程序”是指不具有保持状态信息的软件应用程序(例如,关闭的应用程序的状态信息不被存储在设备的存储器中)。因此,关闭应用程序包括停止和/或移除应用程序的应用程序过程以及从设备的存储器移除应用程序的状态信息。一般来讲,当在第一应用程序中时打开第二应用程序并不关闭第一应用程序。在显示第二应用程序并且第一应用程序停止被显示时,第一应用程序变为后台应用程序。

图6示出了根据各种示例的用于选择由通信耦接的电子设备提供的位置数据的示例性系统600。系统600可包括第一用户设备602和第二用户设备604,它们各自可包括能够使用一个或多个位置确定技术(例如GPS、GLONASS、Wi-Fi、蜂窝等)确定其位置的任意类型的电子设备,诸如设备100,300或500。在一些示例中,第一用户设备602和第二用户设备604可被配置为响应于用户请求、响应于在设备上运行的应用程序的请求、或者周期性地、间歇性地、或按任何其他期望的频率或时间间隔来确定其各自的位置。第一用户设备602和/或第二用户设备604还可被配置为将其位置确定的一部分或全部传输给另一用户设备。这可响应于由另一设备进行的请求、响应于生成位置确定、或者周期性地、间歇性地或按任何其他期望的频率或时间间隔来进行。所确定的位置可经由直接通信连接608(例如蓝牙、NFC、BTLE等)或经由网络604在设备之间传输,该网络可包括互联网、Wi-Fi局域网、或任何其他有线或无线公共或专用网络。虽然在图6中只示出了两个用户设备602和604,但应当理解,系统600可包括任意数量和类型的用户设备。

如下文参考图7和图8详细所述,系统600可有利地用于通过允许设备选择性地使用由任一设备所确定的位置而改善由每个用户设备所提供的位置确定服务。这在一个用户设备具有有限的位置确定能力和/或有限的电池电力(诸如手表或其他紧凑电子设备)时特别有利。在这些情况下,用户设备可使用其自身的位置确定或可使用由可能能够生成更好位置结果和/或可能具有更多电池电力来操作其位置确定电路的另一附近电子设备(诸如移动电话、平板电脑等)进行的位置确定。

图7示出了根据各种示例的用于选择由通信耦接的电子设备提供的位置数据的示例性过程700。在一些示例中,过程700可使用与设备100,300,500,602或604类似或相同的电子设备来执行。

在框702处,第一电子设备的一个或多个处理器(例如处理器120、一个或多个CPU310或一个或多个处理器516)可接收对于第一电子设备的位置的请求。在一些示例中,该请求可源自在第一电子设备上运行的进程或软件应用程序,诸如地图和导航应用程序、互联网浏览器、天气应用程序或需要电子设备位置信息的任何其他应用程序。

在框704处,第一电子设备的一个或多个处理器可使用任何期望的位置确定技术诸如GPS或GLONASS(例如利用GPS模块135、传感器359或GPS传感器532)、Wi-Fi或蜂窝(例如使用RF电路108、网络通信接口360或通信单元530)等来确定设备的第一位置。例如,第一电子设备可从GPS卫星、附近Wi-Fi基站、和/或附近蜂窝塔接收位置信息,如以下美国专利申请所述:于2008年2月29日提交的标题为“Location Determination”的12/040,283、于2008年4月15日提交的标题为“Location Determination Using Formula”的12/103,330、和于2008年5月16日提交的标题为“Location Determination”的12/122,339,这些美国专利申请中的每个全专利申请文以引用方式并入本文以用于所有目的。第一电子设备可将所确定的第一位置与相关联的元数据一起存储在第一电子设备上的存储器中,该元数据诸如第一位置被确定的时间、所确定的第一位置的精确度或误差容限、用于确定位置的数据源(例如GPS、GLONASS、Wi-Fi、蜂窝等)等等。在一些示例中,存储器还可存储由第一电子设备确定的一个或多个先前位置及其相关联的元数据。

在框706处,第一电子设备可从第二电子设备接收由第二电子设备确定的第二位置。在一些示例中,第一电子设备还可接收与所确定的第二位置相关联的元数据,诸如第二位置被确定的时间、所确定的第二位置的精确度或误差容限、用于确定第二位置的数据源(例如GPS、GLONASS、Wi-Fi、蜂窝等)等等。第一电子设备可经由任何直接(例如直接通信连接608)或间接(例如经由网络604)通信连接(例如利用RF电路108、网络通信接口360或通信单元530)来接收第二位置。在一些示例中,第二位置可由第二电子设备响应于来自第一电子设备的请求而传输给第一电子设备。例如,在第一电子设备上运行的需要用户的位置的应用程序可使得第一电子设备向第二电子设备传输针对位置的请求。作为响应,第二电子设备可将第二位置传输给第一电子设备。在其他示例中,第二电子设备可周期性地、间歇性地或者以任何其他期望频率或时间间隔传输由第二电子设备确定的经更新的位置。例如,第二用户设备可被配置为周期性地、间歇性地或者以任何其他期望频率或时间间隔确定第二电子设备的经更新的位置,并且可以相同或不同频率或时间间隔来将经更新的位置传输给第一电子设备。第一电子设备可将所接收的第二位置与相关联的元数据一起存储在第一电子设备上的存储器中。在一些示例中,存储器还可存储由第二电子设备确定的一个或多个先前位置及其相关联的元数据。

在框708处,第一电子设备的一个或多个处理器可选择由第一电子设备确定的第一位置或由第二电子设备确定的第二位置中的一者来作为第一电子设备的位置。第一电子设备的一个或多个处理器可以多种方式在第一位置和第二位置之间进行选择,但通常可包括确定哪个位置更可能精确地代表第一电子设备的位置。在一些示例中,类似于图8所示过程800的过程可由第一电子设备执行,以选择第一位置和第二位置中的一者。

在过程800的框802处,可确定第一位置被确定的时间(T

在框804处,可确定所确定的第一位置的精确度(精确度

在框806处,可确定来自第一位置(位置1)的第一误差阈值距离内的第一区域是否与来自第二位置(位置2)的第二误差阈值距离内的第二区域相交。第一误差阈值可代表所确定的第一位置的误差容限或精确度,并且第二误差阈值可代表所确定的第二位置的误差容限或精确度。第一误差阈值和第二误差阈值可相同或不同。例如,第一误差阈值可为5米,而第二误差阈值可为10米。在该示例中,框806可包括确定第一位置的5米内的区域是否与第二位置的10米内的区域相交。如果确定第一区域不与第二区域的至少一部分相交,则过程800可前进到框814,在框814处可选择第一位置。这个条件可代表第一电子设备与第二电子设备相距某位置(例如这些设备位于用户房屋的相对两侧)的情况。在这种情况下,第一电子设备的位置可以是优选的,因为其可更可能精确地代表第一电子设备的位置。作为另外一种选择,相反如果确定第一区域与第二区域的至少一部分相交,则过程800可前进到框808。在这种情况下,设备可能靠近在一起,并且第二位置可能是第一电子设备的实际位置的精确表示。

在框808处,可确定第一位置的第一来源的优先级(优先级

在框810处,可确定由第一电子设备确定的预先确定的数量的先前位置是否不正确超过阈值距离和/或是否具有比阈值量大的误差容限。这可被执行以基于不正确测量的历史来确定由第一电子设备所确定的最新近位置(第一位置)是否可能不正确。可根据所确定的第一位置正确或位于与第一电子设备的实际位置相距期望距离内的期望置信度来将先前位置的预先确定的数量、阈值距离和误差容限选择为任何期望值。如果确定由第一电子设备确定的预先确定的数量的先前位置未不正确超过阈值距离和/或不具有比阈值量大的误差容限,则过程800可前进到框814,在框814处可选择第一位置。作为另外一种选择,相反如果确定由第一电子设备确定的预先确定的数量的先前位置不正确超过阈值距离和/或具有比阈值量大的误差容限,则过程800可前进到框812,在框812处可选择第二位置。

虽然图8将框802,804,806,808和810示为按特定次序执行,但应当理解,这些框可按任意次序执行,并且某些框不必执行。例如,在一些示例中,方法800可只包括框802,804,806,808和810中的一个框,并且可仅基于与该框相关联的标准来选择第一位置或第二位置。在其他示例中,框802,804,806,808和810中的2个、3个、4个或5个框可被包括在过程800中,并且可按任意次序执行或者同时执行。在这些示例中,如果在框802,804,806,808和810中的一个框处的判定不导致过程800前进到框814,则过程可前进到框802,804,806,808和810中的下一个框,除非当前框是使过程800可前进到框812的最后一个框。

在一些示例中,不是使用如图8所示的基于规则的系统选择第一位置或第二位置,而是可使用概率系统。在这些示例中,与框802,804,806,808和810相关联的那些标准类似或相同的标准可被评估并且用于增大或减小应选择第一位置(或第二位置)的可能性。例如,使过程800前进到框814的条件可增大应选择第一位置的概率,而使过程800前进到框804,806,808,810或812的条件可减小应选择第一位置的概率和/或增大应选择第二位置的概率。每个标准使概率增大或减小的量可被选择为任何期望的预先确定的值或可调节的值。在一些示例中,每个标准使概率增大或减小的量对于每个标准均可为相同的,或者对于一些或全部不同标准是不同的。在其他示例中,每个标准使概率增大或减小的量可取决于被评估的标准的值。例如,应选择第一位置的可能性提高的量对于框802处(T

重新参考图7,在框708处选择第一位置或第二位置之后,过程700可前进到框710。在框710处,第一电子设备在框708处可使用作为第一电子设备的位置的所选择的位置来执行应用程序。应用程序可包括任意类型的应用程序,诸如地图和导航、天气、互联网浏览器、推荐、和其他应用程序。例如,如果应用程序是地图和导航应用程序,则第一电子设备可显示地图和导航应用程序的地图,并使用所选择的位置来执行地图和导航应用程序的某个功能(例如以显示出表示用户位置的当前位置图标重叠在地图上)。又如,如果应用程序包括互联网浏览器应用程序,则第一电子设备可接收来自用户的互联网搜索查询并执行搜索查询并且使用所选择的位置对搜索结果进行过滤或者可将搜索查询和所选择的位置传输给执行搜索查询的服务器。

虽然图7将框702,704,706,708和710示为按特定次序执行,但应当理解,这些框可按任意次序执行,并且某些框不必执行。例如,框704和/或框706可在框702之前、在框702之后、响应于框702的执行而执行,或者甚至可不执行。在只执行框704和706中的一个框(例如第一位置和第二位置中只有一个可用)的示例中,可选择该单个可用位置来在框708处使用。

使用过程700和800,通信耦接的电子设备可有利地在由每个设备确定的位置之间进行选择,以为用户提供可比单独使用设备时可能的情况更精确的位置信息。这对于具有有限的位置确定能力和/或电池电力的电子设备(诸如手表或其他紧凑电子设备)特别有利。在这些情况下,电子设备可选择性地使用由可具有更精密的位置确定能力和/或更多的电池电力来操作其位置确定电路的相关联的电子设备确定的位置。

图9示出根据各种所述示例的原理进行配置的电子设备900的功能框图。设备的功能块可由执行各种所述示例的原理的硬件、软件或硬件和软件的组合来实现。本领域的技术人员应当理解,图9中所述的功能块可被组合或被分离为子块,以便实现各种所述示例的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。

如图9中所示,电子设备900可包括被配置为显示图形对象的显示单元904、被配置为接收用户手势的触敏表面单元902、和处理单元908。在一些示例中,处理单元908可包括确定单元910、接收单元912、选择单元914和执行单元916。

处理单元908可被配置为使用第一电子设备的一个或多个传感器来确定第一位置(例如,使用确定单元910)。接收单元912可接收由第二电子设备确定的第二位置。选择单元914可选择第一位置和第二位置中的一者。执行单元916可使用作为第一电子设备的位置的所选择的位置来执行应用程序。

在一些示例中,选择单元914可被配置为通过以下方式来选择第一位置和第二位置中的一者:确定第一位置被确定的时间是否比第二位置被确定的时间晚超过预先确定的时间长度,并根据确定第一位置被确定的时间比第二位置被确定的时间晚超过预先确定的时间长度而选择由第一电子设备确定的第一位置。

在一些示例中,选择单元914可被配置为通过以下方式来选择第一位置和第二位置中的一者:确定第一位置的精确度是否比第二位置的精确度大,并根据确定第一位置的精确度比第二位置的精确度大而选择由第一电子设备确定的第一位置。

在一些示例中,选择单元914可被配置为通过以下方式来选择第一位置和第二位置中的一者:确定来自第一位置的第一误差阈值内的第一区域是否与来自第二位置的第二误差阈值内的第二区域相交,并根据确定来自第一位置的第一误差阈值内的第一区域与来自第二位置的第二误差阈值内的第二区域相交而选择由第一电子设备确定的第一位置。

在一些示例中,选择单元914可被配置为通过以下方式来选择第一位置和第二位置中的一者:确定第一位置的第一来源的第一优先级是否比第二位置的第二来源的第二优先级大,并根据确定第一位置的来源的第一优先级比第二位置的来源的优先级大而选择由第一电子设备确定的第一位置。

在一些示例中,选择单元914可被配置为通过以下方式来选择第一位置和第二位置中的一者:确定由第一电子设备确定的一个或多个先前位置是否不正确超过阈值距离,并根据确定由第一电子设备确定的一个或多个先前位置未不正确超过阈值距离而选择由第一电子设备确定的第一位置。

在一些示例中,选择单元914可被配置为根据确定第一位置被确定的时间不比第二位置被确定的时间晚超过所述预先确定的时间长度而选择由第二电子设备确定的第二位置。

在一些示例中,选择单元914可被配置为根据确定第一位置的精确度不比第二位置的精确度大而选择由第二电子设备确定的第二位置。

在一些示例中,选择单元914可被配置为根据确定来自第一位置的第一误差阈值内的第一区域不与来自第二位置的第二误差阈值内的第二区域相交而选择由第二电子设备确定的第二位置。

在一些示例中,选择单元914可被配置为根据确定第一位置的来源的第一优先级不比第二位置的来源的优先级大而选择由第二电子设备确定的第二位置。

在一些示例中,选择单元914可被配置为根据确定由第一电子设备确定的一个或多个先前位置不正确超过所述阈值距离而选择由第二电子设备确定的第二位置。

在一些示例中,接收单元912可被配置为接收一个或多个Wi-Fi信号。在这些示例中,确定单元910可被配置为至少部分地基于所接收的一个或多个Wi-Fi信号来确定第一位置。

在一些示例中,接收单元912可被配置为接收一个或多个蜂窝信号。在这些示例中,确定单元910可被配置为至少部分地基于所接收的所述一个或多个蜂窝信号来确定第一位置。

在一些示例中,接收单元912可被配置为接收一个或多个GPS信号。在这些示例中,确定单元910可被配置为至少部分地基于所接收的一个或多个GPS信号来确定第一位置。

在一些示例中,应用程序可包括地图应用程序。在这些示例中,执行单元916可被配置为通过以下方式而使用作为第一电子设备的位置的所选择的位置来执行应用程序:使得在第一电子设备的显示器(例如显示单元904)上显示地图,并使得在第一电子设备的显示器上显示在与所选择的位置对应的位置处重叠在地图上的当前位置指示符。

在一些示例中,应用程序可包括互联网浏览器应用程序。在这些示例中,执行单元916可被配置为通过以下方式而使用作为第一电子设备的位置的所选择的位置来执行应用程序:接收搜索查询并使用所选择的位置来执行搜索查询。

在一些示例中,第一电子设备是手表。在一些示例中,第二电子设备是移动电话。

在一些示例中,接收单元912可被配置为经由蓝牙连接或Wi-Fi连接从第二电子设备接收第二位置。

虽然已参照附图对公开和示例进行了全面的描述,但应当注意,各种变化和修改对于本领域内的技术人员而言将变得显而易见。应当理解,此类变化和修改被认为被包括在由所附权利要求所限定的本公开和示例的范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号