一种终端的应用程序控制方法及系统与流程

文档序号:11949213阅读:164来源:国知局
一种终端的应用程序控制方法及系统与流程

本发明属于应用程序控制领域,尤其涉及一种终端的应用程序控制方法及系统。



背景技术:

随着智能移动终端的不断普及,安装在移动终端中的应用程序也层出不穷,为人们的生活和工作带来了便利。

然而,现有的移动终端在运行了应用程序之后,需要通过点击终端桌面上的悬浮窗口或下拉导航栏才能触发应用程序的指定功能的开关,操作复杂。



技术实现要素:

本发明的目的在于提供一种终端的应用程序控制的方法及系统,旨在解决现有的移动终端在运行了应用程序之后,需要通过点击终端桌面上的悬浮窗口或下拉导航栏才能触发应用程序的指定功能的开关,操作复杂的问题。

本发明是这样实现的,一种终端的应用程序控制方法,所述方法包括:

获取所述终端的旋转参数;

根据所述旋转参数计算所述终端在预设方向上的旋转角度;

当所述终端在预设方向上的旋转角度与预设旋转参数匹配时,触发所述应用程序的指定功能的开关。

本发明实施例还提供一种终端的应用程序控制系统,所述系统包括:

获取模块,用于获取所述终端的旋转参数;

计算模块,用于根据所述旋转参数计算所述终端在预设方向上的旋转角度;

触发模块,用于当所述终端在预设方向上的旋转角度与预设旋转参数匹配时,触发所述应用程序的指定功能的开关。

本发明与现有技术相比,其有益效果在于:

通过检测终端在预设方向上的旋转角度并当终端在预设方向上的旋转角度与预设旋转参数匹配时,触发终端的应用程序的指定功能的开关,使用户能够仅通过控制终端在预设方向上旋转,就能够对终端的应用程序的指定功能进行开、关控制,操作简单易于实现,适于广泛推广使用。

附图说明

图1是本发明实施例提供的终端的应用程序控制方法的基本流程框图;

图2是本发明实施例供的终端的三维空间坐标示意图;

图3是本发明一实施例提供的终端的应用程序控制方法的流程框图;

图4是本发明一实施例提供的终端的应用程序控制方法的流程框图;

图5是本发明一实施例提供的终端的应用程序控制方法的流程框图;

图6是本发明实施例提供的终端的应用程序控制系统的基本结构框图;

图7是本发明实施例供的计算模块的具体结构框图;

图8是本发明实施例提供的触发模块的具体结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

如图1所示,本实施例提供的终端的应用程序控制方法,具体包括:

步骤S101:获取所述终端的旋转参数,并根据所述旋转参数计算所述终端在预设方向上的旋转角度;

步骤S102:当所述终端在预设方向上的旋转角度与预设旋转参数匹配时,触发对所述应用程序的指定功能的开关。

在具体应用中,所述旋转参数具体是终端沿固定转轴旋转时,终端的陀螺仪传感器所检测到的三维旋转矢量数据,所述三维旋转矢量数据包括终端的三维空间坐标和终端的单位时间角速度。

在具体应用中,所述应用程序的指定功能可以是终端的屏幕录制功能;触发所述应用程序的指定功能的开关具体是指,触发对指定功能的开启和关闭控制。

如图2所示,终端10的三维空间坐标分别为平行于终端屏幕短边方向的X轴、平行于终端屏幕长边方向的Y轴以及垂直于终端屏幕平面的Z轴;所述预设方向可以是绕X轴、Y轴或Z轴旋转的方向。

下面通过一个具体实例来说明如何计算终端在预设方向上的旋转角度:

在本实施例中,预设方向为沿Z轴的顺时针方向旋转,终端在预设方向上连续两次触发监听的时间差为t,终端在第二次触发监听时绕Z轴旋转的单位时间角速度为ω,根据计算公式α=ω*t,计算得到终端绕Z轴顺时针旋转的单位时间旋转角度;

判断终端在预设方向上的转动角度不再增加之后,以停止增加的时间点为界,从开始运动到转动角度不再增加的时间为T,则终端在时间T内一共触发n次监听,n=T/t-1,根据公式对终端在时间T内绕Z轴顺时针旋转的所有单位时间旋转角度求和,得到终端在所述预设方向上的旋转角度θ。

在本实施例中,判断终端在预设方向上转动角度不再增加的方式是当转动角度不再增加且持续时间超过设定时间之后或终端转动的角速度方向相反持续时间超过设定时间之后就判断终端在预设方向上转动角度不再增加,在其它实施例中,判断的方式也可以根据需要改变,例如以连续单位时间内角度变化小于多少为判断标准等等。

沿预设方向的运动并不是指终端一定要沿预设方向移动,而是指在计算时只考虑终端的运动在预设方向上的分量,而不管其它方向上的运动。

本实施例通过检测终端在预设方向上的旋转角度并当终端在预设方向上的旋转角度与预设旋转参数匹配时,触发终端的应用程序的指定功能的开关,使用户能够仅通过控制终端在预设方向上旋转,就能够对终端的应用程序的指定功能进行开、关控制,操作简单易于实现,适于广泛推广使用。

在一实施例中,步骤S101之前还包括:

开启终端的陀螺仪传感器;

在所述应用程序中设置监听陀螺仪传感器的功能,以获取所述终端的旋转参数。

在一实施例中,步骤S102之后还包括:

在所述应用程序的指定功能运行时,若所述终端在预设方向上的旋转角度再次与预设旋转参数匹配,则再次触发所述应用程序的指定功能的开关。

如图3所示,在一实施例中,步骤S101中的根据所述旋转参数计算所述终端在预设方向上的旋转角度,具体包括:

步骤S201:根据所述旋转参数,计算所述终端旋转时连续两次触发监听的时间差,并计算所述两次触发监听中第二次触发监听时,所述终端在预设方向上的角速度分量;

步骤S202:根据所述时间差和所述角速度分量,计算所述终端在所述预设方向上的单位时间旋转角度;

步骤S203:对所述终端旋转过程中所述预设方向上的所有单位时间旋转角度求和,得到所述终端在所述预设方向上的旋转角度。

在具体应用中,应用程序每间隔预设时间监听一次终端的运动状态以获取终端的旋转参数,在终端旋转的过程中,应用程序将会触发多次对终端的监听操作,每次触发监听操作即获取当前时间和终端在预设方向的角速度分量,通过计算相邻两次(即连续两次)触发监听的时间差和相邻两次触发监听中第二次触发监听时获取的预设方向的角速度分量的乘积,可得到终端在这两次触发监听操作过程中在预设方向上旋转的弧度,将所述弧度转化为角度即为终端在预设方向上旋转的单位时间旋转角度。

由于终端旋转的过程需要耗费相对较长的时间,因此,在该时间段内将会触发多次监听操作,对该时间段内计算得到的所有单位时间旋转角度求和,即得到终端在预设方向旋转的旋转角度。

在一实施例中,步骤S102中的终端在预设方向上的旋转角度与预设旋转参数匹配,具体包括:

所述终端在所述预设方向上的旋转角度大于第一角度之后,再在与所述预设方向相反的方向上的旋转角度大于第二角度,两者之间的时间间隔小于预设时间且所述第一角度和所述第二角度均在预设角度范围内。

在具体应用中,预设角度范围可以为30°~90°。

如图4所示,在一实施例中,步骤S102具体包括:

步骤S301:将捕获到所述终端在所述预设方向上的旋转角度大于第一角度的状态,记录为第一布尔值并设置所述第一布尔值为真;

步骤S302:将捕获到在与所述预设方向相反的方向上的旋转角度大于第二角度的状态,记录为第二布尔值并设置所述第二布尔值为真;

步骤S303:若捕获到所述第一布尔值为真和捕获到所述第二布尔值为真的时间间隔小于预设时间且所述第一角度和所述第二角度均在预设角度范围内,则触发所述应用程序的指定功能的开关。

在另一实施例中,步骤S102中的终端在预设方向上的旋转角度与预设旋转参数匹配,具体包括:

所述终端在所述预设方向上的旋转角度大于第一角度并回到初始位置之后,再在与所述预设方向相反的方向上的旋转角度大于第二角度并回到初始位置,两者之间的时间间隔小于预设时间且所述第一角度和所述第二角度之和在预设角度范围内。

在具体应用中,第一角度和第二角度的取值范围均为90°~180°(也可以根据需要设置成其他范围),两者可以都设定成固定的数值,第二角度也可以根据终端在预设方向上旋转的实际角度设定,例如,终端开始转动前为竖屏状态,将第一角度设定为90°,终端在预设方向上旋转的实际角度为120°,满足大于第一角度90°的条件,此时,可以根据实际角度120°,将第二角度设定为120°(在具体应用中,第二角度可以与实际角度稍有偏差,例如120°±5°),这样就可以保证终端运行应用程序的指定功能(例如屏幕录制功能)时,已经回到终端开始转动前的竖屏状态,避免出现运行应用程序的指定功能时终端处于横屏的状态;倘若不根据终端转动的实际角度设定第二角度,则可能出现以下情况:

例如,终端开始旋转前为竖屏状态,第一角度和第二角度都设定为90°,终端在预设方向上旋转的角度为180°,这样会导致,终端旋转第二角度(即终端在与预设方向相反的方向上旋转90度)后,开始运行应用程序的指定功能时,终端处于横屏状态,倘若该指定功能为屏幕录制功能,则会造成终端在横屏状态下录入一段横屏的画面,严重降低了屏幕录制的画面效果。

如图5所示,在一实施例中,步骤S102具体包括:

步骤S401:将捕获到所述终端在所述预设方向上的旋转角度大于第一角度并回到初始位置的状态,记录为第一布尔值并设置所述第一布尔值为真;

步骤S402:将捕获到所述终端在与所述预设方向相反的方向上的旋转角度大于第二角度并回到初始位置的状态,记录为第二布尔值并设置所述第二布尔值为真;

步骤S403:若捕获到所述第一布尔值为真和捕获到所述第二布尔值为真的时间间隔小于预设时间且所述第一角度和所述第二角度之和在预设角度范围内,则触发所述应用程序的指定功能的开关。

如图6所示,本实施例提供的终端的应用程序控制系统,包括:

计算模块101,用于获取所述终端的旋转参数,并根据所述旋转参数计算所述终端在预设方向上的旋转角度;

触发模块102,用于当所述终端在预设方向上的旋转角度与预设旋转参数匹配时,触发所述应用程序的指定功能的开关。

在具体应用中,所述旋转参数具体是终端沿固定转轴旋转时,终端的陀螺仪传感器所检测到的三维旋转矢量数据,所述三维旋转矢量数据包括终端的三维空间坐标和终端的单位时间角速度。

在具体应用中,所述应用程序的指定功能可以是终端的屏幕录制功能。

如图2所示,终端10的三维空间坐标分别为平行于终端屏幕短边方向的X轴、平行于终端屏幕长边方向的Y轴以及垂直于终端屏幕平面的Z轴;所述预设方向可以是绕X轴、Y轴或Z轴旋转的方向。

本实施例通过检测终端在预设方向上的旋转角度并当终端在预设方向上的旋转角度与预设旋转参数匹配时,触发终端的应用程序的指定功能的开关,使用户能够仅通过控制终端在预设方向上旋转,就能够对终端的应用程序的指定功能的开、关控制,操作简单易于实现,适于广泛推广使用。

在一实施例中,所述系统还包括:

程序开启模块,用于开启终端的陀螺仪传感器;

监听模块,用于在所述应用程序中设置监听陀螺仪传感器的功能,以获取所述终端的旋转参数。

在一实施例中,所述触发模块还用于在所述应用程序的指定功能运行时,若所述终端在预设方向上的旋转角度再次与预设旋转参数匹配,则再次触发所述应用程序的指定功能的开关。

如图7所示,在一实施例中,计算模块102具体包括:

角速度分量计算单元201,用于根据所述旋转参数,计算所述终端旋转时连续两次触发监听的时间差,并计算所述两次触发监听中第二次触发监听时,所述终端在预设方向上的角速度分量;

单位时间旋转角度计算单元202,用于根据所述时间差和所述角速度分量,计算所述终端在所述预设方向上的单位时间旋转角度;

旋转角度计算单元203,用于对所述终端旋转过程中所述预设方向上的所有单位时间旋转角度求和,得到所述终端在所述预设方向上的旋转角度。

在具体应用中,应用程序每间隔预设时间监听一次终端的运动状态以获取终端的旋转参数,在终端旋转的过程中,应用程序将会触发多次对终端的监听操作,每次触发监听操作即获取当前时间和终端在预设方向的角速度分量,通过计算相邻两次(即连续两次)触发监听的时间差和相邻两次触发监听中第二次触发监听时获取的预设方向的角速度分量的乘积,可得到终端在这两次触发监听操作过程中在预设方向上旋转的弧度,将所述弧度转化为角度即为终端在预设方向上旋转的单位时间旋转角度。

由于终端旋转的过程需要耗费相对较长的时间,因此,在该时间段内将会触发多次监听操作,对该时间段内计算得到的所有单位时间旋转角度求和,即得到终端在预设方向旋转的旋转角度。

在一实施例中,终端在预设方向上的旋转角度与预设旋转参数匹配,具体包括:

所述终端在所述预设方向上的旋转角度大于第一角度之后,再在与所述预设方向相反的方向上的旋转角度大于第二角度,两者之间的时间间隔小于预设时间且所述第一角度和所述第二角度均在预设角度范围内。

在具体应用中,预设角度范围可以为30°~90°;预设时间间隔可以设置为2S;检测终端在某一方向上的旋转角度的截止时间点为:在预设时间段内,终端在某一方向上的旋转角度不再增加,所述预设时间段可根据需要进行设置。

如图4所示,在一实施例中,触发模块具体包括:

第一布尔值设置单元301,用于将捕获到所述终端在所述预设方向上的旋转角度大于第一角度的状态,记录为第一布尔值并设置所述第一布尔值为真;

第二布尔值设置单元302,用于将捕获到在与所述预设方向相反的方向上的旋转角度大于第二角度的状态,记录为第二布尔值并设置所述第二布尔值为真;

触发单元303,用于若捕获到所述第一布尔值为真和捕获到所述第二布尔值为真的时间间隔小于预设时间且所述第一角度和所述第二角度均在预设角度范围内,则触发所述应用程序的指定功能的开关。

在另一实施例中,终端在预设方向上的旋转角度与预设旋转参数匹配,具体包括:

所述终端在所述预设方向上的旋转角度大于第一角度并回到初始位置之后,再在与所述预设方向相反的方向上的旋转角度大于第二角度并回到初始位置,两者之间的时间间隔小于预设时间且所述第一角度和所述第二角度之和在预设角度范围内。

在具体应用中,预设角度范围可以为30°~180°;预设时间间隔可以设置为2S;检测终端在某一方向上的旋转角度的截止时间点为:在预设时间段内,终端在某一方向上的旋转角度不再增加,所述预设时间段可根据需要进行设置。检测终端回到初始位置的截止时间点为:在预设时间段内,终端在与其上一运动阶段的运动方向相反的方向上的旋转角度不再减小,所述预设时间段可根据需要进行设置。

在一实施例中,触发模块具体包括:

第一布尔值设置单元,用于将捕获到所述终端在所述预设方向上的旋转角度大于第一角度并回到初始位置的状态,记录为第一布尔值并设置所述第一布尔值为真;

第二布尔值设置单元,用于将捕获到所述终端在与所述预设方向相反的方向上的旋转角度大于第二角度并回到初始位置的状态,记录为第二布尔值并设置所述第二布尔值为真;

触发单元,用于若捕获到所述第一布尔值为真和捕获到所述第二布尔值为真的时间间隔小于预设时间且所述第一角度和所述第二角度之和在预设角度范围内,则触发所述应用程序的指定功能的开关。

在具体应用中,本发明中的功能模块或单元均可以是具有对应功能的独立设置物理存储盘也可以是集成为一体的物理存储盘,该物理存储盘可以是终端的处理器中的一部分,也可以可拆卸或不可拆卸与处理器分离设置在设置于终端中。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1