首页 > 代码库 > Keyguard分析
Keyguard分析
从Android 6.0开始,位于frameworks/bases/packages/Keyguard的Keyguard开始被编译为一个jar包,被SystemUI静态导入,相当于SystemUI的一个界面。
Keyguard分为两个界面,不用输入密码的一级锁屏界面(SystemUI认为是PhoneStatusBar)与相应源码文件包含Security字样的二级锁屏界面(SystemUI认为是Bouncer)。
各个部件调用关系是下边这张图
可以看到,Keyguard第一个涉及到的是KeyguardDisplayManager,其由KeyguardViewMediator调用。
KeyguardViewMediator是SystemUIApplication名为SERVICES数组里的一员,这个数组的东西都是SystemUI要load的Service的class,在bootcompleted的时候启动这些服务。
1 /** 2 44 * The classes of the stuff to start. 3 45 */ 4 46 private final Class<?>[] SERVICES = new Class[] { 5 47 com.android.systemui.tuner.TunerService.class, 6 48 com.android.systemui.keyguard.KeyguardViewMediator.class, 7 49 com.android.systemui.recents.Recents.class, 8 50 com.android.systemui.volume.VolumeUI.class, 9 51 Divider.class, 10 52 com.android.systemui.statusbar.SystemBars.class, 11 53 com.android.systemui.usb.StorageNotification.class, 12 54 com.android.systemui.power.PowerUI.class, 13 55 com.android.systemui.media.RingtonePlayer.class, 14 56 com.android.systemui.keyboard.KeyboardUI.class, 15 57 com.android.systemui.tv.pip.PipUI.class, 16 58 com.android.systemui.shortcut.ShortcutKeyDispatcher.class, 17 59 com.android.systemui.VendorServices.class 18 60 };
Keyguard分析
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。