在Android系统中,长按Power键默认会弹出对话框让你选择“飞行模式”,“静音”,“关机”等功能。这些功能对于手机非常适用,但是对于机顶盒产品就没有什么必要了。本文简单介绍一下怎样定制关机界面。

长按Power键,将会关机,弹出“设备将要关机”选择对话框。如果可以选择“是”关机,和“否”返回系统。

弹出对话框的代码位于:

frameworks\policies\base\phone\com\android\internal\policy\impl\PhoneWindowManager.java显示对话框的代码如下:

Runnable mPowerLongPress = new Runnable() {

public void run() {

mShouldTurnOffOnKeyUp = false;

performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false);

sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);

showGlobalActionsDialog();

}

};调用showGlobalActionsDialog方法将会显示上面提到的显示“飞行模式”,“静音”,“关机”,选项的对话框。

因为我的目标是不要这个节目,把这行代码注释掉,替换成关机的代码就可以了。那么关机的代码在哪里呢?这段代码位于:

frameworks\policies\base\phone\com\android\internal\policy\impl\GlobalActions.java该文件的createDialog方法中,有如下代码:

mItems = Lists.newArrayList(

// silent mode

mSilentModeToggle,

// next: airplane mode

mAirplaneModeOn,

// last: power off

new SinglePressAction(

com.android.internal.R.drawable.ic_lock_power_off,

R.string.global_action_power_off) {

public void onPress() {

// shutdown by making sure radio and power are handled accordingly.

ShutdownThread.shutdown(mContext, true);

}

public boolean showDuringKeyguard() {

return true;

}

public boolean showBeforeProvisioning() {

return true

}

});从代码中可以看出,如果选择上述对话框的“关机”选项之后,将会调用ShutdownThread的shutdown方法来关机。shutdown方法的第二个参数标识是否弹出询问对话框。

修改PhoneWindowManager.java的代码,最终代码如下:

Runnable mPowerLongPress = new Runnable() {

public void run() {

mShouldTurnOffOnKeyUp = false;

performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false);

sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);

//showGlobalActionsDialog();

ShutdownThread.shutdown(mContext, false);

}

};

取消

评论

android 自定义关机界面,怎么定制Android关机界面相关推荐

  1. android 自定义关机界面,android源码探索之定制android关机界面的方法

    本文实例讲述了android源码探索之定制android关机界面的方法.分享给大家供大家参考.具体如下: 在Android系统中,长按Power键默认会弹出对话框让你选择"飞行模式" ...

  2. Android自定义视图四:定制onMeasure强制显示为方形

    这个系列是老外写的,干货!翻译出来一起学习.如有不妥,不吝赐教! Android自定义视图一:扩展现有的视图,添加新的XML属性 Android自定义视图二:如何绘制内容 Android自定义视图三: ...

  3. java数字时钟代码,Android自定义数字时钟代码,android自定义时钟,package jp.t

    Android自定义数字时钟代码,android自定义时钟,package jp.tpackage jp.tsmsogn.digitalclock;import java.util.Calendar; ...

  4. android rom 评测,腾讯定制Android 4.0 ROM评测 附tati刷机教程

    从Nexus S刷过tita后的截图来看,该ROM的UI界面非常简单,而系统设置界面基本保持了原生界面风格.出乎人意料的是,tita并没有捆绑过多腾讯自己的应用程序(不知是不是测试版的原因). 此外, ...

  5. android 自定义 build.gradle,Gradle for Android 第二篇( Build.gradle入门 )

    这一系列暂不更新,相关技术讨论,请移步微信群,谢谢,希望大家多多支持! 新年新气象,奋斗的一年,在这一章,我们将学习以下内容: 理解Gradle文件 编写简单的构建任务 自制构建脚本 如果你还没有看g ...

  6. android自定义水平长方形进度条,Android 自定义水平进度条的圆角进度

    有时项目中需要实现水平圆角进度,如下两种,其实很简单 下面开始看代码,先从主界面布局开始看起: xmlns:tools="http://schemas.android.com/tools&q ...

  7. android自定义view获取控件,android 自定义控件View在Activity中使用findByViewId得到结果为null...

    转载:http://blog.csdn.net/xiabing082/article/details/48781489 1.  大家常常自定义view,,然后在xml 中添加该view 组件..如果在 ...

  8. android linux内核开发环境,定制Android 4.2.2开发环境

    直接进入正题 ,具体细节参见 我只是做一些补充说明: 1)下载android代码 $ repo init -u https://android.googlesource.com/platform/ma ...

  9. android 自定义绘画,【整理】Android 自定义视图之画图

    Android 自定义视图之画图 首先简单的一个画矩形的例子 public class DrawView extends View { public DrawView(Context context) ...

  10. android自定义侧滑菜单代码,原生Android 侧滑菜单实践(部分)

    此为第一个制作侧滑菜单的实践 . 此部分仅仅为部分实践: 仅缺menu的字符串布局,以及需要修改的MainActivity.java文件,也是需要主要修改的地方. 从使用MD设计-进行侧滑菜单的制作( ...

最新文章

  1. AJAX推送与拉取方式的比较
  2. MySQL使用精确匹配和范围查询的效率差别
  3. POJ3026 bfs+prim
  4. 数据结构与算法-java笔记一 更新中
  5. Gym 101246G Revolutionary Roads
  6. android 15 activity跳转
  7. Spring Cloud随记----分布式配置中心再探---消息总线的引入
  8. java字符串数组排序
  9. 用java将excel文档格式的标日初单词转成适合有道单词本的xml格式
  10. IP营销要从内部打破小众圈层的壁垒,“内容+社交”必不可少
  11. 小车|PID算法 闭环控制 带有 霍尔编码器 的电机
  12. 各浏览器flash插件下载地址
  13. EXCEL 根据超链接直接显示图片
  14. 服装系统mysql设计_服装行业ERP系统的设计与实现-店铺模块(SSH,MySQL)(含录像)
  15. 致我爱的动漫--Fate 系列 Part 1:《Fate/Zero》
  16. SL8521E开发笔记---UART配置
  17. 4. 卷积神经网络CNN
  18. 计算机主板上的ide,主板上的IDE是什么?作用?
  19. Python随机函数库random的使用
  20. <!DOCTYPE html>作用

热门文章

  1. 在SpringMVC项目中使用HIkariCP
  2. 关于flux里面的->的解释
  3. js绑定事件和解绑事件的方法
  4. java thread dump
  5. java syn包_月薪3K的后端面试点-网络与Java
  6. EXCEL表格-“魔法操作”之智能填充(数据提取)
  7. linux 拼图游戏,2020经典宝石拼图
  8. npy格式的文件生成图像展示
  9. 计算机反复几次才能启动,电脑连续开机几次才能启动怎么办?
  10. 高频交易系统性能应该从哪些方面优化?