一种通过摇动使设备屏幕显示转到重力方向的方法技术

技术编号:8562772 阅读:277 留言:0更新日期:2013-04-11 04:23
本发明专利技术提出了一种通过摇动使设备屏幕显示转到重力方向的方法,其进入特定应用程序时通过调用操作系统获取到当前设备传感器相关的服务;判断设备是否具有加速度传感器和重力传感器;获取加速度传感器输出的数据,根据获取的加速度的时间和加速度值判断用户是否进行有效的屏幕摇动动作;获取重力传感器输出的数据,比较重力传感器报告的重力方向和当前屏幕显示方向,在两者不一致的情况下旋转屏幕显示至重力方向;在退出或者重启程序时,按系统设置或程序本身默认的配置设定屏幕显示方向。不管用户对系统方向进行了何种设置,用户均可以通过对设备“摇一摇”实现临时性的、重力方向的转屏操作,并固定屏幕,使其满足用户的需求。

【技术实现步骤摘要】

本专利技术涉及一种改变手持设备屏幕显示方向的方法,尤其是一种在程序中通过摇 动设备实现设备屏幕显示转动到重力方向的方法。
技术介绍
目前手机(或平板电脑等其他移动计算设备)往往都带有重力感应设备,使得这些 设备可以感知到屏幕的垂直方向的旋转角度,并可以让屏幕显示内容与之同步自动旋转。 这种自动旋转屏幕内容的设置,一般都是这些设备的出厂设置。同时,设备制造商也注意 到,有时候用户会希望屏幕的方向被固定住,不要重力感应器探测到的方向旋转,其原因是 部分用户的大部分查看习惯是固定为某一个方向,以达到某种便利性。比如,某用户将手机 屏幕固定为竖屏方向,这样既不影响他平时接打电话等活动,还可以保证他在侧躺情况下 阅读网页内容时,网页内容不会因为重力感应的原因变为横向屏幕,导致无法阅读。但是, 对于这种固定屏幕方向的用户,他们也存在不便之处比如在竖屏情况下查看网页或者文 档内容,有时候字体过小,不便于查看,此时需要横屏显示。而此时此用户将手机横向持握 时,屏幕内容并不会自动旋转(因为被他自己设置为锁定竖屏了)。此时此用户若想达到横 屏阅读的目的,必须手动解除前述锁定屏幕的设置。并且横屏阅读完毕之后,若希望再次获 得锁定竖屏带来的便利性,又需要记得将屏幕再次手动设置为锁定竖屏。现在,应用软件的通常做法是在程序界面上提供旋转屏幕的按钮或菜单,但这需 要占用界面空间,并且有可能因为本身已经存在较多的功能按钮或菜单,导致这个功能无 法被用户及时发现。或者,在设备旋转时,在屏幕上显眼的位置弹出按钮,提示用户按下后转屏,这不 仅遮挡用户的视线,并且有可能不是所有情况用户都需要转屏,总是弹出这样的按钮会让 用户感到打扰。
技术实现思路
本专利技术要解决的问题是,用户固定屏幕方向的时候,可以通过一种简单,直观的操 作临时转换到重力屏幕方向。因此,本专利技术的目的在于为了让这种经常处于锁定屏幕方向 状态,但不时有更换屏幕方向需要的用户使用起来更加方便。本专利技术通过一种在程序中通过摇动设备实现设备屏幕显示转动到重力方向的方 法来实现此目的,其包含以下步骤步骤一进入特定应用程序时通过调用操作系统获取到当前设备传感器相关的服务; 步骤二 判断设备是否具有加速度传感器和重力传感器;步骤三获取加速度传感器输出的数据,记录加速度传感器报告的加速度的时间和加 速度值,计算得出相邻的第一加速度和第二加速度的时间差,以及手机屏幕X、Y、Z三轴上 第一加速度和第二加速度之间加速度变化的绝对值,再根据所述时间差和加速度变化的绝 对值利用以下公式计算出加速度变化率的平均值speed= (deItaX+deItaY+deItaZ) XC/diff,其中speed为加速度变化率的平均值,deltaX、deltaY、deltaZ分别为手机屏幕X、Y、 Z轴上加速度变化的绝对值,diff为相邻的第一加速度和第二加速度的时间差,C为放大系 数;将所述平均值speed与预设的阈值相比较,在平均值大于平均值阈值时判断产生了一 次加速度巨变,并记录当前加速度巨变产生时间,在加速度巨变计数器中对加速度巨变的 次数加1,其中若当前加速度巨变的时间和上次加速度巨变产生的时间差大于一预设的时 间差阈值时,将加速度巨变计数器归零;当加速度巨变的次数达到预设的次数阈值时,判定 产生用户摇屏动作;在判断产生用户摇屏动作时,计算当前摇屏动作与上一次摇屏动作的 时间差,并将摇屏动作的时间差与预设的时间差阈值相比较,在所述时间差大于时间差阈 值时判断用户摇屏动作有效,并将加速度巨变计数器归零;步骤四获取重力传感器输出的数据,记录重力传感器报告的重力方向;步骤五比较重力传感器报告的重力方向和当前屏幕显示方向,在不一致的情况下根 据重力方向旋转当前屏幕显示方向,;步骤六在退出或者重启程序时,按系统设置或程序本身默认的配置设定屏幕方向。这样,设备被锁定为任何方向时,用户摇一摇手机,若当前屏幕内容显示的方向和 本应按重力感应转向的方向不一致,则将当前屏幕内容显示的方向转换为与重力感应指示 的屏幕方向一致。解决了锁定屏幕的用户面临的希望临时旋转屏幕的问题,并且不存在现 有技术的缺陷。并且,此方案具有很强的直观性根据对使用场景的观察,用户在旋转设备 到某一个方向后,发现屏幕没有旋转的话,经常会下意识的抖动自己的设备(手机,平板电 脑,等),这是因为用户在下意识中认为设备是容器,屏幕内容是容器中可以随重力滑动的 物件。本专利技术正好可以在吻合用户的心理预期的情况下,满足用户的需求。具体实施方式在此具体实施例中,我们以使用Android系统的智能手机为例进行说明,本专利技术 在采用其它操作系统的智能手机上的实现与此相似。首先,本专利技术通过Android系统提供的加速度传感器来实现对用户“摇一摇”的 动作的判定,此判定可激活手机屏幕显示方向的改变。具体地,通过调用Android系统的 Activity. getSystemService (Context. SENSOR_SERVICE)获取到当前设备传感器相关的 服务 SensorManager ;然后从 SensorManager 中,通过 getDefaultSensor (Sensor. TYPE_ ACCELEROMETER)获取到设备上的加速度传感器,如果返回null,则当前设备不支持加速度 传感器,无法实现摇一摇功能,否则,通过SensorManager. registerListener,注册加速度 传感器的监听,由此实现对加速度传感器信号的获取。Android上加速度传感器包含设备三个方向上的加速度X轴设备屏幕水平向右Y轴设备屏幕竖直向上 Z轴设备屏幕垂直向外如此,设备通过onSensorChanged(SensorEvent event)不断汇报当前的加速度(每秒 大于等于5次),其中event的values中包含了当前三个方向上的实时加速度,values [O] 表示X轴上的加速度,values [I]表示Y轴上的加速度,values [2]表示Z轴上的加速度。 本专利技术通过对这三个方向上的加速度的变化,判断“摇一摇”动作,具体方案如下其中,预定义的变量及其意义包括event :系统汇报加速度附带的加速度信息对象mLastTime :上次系统汇报加速度的时间mLastX :上次汇报的X轴加速度mLastY :上次汇报的Y轴加速度mLastZ :上次汇报的Z轴加速度mLastHugeChangeTime :上次加速度巨变产生的时间(加速度巨变的含义在2中解释) mHugeChangeCount :已经连续产生的加速度巨变次数,初始为O mLastShakeTime :记录上一次摇一摇动作产生的时间,初始为O 这样,当第一次汇报加速度时,记录当前时间mLastTime,以及加速度mLastX = event, values[O], mLastY = event, values[I], mLastZ = event, values[2]。当再次汇报加速度时,获取当前时间now,通过now - mLastTime计算出时间差 diff,计算出三个方向上的加速度变化的绝对值,即当前X轴加速度event, values [O]减 去mLastX的绝对值得del本文档来自技高网
...

【技术保护点】
一种通过摇动使设备屏幕显示转到重力方向的方法,其特征在于包含以下步骤:进入特定应用程序时通过设备的操作系统获取到当前设备传感器相关的信息;判断设备是否具有加速度传感器和重力传感器;获取加速度传感器输出的数据,记录加速度传感器报告的加速度的时间和加速度值,根据获取的加速度的时间和加速度值判断是否存在用户摇屏动作;获取重力传感器输出的数据,记录重力传感器报告的重力方向;比较重力传感器报告的重力方向和当前屏幕显示方向,在不一致的情况下根据重力方向旋转当前屏幕显示方向。

【技术特征摘要】
1.一种通过摇动使设备屏幕显示转到重力方向的方法,其特征在于包含以下步骤进入特定应用程序时通过设备的操作系统获取到当前设备传感器相关的信息;判断设备是否具有加速度传感器和重力传感器;获取加速度传感器输出的数据,记录加速度传感器报告的加速度的时间和加速度值,根据获取的加速度的时间和加速度值判断是否存在用户摇屏动作;获取重力传感器输出的数据,记录重力传感器报告的重力方向;比较重力传感器报告的重力方向和当前屏幕显示方向,在不一致的情况下根据重力方向旋转当前屏幕显示方向。2.根据权利要求1所述的通过摇动使设备屏幕显示转到重力方向的方法,其特征在于,在步骤3)中,根据加速度传感器报告的加速度的时间和加速度值,计算得出相邻的第一加速度和第二加速度的时间差,以及手机屏幕轴向上第一加速度和第二加速度之间加速度变化的绝对值,再根据所述时间差和加速度变化的绝对值计算出加速度变化率的平均值;将所述平均值与预设的平均值阈值...

【专利技术属性】
技术研发人员:王晖黄兰花赵威
申请(专利权)人:珠海金山办公软件有限公司北京金山办公软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1