本发明涉及android系统解锁显示方法,尤其涉及一种基于android系统的灭屏状态下指纹解锁加速亮屏方法。

背景技术:

目前,随着指纹技术越来越普及,很多android系统设备都带有指纹外设,特别是手机,指纹基本成为标配,对指纹的测试越来越完善,要求也越来越高,特别是指纹解锁方面,要求解锁速度越快,但面临一个问题,熄屏下指纹解锁比较慢,大约要1-2秒才能亮屏。产生这种情况的原因在于,分析熄屏下指纹解锁比较慢,可以先感觉到振动后亮屏,指纹算法匹配指纹成功后会发消息给上层就会振动,200ms内就振动了,也就是说主要慢的原因还是在亮屏过程时间太久,进一步分析亮屏过程为什么这么慢,有以下几个原因造成:

首先,底层系统唤醒比较慢,所有外设要全部唤醒,甚至有些外设还要重新初始化并有相应延时操作,还要解冻所有进程(50-200ms);

其次,上层系统(frameworks层)唤醒亮屏,需要很多调度并且同步机制,如同步屏是否初始化准备好,ui渲染是否准备好,各个模块状态、标志和回调等,所以等到真正执行亮屏,过程已经用了不少时间(200-400ms);

再次,锁屏状态(keyguard)解锁过程比较久,android系统灭屏的时候基本就会上锁,只时用户看上锁的界面,除非重新按电源键亮屏,如果是用指纹解锁,不当是要亮屏还要把锁屏状态解除,其实本身就会有一个UI界面切换,大部份用户看到可能是黑一下的情况,UI界面切换和很多状态的解除更新,并有很多回调,也是需要耗费不少时间(250-500ms)。

技术实现要素:

本发明要解决的技术问题在于,针对现有技术的不足,提供一种可优化指纹解锁亮屏时间,进而提高用户体验的基于android系统的灭屏状态下指纹解锁加速亮屏方法。

为解决上述技术问题,本发明采用如下技术方案。

一种基于android系统的灭屏状态下指纹解锁加速亮屏方法,该方法基于安装在android系统的指纹解锁加速亮屏软件实现,所述指纹解锁加速亮屏软件用于调度亮屏时序机制和锁屏时序机制,所述方法包括:底层系统唤醒步骤:当用户操作电源键灭屏后,系统不进入休眠流程,将背光参数直接修改为0,再等待预设时间后,系统进入休眠流程;上层系统唤醒步骤:当上层任务完成且灭屏后,系统不进入休眠流程,将背光参数直接修改为0,再等待预设时间后,系统进入休眠流程;锁屏状态解锁步骤:灭屏后延时更新锁屏UI界面,若该延时时间内指纹解锁成功则直接亮屏,不切换UI界面、更新锁屏状态和回调;深度休眠状态解锁步骤:当系统识别到用户按压指纹时,在灭屏状态下,将按压指纹消息上报至上层,系统同步进行指纹验证,若指纹验证成功,则系统直接亮屏并显示更新的UI界面,若指纹验证失败,则等待预设时间后,系统重新进入深度休眠状态。

优选地,所述底层系统唤醒步骤中,当用户操作电源键灭屏后,系统等待15秒后进入休眠流程。

优选地,所述上层系统唤醒步骤中,当上层任务完成且灭屏后,系统等待15秒后进入休眠流程。

优选地,所述深度休眠状态解锁步骤中,若指纹验证失败,则系统等待15秒后重新进入深度休眠状态。

优选地,所述亮屏时序机制通过直接操作背光的方式控制灭屏时间和亮屏时间。

优选地,所述锁屏时序调试机制用于控制上锁、解锁时间。

优选地,包括有指纹解锁加速亮屏软件启动步骤:步骤S10,android系统开机;步骤S11,指纹hal库自检ic通过设置hardware属性;步骤S12,启动指纹解锁加速亮屏软件;步骤S13,系统检查驱动设备节点是否有blfp,若否,则停止运行,若是,则执行步骤S14;步骤S14,检查是否有hardware属性,若否,则停止运行,若是,则执行步骤S15;步骤S15,系统初始化,指纹识别单元与指纹解锁加速亮屏软件建立连接。

本发明公开的基于android系统的灭屏状态下指纹解锁加速亮屏方法,其相比现有技术而言的有益效果在于,本发明大大提高了andrond系统熄屏下指纹解锁速度,较好地提升了用户体验,因此适合在android系统的亮屏控制领域推广应用,并具有较好的应用前景。

附图说明

图1为本发明第一实施例中指纹解锁加速亮屏方法的流程图;

图2为实现本发明的系统架构示意图;

图3为指纹解锁加速亮屏软件启动过程的流程图;

图4为指纹解锁亮屏优化效果图;

图5为灭屏状态下指纹解锁过程的流程图;

图6为本发明第二实施例中指纹解锁加速亮屏方法的流程图;

图7为本发明第三实施例中指纹解锁加速亮屏方法的流程图;

图8为本发明第四实施例中指纹解锁加速亮屏方法原始和优化流程图。

具体实施方式

下面结合附图和实施例对本发明作更加详细的描述。

实施例一

本实施例提出了一种基于android系统的灭屏状态下指纹解锁加速亮屏方法,请参见图1至图5,该方法基于安装在android系统的指纹解锁加速亮屏软件实现,所述指纹解锁加速亮屏软件用于调度亮屏时序机制和锁屏时序机制,所述方法包括:

底层系统唤醒步骤:当用户操作电源键灭屏后,系统不进入休眠流程,将背光参数直接修改为0,再等待预设时间后,系统进入休眠流程;

上层系统唤醒步骤:当上层任务完成且灭屏后,系统不进入休眠流程,将背光参数直接修改为0,再等待预设时间后,系统进入休眠流程;

锁屏状态解锁步骤:灭屏后延时更新锁屏UI界面,若该延时时间内指纹解锁成功则直接亮屏,不切换UI界面、更新锁屏状态和回调;

深度休眠状态解锁步骤:当系统识别到用户按压指纹时,在灭屏状态下,将按压指纹消息上报至上层,系统同步进行指纹验证,若指纹验证成功,则系统直接亮屏并显示更新的UI界面,若指纹验证失败,则等待预设时间后,系统重新进入深度休眠状态。

上述指纹解锁加速亮屏方法中,首先,本发明大大提高了andrond系统熄屏下指纹解锁速度,较好地提升了用户体验,其次,本发明软件适配性较强,即使移植了frameworks和driver,只要把apk从系统删除,只是没有加速亮屏机制,并不会影响系统正常使用,此外,本发明软件安全性更强,利用软件绑定ic,不易被竞争对手盗用,而且开机时会自动启动APK服务,服务启动后会校验指纹驱动设备节点以及指纹hal库设置的hardware属性,若都能够通过才会正常运行,若不通过则退出,较好地保证了只通过指纹模组才能启动加速亮屏机制。

作为一种优选方式,所述底层系统唤醒步骤中,当用户操作电源键灭屏后,系统等待15秒后进入休眠流程。进一步地,所述上层系统唤醒步骤中,当上层任务完成且灭屏后,系统等待15秒后进入休眠流程。此外,所述深度休眠状态解锁步骤中,若指纹验证失败,则系统等待15秒后重新进入深度休眠状态。

在此基础上,可以得出具体的优化策略:

首先,底层系统唤醒比较慢,解决方案是按电源键灭屏后不直接走休眠流程,直接修改背光为0从而达到灭屏效果,过15秒后系统才真正进入到休眠状态,如果是在前15秒解锁亮屏是可以完全优化这一块时间;

其次,上层系统(frameworks层)唤醒亮屏慢,解决方案同上,基本优化了这一块时间;

再次,锁屏状态(keyguard)解锁过程比较久,解决方案是灭屏后不马上更新锁屏UI,但还是有更新一些锁屏的标志,指纹解锁成功直接亮屏即可,不需要切换UI,也不需要更新锁屏状态和回调等,基本优化了这一块时间;

此外,如果当前已经灭屏并处于深睡状态,此时按压指纹会提前上报消息给上层同步执行唤醒亮屏流程(把修改背光控制开关关了,所以对于用户没有亮屏效果),同步进行指纹验证,如果验证成功,直接亮屏,更新状态即可,失败则过15秒后系统重新进入休眠状态。

本实施例中,所述亮屏时序机制通过直接操作背光的方式控制灭屏时间和亮屏时间。所述锁屏时序调试机制用于控制上锁、解锁时间。

本实施例中,指纹解锁加速亮屏软件需要支持指纹模块的Android设备共同合作完成。其中,指纹解锁加速亮屏APK,需在android源码上编译成系统APK没有界面,默认开机启动服务,核心调度加速亮屏相关机制,主要功能有:1、亮屏时序调度机制,决定什么时候灭屏,什么时候亮屏,这里亮灭屏是直接操作背光,没有经过android原生系统调试,可以大大缩短亮灭屏时间,并与原生系统亮灭屏机制兼容并存,按power键灭屏经调度直接操作背光写0,按power键亮屏或指纹解锁成功经过调度直接操作背光写设置的背光值。2、锁屏时序调试机制,决定系统什么时候上锁,什么时候需解锁,并与原生系统锁屏机制耦合兼容并存,按power键灭屏经调度不进入锁屏状态,指纹解锁成功直接亮屏,省去了解除锁屏状态的时间,或者按power键亮屏经调度才进入锁屏状态,亮屏过程中画好锁屏界面才会真正亮屏。

对Andorid系统Frameworks框架层修改,主要修改有三部分:

1、Core层一些本地接口和binder接口添加,及FingerprintManager.java所与指纹解锁加速亮屏apk通讯接口的管理,是Frameworks和指纹解锁加速亮屏apk沟通的桥梁;

2、Systemui是android原生系统自带菜单导航窗口和锁屏界面的apk,是android系统核心apk,修改主要优化了锁屏相关机制,锁屏状态切换由指纹解锁加速亮屏apk控制,主要修改了KeyguardViewMediator.java和KeyguardUpdateMonitor.java两个文件;

3、Services层Frameworks框架层的核心,有各种和样的服务,主要修改了am(ActivityManagerService)/display/fingerprint(FingerprintService.java)/lights(LightsService.java)/policy(PhoneWindowManager.java)/power(PowerManagerService.java),修改主要功能有,如亮灭屏,是否休眠具体实现,并且都由解锁加速亮屏apk控制,因修改系统亮灭、休眠、锁屏流程兼容性问题修正;4、驱动层kernel修改主要是指纹驱动和背光驱动(ddp_pwm.c),增加了修改背光控制的标志(默认是1),如果按power键灭屏将标志清零,防止操作异常背光异常亮屏,只有按power键亮屏或主动亮屏时才将标志置1,此时允许操作背光。

请参见图3,本实施例还包括有指纹解锁加速亮屏软件启动步骤:

步骤S10,android系统开机;

步骤S11,指纹hal库自检ic通过设置hardware属性;

步骤S12,启动指纹解锁加速亮屏软件;

步骤S13,系统检查驱动设备节点是否有blfp,若否,则停止运行,若是,则执行步骤S14;

步骤S14,检查是否有hardware属性,若否,则停止运行,若是,则执行步骤S15;

步骤S15,系统初始化,指纹识别单元与指纹解锁加速亮屏软件建立连接。

实施例二

作为一种替换方案,请参见图6,本实施例中,系统灭屏后走原生android系统休眠流程,但不马上更新锁屏UI,这样也能加速亮屏,但效果会稍差,系统休眠流程没有优化,只优化锁屏流程。

实施例三

作为一种替换方案,请参见图7,本实施例中,系统灭屏后不直接走休眠流程,直接修改背光为0,按原生android系统流程马上更新锁屏UI及状态,这样也能加速亮屏,但效果会稍差,锁屏流程没有优化,只优化系统休眠流程。

实施例四

作为一种替换方案,请参见图8,此方案也会优化按power键亮屏时间,原生需要唤醒亮屏流程,优化后只需操作背光即可,但会多出一个启动锁屏UI界面流程,总体来说还是有优化。

以上所述只是本发明较佳的实施例,并不用于限制本发明,凡在本发明的技术范围内所做的修改、等同替换或者改进等,均应包含在本发明所保护的范围内。

android流程点击开机键熄屏,一种基于android系统的灭屏状态下指纹解锁加速亮屏方法与流程...相关推荐

  1. Mysql出租车轨迹的分析_一种基于出租车轨迹数据的交通出行共现现象的可视化分析方法与流程...

    本发明涉及交通数据可视化领域,尤其涉及一种基于出租车轨迹数据的交通出行共现现象的可视化分析方法. 背景技术: :城市中人类移动规律中的共现现象是指来自两个区域的人们在同一个时间段内访问同一个城市区域. ...

  2. fpga map测试_一种基于SELECTMAP的可配置且高速的FPGA配置电路及实现方法与流程

    本发明属于计算机工程领域,与SoC密切相关.具体涉及一种FPGA配置电路及实现方法. 背景技术: 随着大数据的发展,计算能力的提升,人工智能近两年迎来了新一轮的爆发.2016年谷歌AlphaGo赢得了 ...

  3. 度量相似性数学建模_一种基于粒子群位置更新思想灰狼优化算法的K-Means文本分类方法与流程...

    技术特征: 1.一种基于粒子群位置更新思想灰狼优化算法的k-means文本分类方法,其特征在于:包括以下步骤: s1:对文本数据进行预处理,得到预处理后文本数据: s2:采用余弦角度为相似性度量,分别 ...

  4. matlab 双边沿滤波,一种基于数字PWM发生器的左增长双边沿UPWM信号频谱估计方法与流程...

    本发明涉及数字D类音频功放领域,尤其涉及一种由数字音频信号调制得到的左增长双边沿均匀采样脉冲宽度调制信号的频谱估计方法. 背景技术: 数字D类音频功放的电源效率相比A类.B类和AB类等线性音频功放较高 ...

  5. 导向滤波算法 java_一种基于双通道先验和侧窗导向滤波的单幅图像去雾方法与流程...

    本发明属于计算机图像处理的领域,用于图像或者视频去雾等相关领域:具体涉及一种基于双通道先验和侧窗导向滤波的单幅图像去雾方法. 背景技术: 图像采集过程中,由于雾天的影响,使得景物的能见度大幅降低,再加 ...

  6. 角谱法 matlab,一种基于部分角谱法的快速全息图生成和高质量再现方法与流程...

    本发明涉及一种全息显示领域,特别是全息图的生成和再现方法. 背景技术: 全息显示能提供给观看者需要的所有信息,因此被公认为最有前景的三维显示技术.但是,目前的全息显示技术依然有一些问题亟待解决.其中之 ...

  7. 基于信息熵确立权重的topsis法_一种基于改进多目标粒子群算法的受端电网储能优化配置方法与流程...

    本发明涉及受端电网中储能的规划问题,具体涉及一种基于改进多目标粒子群算法的受端电网储能优化配置方法. 背景技术: 随着煤炭等非可再生.高污染的能源总量日益减少,我国的电能结构正由火力发电向低碳化的清洁 ...

  8. android 画布裁剪,一种基于Android系统对UI控件进行轮廓剪裁及美化的方法与流程...

    本发明涉及Android应用的技术领域,特别涉及一种基于Android系统对UI控件进行轮廓剪裁及美化的方法. 背景技术: 目前,随着智能电视的普及,Android应用层出不穷,而那些表现形式单一.传 ...

  9. android系统自动休眠代码流程,一种基于Android系统下的可控休眠方法及系统与流程...

    本发明涉及一种手机应用,尤其涉及一种基于android系统下的可控休眠方法及系统. 背景技术: android设备的休眠指的是当长时间不用手机时手机会自动进入一个省电模式,调低或者关闭一部分电压的输出 ...

最新文章

  1. 同样都是调参,为什么人家的神经网络比我牛逼 100 倍?
  2. .NET特性:异步流
  3. 解决 NDK is missing a “platforms“ directory.
  4. 你不知道的javascript事件
  5. SpringCloud LoadBalancerClient 负载均衡原理
  6. 字符串匹配--Sunday算法
  7. virtual析构函数(作用)
  8. ubuntu下修改用户的默认目录
  9. 5 个用于在 Linux 终端中查找域名 IP 地址的命令
  10. Apache Shiro(一)——Shiro简介
  11. H3C交换机定时重启配置方法
  12. gps天线拆解图片_GPS天线原理
  13. 四,AXI总线协议解析
  14. 非计算机专业,如何学习计算机视觉
  15. Anaconda新建虚拟环境-报错Multiple Errors Encountered
  16. web个人学习笔记(待完善)
  17. linux wep加密方式,iPad wifi 断网问题通过设置加密方式(Mixed WEP)解决
  18. 盛金公式解一元三次方程_盛金公式解一元三次方程
  19. VMware Fusion自动调整分辨率的问题
  20. BI Publisher rtf模板页眉页脚

热门文章

  1. Cadence Allegro调整丝印技巧-先自动调整再手动微调图文教程及视频演示
  2. 取得WINDOWS的管理员权限
  3. Ubuntu18笔记本安装nvidia显卡驱动
  4. 张勋说:关于棒磨机的历史 你了解多少?(图文)
  5. 北美票房排行榜 实时_快手直播丨主播实时直播监测数据分享——思文22号美妆童装专场...
  6. php java rsa_java和php实现RSA加密互通-b
  7. 数据规范化处理方法-Min-max 规范化和 Z-Score 规范化
  8. 知名IT企业面试题整理(八)--合并
  9. matlab里面幂指数怎么写,幂和指数 - MATLAB Simulink - MathWorks 中国
  10. CDMA sid, nid, bid 含义解释