运动围栏.pdf

上传人:62****3 文档编号:633121 上传时间:2018-02-28 格式:PDF 页数:21 大小:1.45MB
返回 下载 相关 举报
摘要
申请专利号:

CN201480032176.3

申请日:

2014.05.13

公开号:

CN105264456A

公开日:

2016.01.20

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 1/16申请日:20140513|||公开

IPC分类号:

G06F1/16; G06F1/32; G06F3/01

主分类号:

G06F1/16

申请人:

苹果公司

发明人:

H·A·范姆; P·帕特尔; V·M·杜吉那尼

地址:

美国加利福尼亚

优先权:

13/913,234 2013.06.07 US

专利代理机构:

中国国际贸易促进委员会专利商标事务所11038

代理人:

周磊

PDF下载: PDF下载
内容摘要

在一些具体实施中,移动设备可被配置有虚拟运动围栏,该虚拟运动围栏描绘可由移动设备检测到的运动域。在一些具体实施中,移动设备可被配置为在移动设备(通过跨越运动围栏)进入或退出运动域时调用应用程序或功能。在一些具体实施中,进入或退出运动域可使得移动设备的部件以递增方式通电或断电(或被唤醒或休眠)。

权利要求书

1.一种方法,包括:
在移动设备上限定多个运动围栏,所述运动围栏划定多个运动域的
界限;
从所述移动设备的运动传感器获取运动数据;
将所述运动数据与和至少一个运动围栏相关联的运动标准进行比
较;以及
基于所述比较来确定所述移动设备的运动域,
其中所述方法由一个或多个处理器来执行。
2.根据权利要求1所述的方法,还包括:
存储客户端信息,所述客户端信息识别对特定运动域感兴趣的一个
或多个客户端;
确定所述移动设备已进入所述特定运动域;以及
基于所存储的客户端信息和所述特定运动域来识别所述一个或多个
客户端;以及
通知所述一个或多个客户端所述移动设备已进入所述特定运动域。
3.根据权利要求2所述的方法,其中通知所述一个或多个客户端包括
调用所述一个或多个客户端中的至少一个客户端。
4.根据权利要求1所述的方法,其中确定运动域包括打开或关闭所述
移动设备的一个或多个部件。
5.根据权利要求4所述的方法,其中所述一个或多个部件包括微处理
器。
6.根据权利要求4所述的方法,其中确定运动域包括调节所述移动设
备的一个或多个部件的功率电平。
7.一种非暂态计算机可读介质,所述非暂态计算机可读介质包括一个
或多个指令序列,所述一个或多个指令序列当由一个或多个处理器
执行时,使得:
在移动设备上限定多个运动围栏,所述运动围栏划定多个运动域的
界限;
从所述移动设备的运动传感器获取运动数据;
将所述运动数据与和至少一个运动围栏相关联的运动标准进行比
较;以及
基于所述比较来确定所述移动设备的运动域。
8.根据权利要求7所述的非暂态计算机可读介质,其中所述指令使
得:
存储客户端信息,所述客户端信息识别对特定运动域感兴趣的一个
或多个客户端;
确定所述移动设备已进入所述特定运动域;以及
基于所存储的客户端信息和所述特定运动域来识别所述一个或多个
客户端;以及
通知所述一个或多个客户端所述移动设备已进入所述特定运动域。
9.根据权利要求8所述的非暂态计算机可读介质,其中使得通知所述
一个或多个客户端的所述指令包括使得调用所述一个或多个客户端
中的至少一个客户端的指令。
10.根据权利要求7所述的非暂态计算机可读介质,其中使得确定运动
域的所述指令包括使得打开或关闭所述移动设备的一个或多个部件
的指令。
11.根据权利要求10所述的非暂态计算机可读介质,其中所述一个或多
个部件包括微处理器。
12.根据权利要求10所述的非暂态计算机可读介质,其中使得确定运动
域的所述指令包括使得调节所述移动设备的一个或多个部件的功率
电平的指令。
13.一种系统,包括:
一个或多个处理器;和
计算机可读介质,所述计算机可读介质包括一个或多个指令序列,
所述一个或多个指令序列当由所述一个或多个处理器执行时,使
得:
在移动设备上限定多个运动围栏,所述运动围栏划定多个运动
域的界限;
从所述移动设备的运动传感器获取运动数据;
将所述运动数据与和至少一个运动围栏相关联的运动标准进行
比较;以及
基于所述比较来确定运动域。
14.根据权利要求13所述的系统,其中所述指令使得:
存储客户端信息,所述客户端信息识别对特定运动域感兴趣的一个
或多个客户端;
确定所述移动设备已进入所述特定运动域;以及
基于所存储的客户端信息和所述特定运动域来识别所述一个或多个
客户端;以及
通知所述一个或多个客户端所述移动设备已进入所述特定运动域。
15.根据权利要求14所述的系统,其中使得通知所述一个或多个客户端
的所述指令包括使得调用所述一个或多个客户端中的至少一个客户
端的指令。
16.根据权利要求13所述的系统,其中使得确定运动域的所述指令包括
使得打开或关闭所述移动设备的一个或多个部件的指令。
17.根据权利要求16所述的系统,其中所述一个或多个部件包括微处理
器。
18.根据权利要求16所述的系统,其中使得确定运动域的所述指令包括
使得调节所述移动设备的一个或多个部件的功率电平的指令。
19.一种系统,包括:
一个或多个处理器;和
计算机可读介质,所述计算机可读介质包括一个或多个指令序列,
所述一个或多个指令序列当由所述一个或多个处理器执行时将允许
应用程序编程接口(API)调用部件调用API实施部件的操作,所述
操作包括:
在所述移动设备上限定多个运动围栏,所述运动围栏划定多个
运动域的界限;
从所述移动设备的运动传感器获取运动数据;
将所述运动数据与和至少一个运动围栏相关联的运动标准进行
比较;以及
基于所述比较来确定所述移动设备的运动域。
20.根据权利要求19所述的系统,其中所述指令使得:
存储客户端信息,所述客户端信息识别对特定运动域感兴趣的一个
或多个客户端;
确定所述移动设备已进入所述特定运动域;以及
基于所存储的客户端信息和所述特定运动域来识别所述一个或多个
客户端;以及
通知所述一个或多个客户端所述移动设备已进入所述特定运动域。

说明书

运动围栏

技术领域

本公开整体涉及移动设备的功率管理。

背景技术

现代运动设备通常包括用于检测移动设备的运动的传感器。例如,移
动设备可包括用于检测移动设备的运动并确定该移动设备的取向的加速度
计和/或陀螺仪。一些移动设备可被配置为基于所检测的运动来动态调节移
动设备的功能、特征、用户界面和/或操作。

发明内容

在一些具体实施中,移动设备可被配置有虚拟运动围栏,该虚拟运动
围栏描绘可由移动设备检测到的运动域。在一些具体实施中,移动设备可
被配置为在移动设备(通过跨越运动围栏)已进入或退出运动域时调用应
用程序或功能。在一些具体实施中,进入或退出运动域可使得移动设备的
部件以递增方式通电或断电(或被唤醒或休眠)。

特定具体实施提供了至少以下优点:运动围栏操作提供了一种容易的
方式来对由移动设备所检测到的运动进行分类并基于该分类来触发移动设
备的应用程序、功能、提示和/或其他操作。使用运动围栏逐渐启动、停止
或唤醒移动设备的部件、传感器、微控制器和其他处理器来允许移动设备
节省能量,同时启用处理运动测量所需的功能。

在下面的附图和具体实施方式中示出了一种或多种具体实施的细节。
其他特征、方面和潜在优点将在具体实施方式和附图以及权利要求中显而
易见。

附图说明

图1示出了运动围栏的示例性类别。

图2示出了运动围栏和现实世界运动之间的示例性关联。

图3是示例性运动围栏系统的框图。

图4是示例性运动围栏过程的流程图。

图5是示出了可在一些具体实施中使用的示例性API架构的框图。

图6示出了包括各种应用程序编程接口的示例性软件栈。

图7是用于实施图1至图6的特征和过程的示例性系统架构的框图。

在各附图中,类似的参考符号指示类似的元件。

具体实施方式

概述

对于移动设备而言,运动可能是用户希望进行交互的关键性预测。运
动还可能是用户感兴趣的活动的指示符。运动围栏提供了一种用于预计并
实施用户需求而具有最小化功率影响的机制。在一些具体实施中,运动围
栏建立不同运动域周围的包络,该不同运动域的特征在于运动信号或运动
测量的特征。由运动围栏描绘的运动域可对应于性质不同的运动分布曲
线。移动设备的运动可能使得移动设备跨越运动围栏。跨越运动围栏可能
使得移动设备触发基于运动的提示、服务唤醒、对应用程序和/或功能的调
用和/或对附加运动分析的请求。

图1示出了示例性运动域和运动围栏。在一些具体实施中,移动设备
被配置有运动围栏。例如,运动围栏可由运动标准来限定。对于一些运动
围栏而言,运动标准可基于基本运动测量诸如运动的频率或幅度。对于一
些运动围栏而言,运动标准可基于检测到多长时间的运动(例如,多少时
间)和/或是否可识别该运动或将其关联到运动的现实世界原因。

在一些具体实施中,每个运动围栏可用于描绘运动域。例如,在图1
中,每条虚线可表示一个运动围栏。每条虚线之间或虚线外部的区域表示
运动域。例如,运动域102可以是“静态”域。在设备不动或接近不动
时,移动设备可处在“静态”域中。运动域104可以是一个“稀疏运动”
域。在移动设备检测到小运动时,移动设备可处在“稀疏运动”域中。运
动域102和运动域104之间的虚线是静态域和稀疏运动域之间的运动围栏
112。运动围栏112可与用于限定移动设备何时从静态域102跨入稀疏域
104的运动标准相关联。例如,用于运动围栏112的运动标准可限定高于阈
值(例如,幅度)的任何运动将使得移动设备从静态域102跨越运动围栏
112进入稀疏域104中。

在一些具体实施中,运动围栏114可与用于限定移动设备何时从稀疏
域104跨入“持续运动”域106的运动标准相关联。例如,针对运动围栏
114的运动标准可限定经持续一段时间的运动能够使得移动设备从稀疏域
104跨越运动围栏114进入持续运动域106中。例如,运动幅度和/或频率
在长于阈值时间段内增加可使得移动设备从稀疏域104过渡到持续运动域
106中。

在一些具体实施中,运动围栏116可与用于限定移动设备何时从持续
运动域106跨入“富运动”域108的运动标准相关联。例如,用于运动围
栏116的运动标准可限定在长于阈值时间段内超过阈值幅度和/或阈值频率
的运动可使得移动设备从持续运动域跨越运动围栏116进入富运动域中。
因此,持续运动域106可对应于短持续时间、高幅度运动或长持续时间、
高频率运动,而富运动域108可对应于长持续时间的高幅度高频率运动。

在一些具体实施中,进入或退出运动域或跨越运动围栏可触发移动设
备的操作。在一些具体实施中,在设备被拿起时,运动围栏和运动域可用
于触发系统服务的启动,以使用户感知的延迟最小化。运动围栏可触发基
于运动模式来调制蜂窝和WiFi扫描频率,以优化功率与性能的关系。例
如,如果设备是静态(不运动)的,可降低蜂窝和WiFi扫描的频率以节省
电池功率,因为蜂窝和/或WiFi环境不太可能变化。可使用运动围栏在用户
开始步行或跑步时对步数启动统计。可使用运动围栏来为地图路线或地图
搜索结果提供上下文(例如,用户在步行、驾车、跑步、骑行等)。

在一些具体实施中,在特定方向上跨越特定运动围栏可触发移动设备
的操作。例如,从运动域104过渡118到运动域106可触发移动设备的特
定操作,而从运动域106过渡到运动域104可触发移动设备的不同操作,
尽管两种过渡跨越相同的运动围栏114。例如,从稀疏运动域104过渡到持
续运动域106可指示用户已拿起并查看移动设备,并且移动设备应当启动
移动设置上的系统服务或频繁使用的应用程序。从持续运动域106过渡到
稀疏运动域104可指示用户已将移动设备放在口袋中或用户腿上,并且移
动设备应当关闭或降低至移动设备的一些部件的电源。

图2示出了用于注册用于感兴趣的活动的运动围栏客户端的示例性系
统200。例如,客户端202可向运动围栏系统206注册,以在移动设备进入
运动域或跨越运动围栏时被通知。在一些具体实施中,在移动设备进入运
动域或跨越运动围栏时,客户端202可请求被通知。例如,客户端202可
以是移动设备的应用程序、功能、实用程序或其他部件。

在一些具体实施中,客户端202可向运动围栏系统206发送用于指示
客户端202感兴趣的活动类型的请求204。例如,活动可以是用户已拿起移
动设备。活动可以是用户正在步行、驾车或跑步。活动可以是可基于移动
设备所检测到的一种或多种运动模式而被识别的任何类型活动。

在一些具体实施中,运动围栏系统206可以向注册表209添加208客
户端标识符和指定的感兴趣活动。例如,运动围栏系统206可以是移动设
备的系统或子系统。运动围栏系统206可在注册表209中维护查找表,该
注册表将客户端标识符映射到从移动设备的客户端接收的感兴趣活动。注
册表209可用于确定哪些客户端对移动设备观测或测量的不同活动或各种
运动感兴趣。

在一些具体实施中,运动围栏系统206可确定与客户端感兴趣的活动
对应的运动域210。例如,如果活动是“跑步”,则运动围栏系统206可将
跑步分类为“富”运动活动,并将跑步活动映射到富运动域(例如,图1
的富运动域108)。如果所请求的活动是“拿起”,则运动围栏系统206可
将“拿起”分类为持续运动活动,并将跑步活动映射到持续运动域(例
如,图1的持续运动域106)。如果所请求的活动是“查看”,则运动围栏
系统206可将“查看”分类为从持续运动域到富运动域的过渡(例如,在
特定方向上跨越运动围栏)。

在一些具体实施中,运动围栏系统206可测量移动设备211的运动。
例如,移动设备211可被配置有可测量移动设备的运动的一个或多个运动
传感器(例如,加速度计、陀螺仪等)。运动传感器可产生可被分析以确
定例如由运动传感器产生的信号的幅度和频率的变化的运动信号213(例如
测量)。可随时间来分析运动信号,以确定与不同活动对应的运动模式。

在一些具体实施中,运动围栏系统206可基于运动信号213来确定运
动域214。例如,运动围栏系统206可被配置有用于界定运动域的运动围
栏。可针对分隔每个运动域的运动阈值和/或运动标准来限定运动围栏。例
如可由超过阈值幅度和/或阈值频率的任何所检测到的运动来限定用于界定
“静态”运动域并将静态运动域与“稀疏”运动域分开的运动围栏。该阈
值幅度和/或阈值频率可以很小,使得设备从静止位置发生任何运动将跨越
运动围栏。该阈值比较可基于原始运动数据或未处理的运动数据(例如,
未处理的运动信号)。在一些具体实施中,可针对从运动信号导出的更复
杂的运动数据来限定运动围栏。例如,可针对对运动信号和/或在运动信号
中观测到的运动模式执行的变换(例如,傅里叶变换、信号滤波等)来限
定运动围栏。

在一些具体实施中,可限定运动围栏以生成覆盖具有类似运动特性的
多种不同活动的运动域。例如,步行和跑步是具有类似运动特性并且可能
落在同一运动域(例如富运动域)内的不同活动。因此,由运动围栏描绘
或约束的单个运动域可对应于很多不同类型的活动。

在一些具体实施中,一旦基于运动信号213来确定运动域214,运动
围栏系统206便可识别与运动信号213对应的活动216。例如,该运动信号
可包括能关联到各种活动的运动模式。例如,运动信号213可包括关联到
携带移动设备步行的用户的运动模式。该运动信号可包括运动模式的组
合。例如,运动信号213可包括关联到用户拿起移动设备211的运动模式
以及关联到移动设备211被拿在用户前方的另一种运动模式(例如,高频
率低幅度运动)。在一些具体实施中,运动模式的组合可对应于从一个运
动域到另一个运动域(例如,持续运动域到富运动域)的过渡。可分析运
动信号213以确定表示移动设备静止(例如,在桌子上)、移动设备在用
户例如跑步、驾车或骑行时被携带的运动模式。

在一些具体实施中,一旦运动围栏系统206基于运动信号213已识别
活动216,运动围栏系统206便可确定任何客户端是否对所识别的活动感兴
趣。例如,运动围栏系统206可参考注册表209中的前述查找表来确定哪
些客户端对所识别的活动感兴趣。运动围栏系统206然后可向一个或多个
感兴趣的客户端发送用于指示已发生220客户端的感兴趣活动的通知。

图3是示例性运动围栏系统300的框图。例如,运动围栏系统300可
以是移动设备的部件或子系统。运动围栏系统300可被配置为限定多个运
动域,如上所述。在示例性系统300中,示出了三个运动围栏和四个运动
域。例如,运动围栏系统300可包括静态运动域302、稀疏运动域304、持
续运动域306和富运动域308。每个运动域由运动围栏分隔、描绘或界定,
如图3中的每个运动域之间的虚线所示的。

在一些具体实施中,运动围栏系统300可用于节省移动设备上的能
量。例如,在移动设备未被用户操作时,可将移动设备置于省电模式中。
用户可将移动设备放在用户口袋中、放在桌子上或在指示移动设备应当在
低功率模式中操作的一些其他位置。在移动设备处在低功率模式中时,一
些部件(例如,传感器、微控制器、存储器、处理器等)可以被关闭或被
置于低功率操作模式中。在移动设备处于低功率模式中时,一些传感器可
保持打开,使得传感器可基于加电传感器检测到的事件来调用或打开移动
设备的其他部件。

在一些具体实施中,在移动设备处于低功率操作模式中时,可打开或
唤醒运动传感器310。例如,运动传感器310可以是加速度计、陀螺仪或其
他类型的运动传感器。运动传感器310可被配置为检测移动设备的运动并将
所检测到的运动与一个或多个运动阈值312进行比较。例如,运动传感器
310可将所检测到的运动(例如,运动信号)的幅度和/或频率与一个或多个
运动阈值进行比较,以确定所检测到的运动是否超过(例如,与稀疏运动围
栏342相关联)运动阈值。如果所检测到的运动超过一个或多个运动阈值,
则运动围栏系统300例如可从静态运动域302过渡到稀疏运动域304。

在一些具体实施中,在运动传感器310确定所检测到的运动超过运动
阈值312时,运动传感器310可打开或唤醒低功率微控制器314。例如,运
动围栏系统300可被配置为在移动设备从更低运动域(例如,静态域302)
过渡到更高运动域(例如,稀疏运动域304)时,打开或唤醒可用的附加计
算资源,以对运动信号执行更复杂的处理。例如,除了低功率微控制器314
之外,在移动设备进入稀疏运动域304中时,附加存储器资源可用于低功
率微控制器。

在一些具体实施中,低功率微控制器314可被配置为导出运动特征
316的子集,并将运动特征与运动标准318进行比较,以确定移动设备是否
应当进入持续运动域306中。例如,低功率微控制器314可被配置为处理
从运动传感器所接收的运动信号,以集成运动信号(例如,集成加速度计
信号以确定速度)和/或确定运动信号的幅度变化。可将这种处理的结果与
稀疏运动标准318进行比较(例如,积分和/或变化阈值),以确定移动设
备是否应当移动到持续运动域306中。例如,如果所计算的积分值和/或变
化值超过由稀疏运动标准限定的积分和/或变化的阈值,则移动设备可被移
动到持续运动域306中。

在一些具体实施中,在低功率微控制器314确定运动特征316的所导
出的子集超过(例如,与稀疏运动围栏342相关联)稀疏运动标准318
时,低功率微控制器314可打开或唤醒高功率微控制器320。例如,低功率
微控制器可打开或触发在持续运动域306中处理运动信号所需的附加计算
资源作为从稀疏运动域304到持续运动域306的过渡的一部分。这些附加
计算资源可包括高功率微控制器320和/或存储器和/或其他处理器。

在一些具体实施中,高功率微控制器320可处理从运动传感器310所
接收的运动信号,以导出运动特征322的全集。例如,高功率微控制器320
可变换运动信号(例如,使用快速傅里叶变换),随时间(例如,20秒或
30秒)收集用于描述运动信号的统计值和/或向信号应用滤波器以产生运动
特征322的全集。

在一些具体实施中,高功率微控制器320可分析运动特征的全集以识
别移动设备的特定运动。例如,可将运动特征的全集与运动模式进行比
较,该运动模式与由携带移动设备的用户执行的已知运动(例如,轻弹、
轻击、撞击等)相关联。在一些具体实施中,客户端应用程序或功能可注
册,以在发生移动设备的特定运动时被通知。例如,客户端应用程序可注
册以在高功率微控制器326检测到或识别出“轻弹”运动(例如,用户使
移动设备发生快速定向运动)时被通知。高功率微控制器可分析运动信号
以确定何时已发生轻弹运动,并可使得所注册的客户端应用程得到已检测
的运动的通知。

在一些具体实施中,高功率微控制器320可将运动特征的全集与持续
运动标准324进行比较,以确定移动设备是否应当过渡到富运动域308
中。例如,可使用持续运动标准来限定持续运动围栏344并且可包括频率
模式,可将频率模式与使用快速傅里叶变换或其他适当变换而已被变换的
运动信号进行比较。持续运动标准可包括随时间重新发生的运动模式。在
一些具体实施中,如果在运动信号中观测到频率模式或在运动信号中观测
到重复运动模式,则移动设备可被移动到富运动域308中。

在一些具体实施中,在高功率微控制器320确定运动特征322的全集
超过(例如,与持续运动围栏344相关联)持续运动标准时,高功率微控
制器320可打开主处理器328。例如,高功率微控制器320可打开或触发在
富运动域308中处理运动信号所需的附加计算资源作为从持续运动域306
到富运动域308的过渡的一部分。这些附加计算资源可包括主处理器320
和/或存储器和/或其他处理器。

在一些具体实施中,主处理器328可分析从运动传感器310所接收的
运动信号、由低功率微控制器316产生的运动特征的子集和/或由高功率微
控制器320产生的运动特征的全集,以将由移动设备所检测到的运动分类
到特定活动330中。例如,主处理器328可分析运动模式、频域特性和/或
其他信号特征,以确定正在操作或携带(例如,在手中、口袋中、车中
等)移动设备的用户的当前活动。例如,主处理器328可分析运动信号以
确定与移动设备相关联的用户例如是在步行、跑步、驾车还是骑行。如果
主处理器328确定用户正在驾车,则主处理器328可打开定位系统332以
例如提供移动设备的位置。如果用户在步行,则主处理器328例如可调用
算法或功能以统计用户334的步数。如果客户端应用程序已向运动围栏系
统300注册以在用户跑步时被通知,则主处理器328可通知所注册的客户
端该用户当前正携带移动设备跑步。

示例性过程

图4是示例性运动围栏过程的流程图。例如,如上所述,可由已被配
置有运动围栏标准的移动设备来执行运动围栏过程。在一些具体实施中,
移动设备内的运动围栏客户端(例如,应用程序、功能、实用程序、操作
系统特征等)可注册,以在发生与感兴趣活动对应的运动时被通知。通知
的形式可以是消息、事件、调用或基于感兴趣活动(例如,跑步、骑行、
驾车等)被移动设备的运动围栏系统检测到而触发的其他操作。

在步骤402处,可测量移动设备的运动。例如,移动设备可被配置有
可测量移动设备的运动的一个或多个运动传感器。运动传感器可包括加速
度计、陀螺仪和/或其他类型的运动传感器。测量的运动可随时间产生用于
指示运动在各个时间点处的幅度的运动信号。

在步骤404处,可将所测量的运动与和第一运动围栏相关联的运动标
准进行比较。例如,可将运动信号与运动标准诸如频率、幅度等阈值进行
比较。运动标准可包括关于从运动信号导出的其他运动测量的阈值。运动
标准可包括运动模式(例如,重复频率和或幅度模式),以确定移动设备
的运动是否落在第一运动围栏内或在其外部。例如,运动信号内存在运动
模式(例如,任何运动模式)可以是限定运动围栏的标准。例如,如果在
运动信号内没有模式,则移动设备可保持在当前运动围栏内。如果在运动
信号内有运动模式,则移动设备已跨过运动围栏进入另一个运动域中。

在步骤406处,移动设备可基于比较从第一运动域过渡到第二运动
域。例如,如果已超过了针对第一运动围栏的运动标准(例如,被超过的
阈值,所观测到的运动类型),在可将移动设备从当前运动域跨过第一运
动围栏并且移动到第二运动域中。

在步骤408处,可打开或从睡眠状态唤醒用于第二运动域的设备部
件。例如,移动设备可在低功率模式中启动。在移动设备从第一运动域过
渡到第二运动域时,可打开(或从睡眠状态唤醒)移动设备的部件,以分
析由移动设备的运动传感器产生的运动信号。例如,在处于第一运动域中
时,移动设备可处于其中仅打开运动传感器的低功率模式中。在移动设备
从第一运动域过渡到第二运动域时,运动传感器可打开微控制器,以对运
动信号执行附加分析,如上所述。

在步骤410处,可将所测量的运动与和第二运动围栏相关联的运动标
准进行比较。例如,不同于第一运动围栏的第二运动围栏可与运动标准相
关联。例如,用于第二运动围栏的运动标准可描述比第一运动围栏更复杂
的运动类型。第二运动围栏标准可包括运动模式、从运动信号变换产生的
值、从随时间分析运动信号产生的数据和/或其他类型的运动特性。

在步骤412处,可基于运动标准来确定设备处于第二运动域内。例
如,如果运动信号不满足或超过用于第二运动围栏的运动标准,则移动设
备将不跨过第二运动围栏进入另一运动域中。因此,可确定移动设备处于
第二运动域内。

在步骤414处,可确定注册对第二运动域或过渡感兴趣的应用程序或
功能。例如,运动围栏系统可维护用于识别对与运动类型和/或运动域相关
联的活动感兴趣的移动设备的应用程序和/或功能的查找表。在确定移动设
备处于特定运动域内时,运动围栏系统可参考查找表以确定哪些应用程序
或功能(例如,运动围栏客户端)对特定运动域感兴趣。在一些具体实施
中,运动围栏系统可基于运动信号中观测到的运动模式来识别与运动域相
关联的特定活动。在基于运动信号来识别活动时,运动围栏系统可使用查
找表来确定哪些应用程序和/或功能对观测到的活动的发生感兴趣。

在步骤416处,可调用注册的应用程序或功能。例如,在运动围栏系
统找到与移动设备当前所在的特定运动域或所识别的活动相关联的应用程
序或功能时,可通知应用程序或功能该移动设备在运动域内或正在发生特
定活动。在一些具体实施中,通知应用程序或功能可包括调用移动设备的
应用程序或功能。

应用程序编程接口

可在本文所述的具体实施中使用一个或多个应用程序编程接口
(API)。API是由程序代码部件或硬件部件(在下文中称为“API实施部
件”)实施的接口,允许不同的程序代码部件或硬件部件(在下文中称为
“API调用部件”)访问和使用由API实施部件提供的一个或多个函数、
方法、流程、数据结构、类别和/或其他服务。API可限定在API调用部件
和API实施部件之间传送的一个或多个参数。

API允许API调用部件的开发者(可以是第三方开发者)利用由API
实施部件提供的指定特征。可存在一个API调用部件或可存在多于一个此
类部件。API可以是计算机系统或程序库提供的源代码接口,以便支持对来
自应用程序的服务的请求。操作系统(OS)可具有多个API,以允许运行
行在OS上的应用程序调用那些API中的一个或多个API,并且服务(诸如
程序库)可具有多个API,以允许使用服务的应用程序调用那些API中的一
个或多个API。在构建应用程序时可以编译或汇编的编程语言来指定API。

在一些具体实施中,API实施部件可提供多于一个API,该多于一个
API提供对由API实施部件实施的功能的不同方面的访问。例如,API实施
部件的一个API可提供第一组功能并可暴露于第三方开发者,并且API实
施部件的另一个API可被隐藏(不暴露)并提供第一组功能的子集,并且
还提供另一组功能诸如不在第一组功能中的测试功能或调试功能。在其他
具体实施中,API实施部件本身可经由下层API来调用一个或多个其他部
件,因此其即是API调用部件又是API实施部件。

API限定在访问和使用API实施部件的指定特征时API调用部件使用
的语言和参数。例如,API调用部件通过被API暴露的一个或多个API调
用或引用(例如由函数或方法调用来实施)来访问API实施部件的指定特
征,并经由API调用或引用使用参数来传送数据信息和控制信息。API实
施部件可响应于来自API调用部件的API调用通过API来返回值。尽管
API限定API调用的语法和结果(例如,如何引起API调用以及API调用
做什么),但API可不揭示API调用如何完成由API调用指定的函数。经
由调用(API调用部件)和API实施部件之间的一个或多个应用程序编程
接口来传输各种API调用。传输API调用可包括发出、发起、调用
(invoking,calling)、接收、返回功能调用或消息或对其作出响应;换言之,
传输可描述API调用部件或API实施部件的动作。API的函数调用或其他
引用可通过参数列表或其他结构发送或接收一个或多个参数。参数可以是
常数、按键、数据结构、对象、对象类别、变量、数据类型、指针、数
组、列表或指向函数或方法的指针或援引要经由API传送的数据或其他项
目的另一种方式。

此外,数据类型或类别可由API提供并由API实施部件实施。因此,
API调用部件可使用在API中提供的定义来声明变量、使用指向此类类型
或类别的指针、使用或实例化此类类型或类别的常数值。

通常,可使用API来访问由API实施部件提供的服务或数据或启动执
行由API实施部件提供的操作或计算。以举例的方式,API实施部件和API
调用部件可各自为操作系统、库、设备驱动器、API、应用程序或其他模块
(例如,API实施部件和API调用部件可以是彼此相同或不同类型的模
块)中的任一者。在一些情况下,可至少部分地在固件、微码或其他硬件
逻辑部件中实施该API实施部件。

在一些具体实施中,API可允许客户端程序使用由软件开发工具包
(SDK)库提供的服务。在其他实施例中,应用程序或其他客户端程序可
使用由应用程序框架提供的API。在这些具体实施中,应用程序或客户端
程序可将调用并入由SDK提供和/或由API提供的函数或方法中,或使用
SDK中限定并由API提供的数据类型或对象。在这些具体实施中,应用程
序框架可为程序提供主要事件循环,该程序对由框架限定的各种事件作出
响应。API允许应用程序使用应用程序框架来指定事件和对事件的响应。
在一些具体实施中,API调用可向应用程序报告硬件设备的能力或状态,
包括与各个方面相关的那些能力或状态,该各个方面诸如输入能力和状
态、输出能力和状态、处理能力、电源状态、存储容量和状态、通信能力
等,API可部分地由固件、微码或部分在硬件部件上执行的其他低电平逻
辑部件实施。

API调用部件可以是经由网络通过API与API实施部件通信的本地部
件(例如与API实施部件在同一数据处理系统上)或远程部件(例如在不
同于API实施部件的数据处理系统上)。API实施部件也可充当API调用
部件(例如,它可对不同API实施部件暴露的API进行API调用),并且
API调用部件也可通过实施暴露于不同API调用部件的API来充当API实
施部件。

API可允许以不同编程语言编写的多个API调用部件与API实施部件
进行通信,从而API可包括用于转换API实施部件和API调用部件之间的
呼叫和回呼的特征。然而,可以特定的编程语言来实施API。在一种嵌入
中,API调用部件可调用来自不同提供商的API,诸如来自OS提供商的一
组API和来自插件提供商的另一组API,以及来自另一提供商(例如软件
库的提供商)或另一组API的创建者的另一组API。

图5是示出了可用于一些具体实施的示例性API架构500的框图。如
图5中所示,API架构500包括实施API520的API实施部件510(例如,
操作系统、库、设备驱动器、API、应用程序、软件或其他模块)。API
520可指定API调用部件530可使用的API实施部件的一个或多个函数、方
法、类别、对象、协议、数据结构、格式和/或其他特征。API520可指定
至少一个调用约定,该至少一个调用约定指定API实施部件中的函数如何
从API调用部件接收参数532以及函数如何向API调用部件返回结果
522。API调用部件530(例如操作系统、库、设备驱动器、API、应用程
序、软件或其他模块)通过API520进行API调用,以访问并使用由API
520指定的API实施部件510的特征。API实施部件510可响应于API调用
通过API520向API调用部件530返回值。

例如,API实施部件510可包括未通过API520指定并且对API调用部
件530不可用的附加函数、方法、类别、数据结构和/或其他特征。API调
用部件530可与API实施部件510在同一系统上,或者可远程定位并通过
网络使用API520来访问API实施部件510。尽管图5示出了单个API调用
部件530与API520进行交互,但可以不同语言(或相同语言)编写的与
API调用部件530不同的其他API调用部件可使用API520。

API实施部件510、API520和API调用部件530可存储在包括用于以
机器(例如计算机或其他数据处理系统)可读的形式存储信息的任何机构
的机器可读介质中。例如,机器可读介质包括磁盘、光盘、随机存取存储
器;只读存储器、闪存存储器设备等。

图6示出了包括各种应用程序编程接口的示例性软件栈600。如图6所
示,应用程序602和604可使用若干个服务API610-616对服务A606或服
务B608进行调用,并使用若干个OSAPI620-622对操作系统(OS)618
进行调用。服务A606或服务B608可使用若干个OSAPI620-622对OS进
行调用。

注意,服务B608具有两个API612和614,其中一个是从应用程序1
602接收调用并向应用程序1602返回值的服务BAPI1612,并且另一个是
从应用程序2604接收调用并向应用程序2604返回值的服务BAPI2614。
服务A606(例如,可以是软件库)向OSAPI1620进行调用并接收返回
的值,服务B622(例如,可以是软件库)向OSAPI1620和OSAPI2622
进行调用并接收返回值。应用程序2604向OSAPI2622进行调用并接收返
回值。

示例性系统架构

图7是一个可实施图1-6的特征和过程的示例性计算设备700的框
图。计算设备700可包括存储器接口702、一个或多个数据处理器、图像处
理器和/或中央处理单元704,以及外围设备接口706。存储器接口702、一
个或多个处理器704和/或外围设备接口706可为独立部件,或者可集成到
一个或多个集成电路中。计算设备700中的各种部件可通过一条或多条通
信总线或信号线耦接。

可将传感器、设备和子系统耦接到外围设备接口706以促进多种功
能。例如,可将运动传感器710、光传感器712和接近传感器714耦接到外
围设备接口706以促进取向、照明和接近功能。也可将其他传感器716连
接到外围设备接口706诸如全球导航卫星系统(GNSS)(如GPS接收
器)、温度传感器、生物测定传感器、磁力仪或其他感测设备以促进相关
功能。

可利用相机子系统720和光学传感器722(例如电荷耦合设备
(CCD)或互补金属氧化物半导体(CMOS)光学传感器)来促进相机功
能,诸如拍摄照片和视频剪辑。相机子系统720和光学传感器722可用于
收集要在认证用户期间使用的用户的图像,例如通过执行面部识别分析。

可通过一个或多个无线通信子系统724来促进通信功能,所述一个或
多个无线通信子系统可包括射频接收器和发射器和/或光学(如红外)接收
器和发射器。通信子系统724的具体设计与实施可取决于计算设备700旨
在通过其操作的一个或多个通信网络。例如,计算设备700可包括被设计
用于通过GSM网络、GPRS网络、EDGE网络、Wi-Fi网络或WiMax网络
以及BluetoothTM网络操作的通信子系统724。具体地,无线通信子系统724
可包括主机协议,使得设备100可被配置作为其他无线设备的基站。

可将音频子系统726耦接到扬声器728和麦克风730以促进支持语音
的功能,诸如扬声器识别、语音复制、数字记录和电话功能。音频子系统
726可被配置为促进例如处理语音命令、声纹鉴别和语音认证。

I/O子系统740可包括触摸表面控制器742和/或一个或多个其他输入
控制器744。触摸表面控制器742可耦接到触摸表面746。触摸表面746和
触摸表面控制器742例如可使用多种触敏技术中的任何一种触敏技术来检
测接触和运动或其中断,该触敏技术包括但不限于电容性、电阻性、红外
和表面声波技术,以及用于确定与接触表面746接触的一个或多个点的其
他接近传感器阵列或其他元件。

可将其他输入控制器744耦接到其他输入/控制设备748,诸如一个或
多个按钮、摇臂开关、拇指滚轮、红外线端口、USB端口和/或指针设备
(诸如触笔)。一个或多个按钮(未示出)可包括用于扬声器728和/或麦
克风730的音量控制的增大/减小按钮。

在一种具体实施中,按下按钮第一持续时间可解除对触摸表面746的
锁定;并且按下按钮比第一持续时间更长的第二持续时间可打开或关闭计
算设备700的电源。将按钮按下第三持续时间可激活语音控制或语音命
令、使得用户能够向麦克风730中讲出命令的模块,以使得设备执行所讲
出的命令。用户可定制一个或多个按钮的功能。例如,也可使用触摸表面
746来实施虚拟按钮或软按钮和/或键盘。

在一些具体实施中,计算设备700可呈现所记录的音频文件和/或视频
文件,诸如MP3文件、AAC文件和MPEG文件。在一些具体实施中,计
算设备700可包括MP3播放器诸如iPodTM的功能。也可使用其他输入/输出
以及控制设备。

存储器接口702可耦接到存储器750。存储器750可包括高速随机存取
存储器和/或非易失性存储器,诸如一个或多个磁盘存储设备、一个或多个
光学存储设备,和/或闪存存储器(如NAND、NOR)。存储器750可存储
操作系统752,诸如Darwin、RTXC、LINUX、UNIX、OSX、WINDOWS
或嵌入式操作系统(诸如VxWorks)。

操作系统752可包括用于处理基础系统服务以及用于执行硬件相关任
务的指令。在一些具体实施中,操作系统752可以是内核(诸如UNIX内
核)。在一些具体实施中,操作系统752可包括用于执行运动围栏的指
令。例如,操作系统752可实施运动围栏特征,如参考图1-6所述的。

存储器750还可存储通信指令754以促进与一个或多个附加设备、一
个或多个计算机和/或一个或多个服务器进行通信。存储器750可包括用于
促进图形用户界面处理的图形用户界面指令756;用于促进传感器相关的处
理和功能的传感器处理指令758;用于促进电话相关的处理和功能的电话指
令760;用于促进电子消息发送相关的处理和功能的电子消息发送指令
762;用于促进网络浏览相关的处理和功能的网络浏览指令764;用于促进
媒体处理相关的处理和功能的媒体处理指令766;用于促进GNSS和导航相
关的处理和功能的GNSS/导航指令768;和/或用于促进相机相关的处理和
功能的相机指令770。

存储器750可存储软件指令772以促进其他处理和功能,诸如参考图
1-图6所述的运动围栏处理和功能。例如,软件指令772可包括用于确定移
动设备的当前域并基于当前运动域来修改或调用应用程序的指令。

存储器750还可存储其他软件指令774,诸如用于促进与网络视频相
关的处理和功能的网络视频指令;和/或用于促进与网上购物相关的处理和
功能的网上购物指令。在一些具体实施中,媒体处理指令766被划分为分
别用于促进与音频处理相关的处理和功能以及与视频处理相关的处理和功
能的音频处理指令和视频处理指令。

上面识别的指令和应用程序中的每一者可对应于用于执行上述一个或
多个功能的指令集。这些指令不需要作为独立的软件程序、进程或模块来
实施。存储器750可包括另外的指令或更少的指令。此外,可在被包括在
一个或多个信号处理电路和/或专用集成电路中的硬件和/或软件中实施计算
设备700的各种功能。

运动围栏.pdf_第1页
第1页 / 共21页
运动围栏.pdf_第2页
第2页 / 共21页
运动围栏.pdf_第3页
第3页 / 共21页
点击查看更多>>
资源描述

《运动围栏.pdf》由会员分享,可在线阅读,更多相关《运动围栏.pdf(21页珍藏版)》请在专利查询网上搜索。

在一些具体实施中,移动设备可被配置有虚拟运动围栏,该虚拟运动围栏描绘可由移动设备检测到的运动域。在一些具体实施中,移动设备可被配置为在移动设备(通过跨越运动围栏)进入或退出运动域时调用应用程序或功能。在一些具体实施中,进入或退出运动域可使得移动设备的部件以递增方式通电或断电(或被唤醒或休眠)。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1