android 键编译,android源码修改,实现长按电源键直接关机

版本:android 4.4.2

源文件路径:frameworks\base\policy\src\com\android\internal\policy\impl\PhoneWindowManager.java

修改下面的代码:

private final Runnable mPowerLongPress = new Runnable() {

@Override

public void run() {

// The context isn't read

if (mLongPressOnPowerBehavior < 0) {

mLongPressOnPowerBehavior = mContext.getResources().getInteger(

com.android.internal.R.integer.config_longPressOnPowerBehavior);

}

int resolvedBehavior = mLongPressOnPowerBehavior;

if (FactoryTest.isLongPressOnPowerOffEnabled()) {

resolvedBehavior = LONG_PRESS_POWER_SHUT_OFF_NO_CONFIRM;

}

/*

switch (resolvedBehavior) {

case LONG_PRESS_POWER_NOTHING:

break;

case LONG_PRESS_POWER_GLOBAL_ACTIONS:

mPowerKeyHandled = true;

if (!performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false)) {

performAuditoryFeedbackForAccessibilityIfNeed();

}

sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);

showGlobalActionsDialog();

break;

case LONG_PRESS_POWER_SHUT_OFF:

case LONG_PRESS_POWER_SHUT_OFF_NO_CONFIRM:

mPowerKeyHandled = true;

performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false);

sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);

mWindowManagerFuncs.shutdown(resolvedBehavior == LONG_PRESS_POWER_SHUT_OFF);

break;

}

*/

//注释掉上面的代码后,增加下面的代码

mPowerKeyHandled = true;

performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false);

sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);

mWindowManagerFuncs.shutdown(false);//这里false代表不显示关机提示框,true未显示关机提示框

}

};

修改后,长按关机键会直接关机。

从Android源码修改cpu信息

cpuinfo 网上的文章都是怎么查看/proc/cpuinfo,一直以为这种东西没法改呢,我还是太天真了./proc/cpuinfo是个文件,只读,想直接写肯定不行的.今天研究了一下,发现它的输出逻 ...

Android6&period;0 源码修改之屏蔽系统短信功能和来电功能

一.屏蔽系统短信功能 1.屏蔽所有短信 android 4.2 短信发送流程分析可参考这篇 戳这 源码位置 vendor\mediatek\proprietary\packages\apps\Mms\ ...

android后台截屏实现&lpar;2&rpar;--screencap源码修改

首先找到screencap类在Android源码中的位置,/442/frameworks/base/cmds/screencap/screencap.cpp 源码如下: /* * Copyright ...

android studio应用修改到android源码中作为内置应用

1. 方法一:导入,编译(太麻烦,各种不兼容问题) android studio和eclipse的应用结构目录是不同的,但是在android源码中的应用基本上都是使用的eclipse目录结构(在/pa ...

Android源码分析(九)-----如何修改Android系统默认时间

一 : 修改Android系统默认时间 源码路径:frameworks/base/services/java/com/android/server/SystemServer.java 主要变量EARL ...

Android源码分析(二)-----如何编译修改后的framework资源文件

一 : 编译framework资源文件 如果修改android framework资源文件,需要先编译资源文件,然后再编译framework才可以正常引用, 进入项目目录 cd work/source ...

转--2014年最新810多套android源码2&period;46GB免费一次性打包下载

转载自:http://www.eoeandroid.com/thread-497046-1-1.html 感谢该博客主人无私奉献~~ 下面的源码是从今年3月份开始不断整理源码区和其他网站上的安卓例子源 ...

2014年最新720多套Android源码2&period;0GB免费一次性打包下载

之前发过一个帖子,但是那个帖子有点问题我就重新发一个吧,下面的源码是我从今年3月份开始不断整理源码区和其他网站上的android源码,目前总共有720套左右,根据实现的功能被我分成了100多个类,总共 ...

在Mac mini上编译Android源码

参考文章 1.Android 6.0 源代码编译实践 2.编译Android源码致命错误解决方案 实践过程 1.Mac下安装Ubuntu双系统 (1)Ubuntu版本:Ubuntu 15.10 注:实 ...

随机推荐

最小生成树(Kruskal算法-边集数组)

以此图为例: package com.datastruct; import java.util.Scanner; public class TestKruskal { private static c ...

python 的特殊方法 &lowbar;&lowbar;str&lowbar;&lowbar;和&lowbar;&lowbar;repr&lowbar;&lowbar;

__str__和__repr__ 如果要把一个类的实例变成 str,就需要实现特殊方法__str__(): class Person(object): def __init__(self, name, ...

【转】BCSphere入门教程01:Immediate Alert--不错

原文网址:http://www.ituring.com.cn/article/117570 写在前面 智能硬件开发的起点是智能硬件,在本教程中的每一章节,首先会列出您的蓝牙智能硬件所需要支持的Serv ...

mysql 父子结构排序

项目中常常会遇到父子结构显示的问题,不同的数据库有不同的写的方式,比方SqlServer中用with union 实现.而Mysql则没有这么方便的语句. 例如以下category表.食品有pizaa ...

flask 动手写的接口平台

笔者做的是测试,在群里经常有人讨论,怎么和开发对接怎么难,怎么测接口比较难,开发不愿因写文档等等,是啊,我感觉也是这样,沟通,还有我们应该怎样去学习,去扩充自己,让自己不再受开发所左右, 笔者就像试图 ...

Hive基础知识

一.产生背景 1.MapReudce编程繁琐,需要编写大量的代码 2.HDFS中存放的都是文件,在HDFS中没有Scheme的概念,无法用SQL进行快速的查询. 二.Hive的概念 Hive是基于Ha ...

&lbrack;CodeChef-CAPTCITI&rsqb;Snakes capturing the Mongoose Cities

Problem 每个点都可以选择降落士兵,然后当一个点的子节点被攻占的数量超过读入中的限制后,这个城市也被占领. 每个点降落士兵都有一定的代价,问把这一个图全部攻占的最小代价. Solution 这显 ...

asp&period;net mvc接收安卓post的json字符串

筛选器: using System; using System.Collections.Generic; using System.Linq; using System.Web; using Syst ...

JFrame关闭程序就退出的设置

要是实现JFrame 关闭后程就退出或者停止可以调用setDefaultCloseOperation() 方法. 入下图程序 package ltb6w; import javax.swing.*; ...

如何在&quot&semi;Visual Studio Code&quot&semi;中使用&quot&semi; Git&quot&semi; 进行版本控制

如何在"Visual Studio Code"中使用" Git" 进行版本控制 本来认为此类教程,肯定是满网飞了.今天首次使用VS Code的Git功能,翻遍了 ...

  • 0
    点赞
  • 0
    收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值