一、本专利技术所属的领域:
本发明属于体感手势领域,尤其涉及到一种提升黑屏手势响应速度的技术方法。
二、相关技术背景
2.1 黑屏手势功能的背景介绍:
黑屏手势是目前智能手机一个独具特色又具有科技未来感的功能,即在手机待机黑屏的情况下支持屏幕手势操作,用户可通过手机内部设置的手势来直接唤醒手机的某项功能或相对应的软件。
比如我司目前黑屏手势支持暗屏下双击、C、M、O、e、V、S、Z、左滑、右滑、上滑、下滑等的手势识别并打开预设置的某项功能或打开相对应的软件。
2.2 现有黑屏手势功能的存在的技术缺点:
1.启动黑屏手势程序速度慢;
2.黑屏手势解除锁屏界面速度慢,容易导致出现闪屏现象,影响用户体验;
3.黑屏动画不流畅;
4.软件架构耦合严重,没有做到解耦形成独立功能模块的设计;
基于上述描述,这里提出一个提升黑屏手势响应速度的软件架构设计方法,旨在提供一个快速响应的黑屏手势功能和益于后续维护的功能设计思路,使黑屏手势功能不仅带来更好的用户体验,同时也便于软件后续维护和管理。

三、本发明技术方案的详细阐述
1、本发明提供的完整技术方案
本方案实现背景:对我司已有的黑屏手势速度慢问题进行改进和修复,为了方便理解这里重点指出旧方案存在速度慢的原因。

一、旧黑屏手势实现方案描述及速度慢原因:
A.描述:(见旧方案实现流程图-附图1)
每次黑屏手势事件到来就创建黑屏手势程序,在该程序内调用系统的亮屏和解锁的功能,等到屏幕亮屏和解锁完成后,启动手势动画模块,动画完成执行对应的预设置指令功能,并退出该程序。
B.速度慢原因:
1.创建黑屏手势程序耗时多;
2.解除锁屏耗时多;
以下为我司X型号机器的测试数据结果:
测试项目 数据1 数据2 数据3 平均耗时
创建程序耗时 1400ms 1300ms 1400ms 1366ms
解锁耗时 374ms 373ms 318ms 355ms

由于在Android操作系统中创建程序经历onCreate()、onStart()、onResume()导致启动一个程序需要消耗一定时间,且程序大小和复杂度越高,启动所需时间会越多。创建耗时导致用户画完手势等了1.3秒后程序才执行亮屏和解锁功能,用户无形中等待了1.3秒。
如果亮屏后没有解除锁屏界面,用户看到是锁屏界面而非手势动画界面,所以必须调用锁屏功能,若亮屏后,过了300ms才解除锁屏成功,用户会短暂看到锁屏界面,然后再看到手势动画界面。这种现象称之为闪屏,该现象会严重用户体验,尤其是强迫症性用户,所以必须对过多的解锁耗时进行优化。
上述2个现象可以导致用户画完黑屏手势实际等待了1300ms~1600ms才看到手势动画,会引起黑屏手势速度慢的体验。故基于上述的2个耗时老虎,进行下本发明专利的方案实施。

二、提升黑屏手势响应速度的方案如下:
1.方案流程图,见附图2
2.方案描述:
A、黑屏手势事件到来
B、同时进行下面2件事情
1.调用快速解锁模块
备注:解锁模块内部工作原理:跨进程调用锁屏服务,执行移除锁屏界面和回调系统解锁完成的信号。该方法比系统解锁函数快的原因是绕开系统接口的层层调用关系,一步到位直接执行移除锁屏界面和回调系统解锁完成信号;
这里我们得到快速解锁模块的解锁所需时间数据

解锁耗时 数据1 数据2 数据3 平均耗时 结论
优化前 374ms 373ms 318ms 355ms 优化后速度提升306ms
优化后 36ms 57ms 55ms 49ms

使用本方案解锁时间大幅度缩短,且为已知最快速解除锁屏的方案。即因亮屏导致解锁界面仍存在或闪屏的现象消失,因为一有手势事件到来,60ms内即可完成解锁流程,黑屏手势对解锁功能业界做法是调用系统函数接口,快速解锁时本发明专利的创新点之一。

2.调用黑屏手势跨进程服务
备注:黑屏手势跨进程服务为开机时判断黑屏手势设置开启时启动,关闭时不启动,这里使用跨进程服务调用的目的在于取代就方案中非常耗时的创建程序方案,便于快速执行黑屏手势接下来的代码流程,而非等待1.3秒后才可以执行。
这里我们也测算了调用跨进程服务和创建程序的耗时数据
项目 数据1 数据2 数据3 平均耗时 结论
创建程序 1400ms 1300ms 1400ms 1366ms 优化后速度提升1300ms
调用服务 4ms 9ms 6ms 6ms

上述彻底解决了黑屏手势速度慢的问题,收到黑屏手势事件以前需要等待1.3秒时间才能执行黑屏手势余下流程,使用本发明方案可以在10ms内就快速响应执行黑屏手势余下流程。响应速度在我司的X型号提升1000~1300ms的速度,用户画完手势一下子就看到手势动画并打开对应的功能了,带来用户体验提升非常有效果!
其中业界执行黑屏手势流程主要是创建程序或者基于锁屏模块开发,存在创建耗时或基于锁屏代码不灵活,本黑屏手势跨进程服务的建立和使用时本发明专利的创新点之一

C、黑屏手势跨进程服务完成下面2件事情,由于执行软件消耗时间短,无需考虑先后顺序
1.黑屏手势界面窗口设置可见
备注:此时用户虽然看不到界面但是屏幕已经显示手势界面,只是手势界面动画开始未执行
2.调用系统亮屏功能

D、等待系统亮屏和解锁完成,后执行手势动画模块
1.手势动画模块主要进行不同手势对应的图片组合,间隔时间更换图片,即实现动画效果
2.其中手势对应的图片越多,加上合理的间隔时间,播放的动画流畅度和用户体验会大大提升。在优化本速度中,我们新增了手势动画图片和调整了间隔时间,例如旧方案中画字母C动画,原先是10张图,每张图间隔80ms进行切换,即总动画时间800ms,在新方案中我们通过准备20张图每张图间隔50ms,即总动画时间1000ms,但是实际体验不因为多出200ms而让用户感觉速度慢,由于动画已执行,放到用户觉得动画更加细腻和字母完成更流畅的感觉。所以本发明实例我们建议一定数量的手势图片和间隔时间能启动改善用户体验的作用,这里的建议可以认为是本方案专利的创新思想之一。

E、动画执行完毕,手势界面窗口设置为不可见
F、执行手势动画对应的预设置指令,完成本次黑屏手势触发流程
G、黑屏手势跨进程服务继续保持后台运行,直到下一次手势事件到来进行中断并调用

3.关于软件架构设计创新
对于开发人员尤其是系统二次开发人员来说,减少对系统原生软件耦合非常有必要,因为Android系统软件迭代速度快,如果代码基于系统原有模块进行开发,一旦代码更新了对移植和维护工作带来很大麻烦,且一有问题调试也及其不方便。
现有黑屏手势技术方案中有些方案是基于锁屏流程原理进行开发,即黑屏手势触发事件通过锁屏流程传递完成黑屏手势逻辑,该方案基于系统锁屏模块进行开发,缺点是软件耦合性差依赖锁屏模块,导致原生系统软件可能出现版本迭代而兼容性差。本方案在黑屏手势模块建立自己的跨进程服务只接受黑屏手势触发事件及处理手势全部流程,即使后续软件有UI变更和bug修改只需要在黑屏手势模块维护即可,不需在锁屏模块进行修改,做到软件解耦的软件框架设计,该黑屏手势软件解耦的思想是本发明专利的创新点之一

2、本发明技术方案带来的有益效果
本发明黑屏速度提升方案可以带来下面效果
1.黑屏手势响应速度相对现有技术使用启动程序的相关方案可以带来1000~1300ms的速度提升;
2.本快速解锁模块所需要的时间相对于现有技术使用系统解锁功能的相关方案可以带来300ms的速度提升,属于已知最快的解锁方式,因为系统解锁功能需要执行层层的调用关系才能执行到本快速解锁模块的核心步骤;
3.独立模块的软件设计相对于现有技术基于锁屏原理相关方案,在响应速度、解锁效率、代码解耦3方面都全面优于基于锁屏原理的方案,便于开发人员的软件维护和管理;
4.动画模块合理的手势动画图片数量和间隔,可以改善视觉流畅度,这些细节的充分考虑,可以更好的提高用户体验。
基于上述阐述,使用本发明技术方案可以使黑屏手势达到几乎实时的响应,屏幕亮起即迅速执行手势动画,执行对应预设置指令。整个过程快速、连贯、流程,真正做到黑屏待机下通过手势快捷响应,让这个功能更加具有实用性。黑屏手势核心思想在于速度,即使暗屏下也能快速响应,方便用户智能化操作手势,速度提高,不仅增加用户的好感,而且也适合产品亮点的宣传。解耦化的框架设计不仅使代码更加独立,而且使维护和管理更加简单了。

四、提供本发明创造的附图:

旧方案实现流程图-附图1

附图2
五、本发明的技术关键点或欲保护点是什么
1.黑屏手势跨进程服务的实时响应技术;
2.快速解锁的技术;
3.合理手势动画图片数量和间隔时间的思想;
4.解耦式软件架构设计;

【旧文档2016年】一种提升黑屏手势响应速度的方法相关推荐

  1. PPTV多屏互动服务器可以看文档吗,关闭或删除PPTv多屏互动服务器的方法

    最近,一位电脑用户跟小编反映:下载PPTV网络电视客户端之后,打开我的电脑界面,会出现一个新的"网络"界面,该界面出现"PPTv多屏互动服务器"这个图标,那么, ...

  2. 百度BCC云解析配置(新旧文档对比) - (文档篇)

    百度BCC云解析配置流程 · 新旧文档对比 百度提示: 如何修改NS服务器地址呢? 查看详情 配置流程: 序号 步骤说明 旧版地址 新版地址 新版 1. 添加域名 查看 查看 .附参考2 下载文档 2 ...

  3. 新Word文档借用旧文档的部分样式

    场景 之前的某个文档设置好了各级标题的样式,尤其是多级列表自动更新,在新的Word文档怎么设置不成功,但不能把文档腾到就文档中. 解决方案 1.将有想复用样式的旧Word文档另存为dotm格式,例如下 ...

  4. OCR识别技术 文档识别的三种形式

    如何将文档上的文字转换成可编辑的文字,通俗一点说,就是将纸质上的文字转换成电子版形式的文字内容: 文档识别通常有三种形式,其利用的核心技术都是OCR文字识别技术. 步骤如下: 一.通过扫描,识别文字信 ...

  5. XML文档定义有几种形式?解析XML文档有哪几种方式?

    XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? a: 两种形式 dtd schema,b: 本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上 ...

  6. 文档协作的几种实现方式

    文档协作的几种实现 文档协作是OA的支撑功能之一,文档协作要求在多人之间在线共享.修订或审阅文档.包括以下形态: 上传和共享文档,维护共享范围.文档版本 基本上利用附件上传下载可以完成.       ...

  7. PDF文档压缩的两种简单方法

    我们无论在办公中还是在上网查找资料时,经常会遇到PDF文档.工作中,传送邮件时需要PDF文档格式的,但是PDF文档太大也是个棘手的问题.大多数公司邮箱上传附件大小是限制在5M以下的,否则就会出现接收失 ...

  8. 扫描件转化为word文档_如何将旧文档转换为Word 2013

    扫描件转化为word文档 Have you recently upgraded to Word 2013? Documents created in earlier versions of Word ...

  9. 【脱离文档流的三种方法】

    什么是脱离文档流? 这个标签脱离文档流的管理,不受文档流的布局约束,并且这个标签在原文档流中所占的空间也被清楚掉了 脱离文档流的3种方法为: 方法1:float浮动 方法2:flexed 方法3:ab ...

最新文章

  1. [YTU]_2384( 矩形类中运算符重载【C++】)
  2. [CTS2019]氪金手游
  3. tensorflow 语义slam_【论文阅读28】DynaSLAM
  4. Qt的简单介绍,发展和由来
  5. linux teaming状态命令,Linux 网卡Teaming
  6. DB2单表排序查询报错分析及解决办法
  7. 学python有前途吗-Python全栈开发有前景吗,是否值得学习?
  8. spring cloud config-server 高可用配置中心
  9. flex sdk中mx_internal function getTextField() 这种函数如何调用?
  10. GIT 密钥生成工具puttygen使用技巧
  11. 使用太乐地图下载器下载百度地图切片
  12. 苹果手机网页选择框 下拉框点击放大处理
  13. sam格式的结构和意义_SAMtools: SAM格式的处理利器
  14. 分销的智能变局,华为好望云服务的铁索连环
  15. WEB前端打印使用记录
  16. 在云计算行业内有什么证书比较有名?受市场认可大?
  17. doevents raiseevent withevents
  18. 汇顶科技联手镭速传输,打造科技创新!
  19. ESP8266学习一ESP8266系统学习
  20. Autosar BSW开发必知的“术语”+“缩写”概念-1-诊断通信篇

热门文章

  1. fatfs 文件属性_FatFS文件系统
  2. 京东java待遇怎么样_【京东工资|京东待遇怎么样】-看准网
  3. 南大通用GBase 8s兼容Oracle 区别
  4. 关于XC7K325T设计总结(填坑)
  5. WooCommerce Memberships 中文汉化版会员系统插件版下载
  6. c语言设计乘车调度,数学建模论文校园公交车调度问题-—本科毕业设计.doc
  7. 虚幻四蓝图操作之Actor
  8. docker下删除kafka下topic
  9. NUXT.js 前端SSR框架使用
  10. 100种思维模型之沉没成本思维模型-005