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

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

Android 7.0 Keyguard流程分析

在android 6.0 上Keyguard作为了SystemUI的一个库文件被引用,所以编译的时候不会出现Keyguard.apk这个文件,Keyguard也伴随着SystemUI的启动而启动,其中...

Android学习——Keyguard之解锁屏

Keyguard:即Android 中处理锁屏(电源键按下、屏幕显示时间超时)、解锁(滑动、图案、指纹、声音、人脸、虹膜等)、锁屏下显示通知管理者。 闲言少叙来看一下涉及Keyguard的部分: 1、...
  • LR6666
  • LR6666
  • 2016年09月26日 18:20
  • 2795

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

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

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

目录 目录 锁屏时序图 锁屏加载流程 PhoneWindowManager KeyguardServiceDelegate KeyguardServiceWrapper KeyguardServ...

Keyguard 透视效果

先上一张图,因为这个效果该叫什么我也不知道。     锁屏应用在解锁的时候,跟随手指的滑动,显示Launcher或者其他应用的内容,起初并未直接在Keyguard上直接修改,而是做了一个Demo,实现...

android获取版本信息、屏幕信息和设备编号

1、获取版本信息:

SystemUI源码分析三(StatusBar的加载流程)

SystemServer中调用startsystemui函数启动SystemUIService,在SystemUIService的onCreate()函数中:((SystemUIApplication...

Android L keyguard锁屏加载流程

锁屏界面的加载通常在Android中有两种方式触发:android系统开机和screenOff(灭屏)后,再screenOn; android系统开机时候的锁屏加载流程: 首先在系...

android有关Home按键的TYPE_KEYGUARD作用的仿照及其流程说明

先看到PhoneWindowManager中public boolean interceptKeyTi(WindowState win, int code, int metaKeys, boolean...

Android4.4 4.2keyguard锁屏流程梳理

Android4.4 锁屏流程梳理 刚毕业不久由于项目需要就接触到锁屏,从2.2到4.1都解过bug,也定制过一些功能。4.1之前的锁屏工作不难,但很费时间,因为它的逻辑,视图,资源分别分布在不同的路...
  • aaa2832
  • aaa2832
  • 2014年03月26日 15:55
  • 33469
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Keyguard显示流程介绍
举报原因:
原因补充:

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