Keyguard显示流程介绍

原创 2016年08月31日 16:56:52
     Keyguard显示流程介绍:Keyguard是作为一个java lib库供SystemUI使用


      系统解屏流程:

       PhoneStatusBar的方法makeStatusBarView加载布局super_status_bar,此布局包含三个部分:1、PhoneStatusBarView;2、PanelHolder ;3、ScrimView  其中还有keyguard_bouncer,不是直接在layout布局加入,只有用户设置锁屏保护后才可见,PhoneStatusBarView 主要用来显示最上面那一栏,即系统状态等,PanelHolder是用户下拉后得到的view,keyguard_bouncer是解锁界面,无论哪种解锁模式,都是在KeyguardBouncer类中加载进来的

现在分析keyguard_bouncer在什么时候被加载,加载的具体过程

在StatusBarKeyguardViewManager的showBouncerOrKeyguard方法中加载KeyguardBouncer,调用了KeyguardBouncer的prepare的方法,加载了keyguard_bouncer布局,include了keyguard_host_view 布局,
在这个布局中包含了KeyguardSecurityContainer,在这个类中getSecurityView根据不同的SecurityMode(KeyguardSecurityModel的getSecurityMode方法控制)返回不同的layout布局文件,KeyguardSecurityViewFlipper加载了这个布局返回的view,假设我们加载的是KeyguardPatternView,在布局keyguard_pattern_view中就会加载LockPatternView


systemReady showkeyguard大致流程:


screen off show keyguard大致流程:





keyguard_bouncer的加载流程
keyguard_bouncer include KeyguardHostView;
keyguard_host_view include KeyguardSecurityContainer
KeyguardSecurityContainer include KeyguardSecurityViewFlipper
KeyguardSecurityViewFlipper 方法getSecurityView()返回当前展示的view
假设当前view是 KeyguardPatternView
keyguard_pattern_view.xml:
part 1,keyguard_message_area
part 2,LockPatternView
part 3,keyguard_eca
LockPatternView 捕捉用户触摸动画
KeyguardPatternView 定义了回调在LockPatternView 去匹配图案



   





个人联系方式:15010399702@163.com

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android6.0 锁屏(Keyguard) 简介

锁屏(Keyguard)是Android是一个非常重要的模块。包含的功能有:解锁(指纹、图案、PIN等)、锁屏通知显示、快速启动相机、快速拨号、显示日期/时间等。         Keyguard的代...
  • dreamxiang68
  • dreamxiang68
  • 2016年01月19日 23:11
  • 6605

Android6.0 keyguard锁屏加载流程分析

锁屏界面的加载通常在android中有两种方式触发:android系统开机和screenOff(灭屏)后,再screenOn; 先来看 android系统开机时候的锁屏加载流程: 首先在系统启动过程中...
  • Otaku_627
  • Otaku_627
  • 2016年12月20日 21:21
  • 3974

Keyguard 和 SystemUI

锁屏(Keyguard)是Android是一个非常重要的模块。包含的功能有:解锁(指纹、图案、PIN等)、锁屏通知显示、快速启动相机、快速拨号、显示日期/时间等。         Keyguard的...
  • q1183345443
  • q1183345443
  • 2016年10月28日 14:25
  • 1280

Android框架浅析之锁屏(Keyguard)机制原理

本文原创,转载请注明出处:http://blog.csdn.net/qinjuning       最近终于成功的摆脱了FM收音机,迈向了新的模块:锁屏、状态栏、Launcher--...
  • qinjuning
  • qinjuning
  • 2012年04月25日 21:08
  • 136545

Android Framework------之Keyguard 简单分析

前面对于MediaPlayer的系统研究,刚刚开始,由于其他原因现在要先暂停一下。这次要看的模块是android 4.2 系统中的Keyguard模块。在接触之后才发现,android4.2的keyg...
  • baidu_37649063
  • baidu_37649063
  • 2017年07月28日 17:42
  • 430

AndroidL 开机展示Keyguard锁屏机制初探

目录 目录 锁屏时序图 锁屏加载流程 PhoneWindowManager KeyguardServiceDelegate KeyguardServiceWrapper KeyguardServ...
  • zinss26914
  • zinss26914
  • 2015年11月07日 17:15
  • 4616

KeyguardManager详解

KeyguardManager 类的概述: 这个类于锁定和解锁键盘。 通过调用获取这个类的一个实例getSystemService(java.lang.String)与参数KEYGUARD_SER...
  • mtx_20103276
  • mtx_20103276
  • 2014年11月05日 18:36
  • 1951

Android4.0 Keyguard解锁屏机制

Keyguard解锁屏是Android系统中必不可少的模块,用户在开机后或者在点击Power按钮屏幕变亮后首先看到的画面即为解锁屏模块对应的界面。Keyguard模块功能相对简单:       第一...
  • Ocean2006
  • Ocean2006
  • 2012年10月17日 00:46
  • 21316

Android有关Home按键的TYPE_KEYGUARD作用

先看到PhoneWindowManager中public boolean interceptKeyTi(WindowState win, int code, int metaKeys, boolean...
  • wh_19910525
  • wh_19910525
  • 2013年08月10日 13:06
  • 4218

Android 自己实现Keyguard的一些问题

1.原生Keyguard简单探究:IKeyguardStateCallback.java文件是out底下生成的。因为在framework底下有IKeyguardStateCallback.aidl文件...
  • bberdong
  • bberdong
  • 2017年04月05日 15:14
  • 979
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Keyguard显示流程介绍
举报原因:
原因补充:

(最多只允许输入30个字)