主题 : Android开发:长按电源键的处理方法 复制链接 | 浏览器收藏 | 打印
欢迎加入清源的android开发交流群:314230976,加群时请验证:arm,谢谢!
级别: 侠客
UID: 94332
精华: 0
发帖: 72
金钱: 370 两
威望: 74 点
贡献值: 0 点
综合积分: 144 分
注册时间: 2013-07-14
最后登录: 2013-09-25
楼主  发表于: 2013-09-24 18:26

 Android开发:长按电源键的处理方法

Android4.2代码位置: \frameworks\base\policy\src\com\android\internal\policy\impl\PhoneWindowManager.java
关键方法: PhoneWindowManager.java -->interceptKeyBeforeQueueing()
case KeyEvent.KEYCODE_POWER: //26
复制代码
  1. -->interceptPowerKeyDown()
  2. -->private final Runnable mPowerLongPress = new Runnable() {
  3.         case LONG_PRESS_POWER_GLOBAL_ACTIONS:
  4.             mPowerKeyHandled = true;
  5.             if (!performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false)) {
  6.                 performAuditoryFeedbackForAccessibilityIfNeed();
  7.             }
  8.             sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);
  9.             showGlobalActionsDialog();
  10.             break;
欢迎加入android开发交流群,群号是:314230976