android锁屏流程_Android开机锁屏流程分析
Android开机锁屏流程: 首先:手机开机时,在SystemServer类的init2()方法中会启动线程类ServerThread的run方法如下: WindowMan
Android开机锁屏流程:
首先:手机开机时,在:
WindowManagerService wm = null; ...
try {
wm.systemReady(); //systemReady()方法。
mPolicy.systemReady(); //调用PhoneWindowManager .java中的systemReady方法。
phoneWindowManager.java中:
mKeyguardMediator.onSystemReady(); //进行待机锁屏及解锁逻辑
3. KeyguardViewMediator.java
中的onSystemReady()方法中:
doKeyguardLocked();
中的showLocked()方法:
mShowKeyguardWakeLock.acquire(); //确保屏幕处于唤醒状态
Message msg = mHandler.obtainMessage(SHOW);
mHandler.sendMessage(msg);
发送异步消息:
执行handleShow(); 方法。
handleShow方法中调用:
mKeyguardViewManager.show();
在这个show方法中:
mKeyguardView = mKeyguardViewProperties.createKeyguardView(mContext, mUpdateMonitor, this);
这个createKeyguardView方法是调用的LockPatternKeyguardViewProperties.java中createKeyguardView方法:
c reateKeyguardView方法构建一个LockPatternKeyguardView();
4.LockPatternKeyguardView();
在这个构造方法中调用了keyguardScreenCallback()方法,
调用updateScreen(getInitialMode(), false); //getInitialMode获取是锁屏还是解锁界面
假如是解锁的话调用recreateUnlockScreen()方法,
这个方法中 addView(mUnlockScreen);//
然后调用createUnlockScreenFor()方法,
在这个方法中里判断解锁方式。
其中的这个方法initializeBiometricUnlockView(unlockView);
用来初始化人脸解锁,
代码流程后,接着执行
@Override
public void show() {
// Emulate activity life-cycle for both lock and unlock screen.
if (mLockScreen != null) {
((KeyguardScreen) mLockScreen).onResume();
}
if (mUnlockScreen != null) {
((KeyguardScreen) mUnlockScreen).onResume();
}
if (mBiometricUnlock != null && mSuppressBiometricUnlock) {
mBiometricUnlock.hide();
}
}
开机锁屏的大致流程就是这样了。
,
android锁屏流程_Android开机锁屏流程分析相关推荐
- 工控液晶屏开机白屏怎么回事,开机白屏解决方法?
工控液晶屏开机白屏怎么回事,开机白屏解决方法? LCD( Liquid Crystal Display),现在已经是随处可见的设备之一,工业上的使用量也随着科技而增多!现在,工业行业都已经开始使用工控 ...
- linux电脑开机蓝屏,Windows 7电脑开机蓝屏怎么办 电脑开机蓝屏解决方法linux操作系统 -电脑资料...
今天出现电脑开机蓝屏这个问题是安装了Windows 7系统之后,我使用的是联想机器,后来在官方找到了关于电脑开机蓝屏解决方法,下面我把此文章分享一下各位朋友可参考, 故障现象: 近日微软推送8月份的更 ...
- Android系统永不熄屏和取消开机锁屏功能
Android系统取消开机锁屏功能和永不熄屏 源码 frameworks/base/packages/SettingsProvider/src/com/android/providers/settin ...
- android分屏模式_Android的分屏模式开发注意事项
android7.0 的API开始有了分屏功能,在测试时注意到主页面在分屏模式下,页面所占比例在增大或者减小的时候都会调用oncreat方法,所以查资料总结一下分屏对页面的生命周期的影响以及开发时的注 ...
- 计算机开机后黑屏 只有鼠标,开机黑屏只有鼠标
品牌型号:联想GeekPro 2020 系统:win10 1909 64位企业版 部分用户可能电脑型号不一样,但系统版本一致都适合该方法. 电脑开机黑屏只有鼠标怎么办?下面就给大家分享开机黑屏只有鼠标 ...
- java会导致电脑黑屏吗,电脑开机黑屏只显示鼠标怎么办
黑屏故障一般发生在老旧的电脑上面,导致电脑开机黑屏的原因也是多种多样,而且大多数都是硬件问题.那么电脑开机黑屏还剩鼠标的原因是什么呢?有什么解决方法呢?今天,小编针对这个问题给大家整理了三种解决方法, ...
- 计算机启动后出现黑屏鼠标,电脑开机黑屏只有鼠标,小编教你电脑开机黑屏鼠标能动怎么办...
脑补一下,这不一个画面:我们在使用电脑的过程中,在开机的时候出现黑屏现象,而我们只能摆动鼠标箭头,却无法应用电脑内的app软件.怎么办?无法适从,也不知道该怎么去解决,下面,小编就给大家带来了开机黑屏 ...
- e420 thinkpad 开机黑屏_thinkpad E420开机黑屏主板门维修
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 北京联想e40进水死机不开机主板维修 联想E40笔记本维修 北京联想笔记本黑屏 死机维修地址:北京市海淀区苏州街长远天地大厦A1座3层4305 联想笔记本 ...
- 虚拟机上服务器开机经常黑屏,VMware虚拟机开机黑屏怎么办?虚拟机开机就黑屏的完美解决办法...
VMware虚拟机开机黑屏怎么办?虚拟机开机就黑屏的完美解决办法,黑屏,开机,虚拟机,解决办法,完美 VMware虚拟机开机黑屏怎么办?虚拟机开机就黑屏的完美解决办法 易采站长站,站长之家为您整理了V ...
最新文章
- OpenCV 中的 convertTo 函数
- pytorch模型3.13
- 通过这个故事理解啥是 NIO
- 设计模式总结 (5)行为型模式续
- [c/c++] programming之路(25)、字符串(六)——memset,Unicode及宽字符,strset
- 【数据结构与算法】双链表的Java实现
- select count(1)什么意思_Python VS MySQL,我发现了select和print之间的“相通点”!
- VS2012下基于Glut 绘制矩形管示例程序:
- 2016蓝桥杯C++A:消除尾一(二进制运算)
- 南大通用发布数据库新产品 携手用户伙伴点亮世界级
- LINUX信息命令查看大全
- 编写有效用例_阅读笔记03
- android adb安装 apk,adb 安装并运行 apk
- JSONP跨域请求原理解析
- 搜狗推送接口-搜狗推送口子
- python纵向输出字符串,python-字符串方法,格式化输出
- 樊登读书会终身成长读后感_《终身成长》读书笔记
- VMWare虚拟机处理器数量与每个处理器内核数量概念,以及分配CPU资源详解
- 「TCG 规范解读」初识基础设施工作组
- odbc建oracle dsn,Linux平台配置Oracle ODBC DSN的方法