android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
来源:互联网 发布:乱码翻译软件 编辑:程序博客网 时间:2024/06/16 17:00
http://blog.csdn.net/shadow_dance/article/details/8070252
一. 屏幕的唤醒
首先inputread在读取到有keyboard事件上报后,会调用到keydispatch的notifykey,去询问wm是否会对这次按键特殊处理,如果WM不处理,则此处会点亮或者熄灭屏幕。
inputReader.cpp KeyboardInputMapper::processKey
getDispatcher()->notifyKey
inputDispacher.cpp InputDispatcher::notifyKey
mPolicy->interceptKeyBeforeQueueing
com_android_server_inputManager.cpp NativeInputManager::interceptKeyBeforeQueueing
env->CallIntMethod(mCallbacksObj,
gCallbacksClassInfo.interceptKeyBeforeQueueing,
when, action, flags, keyCode, scanCode, policyFlags, isScreenOn); //此处gCallbacksClassInfo中的各种方法就是InputManager的对应的方法,在JNI初始化的时候就注册了,详情请参看register_android_server_InputManager函数,通过jniRegisterNativeMethods将inputmanager的各种callback注册到gCallbacksClassInfo中。
返回的wmaction就是后面WM对此次按键事件的policy,通过此返回值,此处会决定下一步的动作。
InputManager.java interceptKeyBeforeQueueing
mWindowManagerService.mInputMonitor.interceptKeyBeforeQueueing
WindowmanagerService.java InputMonitor::interceptKeyBeforeQueueing
mPolicy.interceptKeyBeforeQueueing
PhonewindowManager.java interceptKeyBeforeQueueing
//摘录部分代码:
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel) .
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- Android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- Android 按power键唤醒屏幕流程
- Android 按power键唤醒屏幕流程
- android 唤醒和点亮屏幕
- 音量键唤醒屏幕--解决电源键坏掉的情况
- android唤醒屏幕/保持屏幕唤醒
- android 屏幕保持唤醒
- Android唤醒屏幕
- UIAlertView的基本用法
- 网络层学习之二(IPv4及IPv6地址及相关协议)
- 谁获得了最高奖学金
- POJ2955:Brackets(区间DP)
- 读书笔记之REST
- android学习笔记 按电源键屏幕唤醒和屏幕睡眠流程(从上层到kernel)
- Strust2第(四)篇《struts2中action执行流程和源码分析》
- mysql更新表名
- HLS协议实现
- 有了QQ为什么微信还会火?
- hud1805 题目 Expression (数组创建二叉树+树的层次遍历
- 【马晓光】Endnote和文献管理技巧分享
- Strust2第(五)篇《action基础知识和数据校验》
- liferay document libery 的访问权限设置