如何在Android平板电脑POWER按钮菜单中添加休眠功能

本文介绍如何在Android系统中实现屏幕休眠功能,包括修改strings.xml文件添加屏幕休眠选项,编辑ShutdownThread.java文件引入屏幕待机方法,并在GlobalActions.java中增加相应按钮。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、修改/frameworks/base/core/res/res/values/strings.xml

在此声明几个变量:
<!-- 新增的屏幕休眠的item -->
<string name="global_action_sleep">Sleep</string>
<!-- 新增sleep字符串 -->
<string name="sleep">Sleep</string>
<!-- 新增确认屏幕休眠信息 -->
<string name="sleep_confirm">The machine screen will turn off.</string>


2、修改/frameworks/base/core/java/com/android/internal/app/ShutdownThread.java
要引用几个包
import android.os.SystemClock;
android.os.PowerManager;
//添加屏幕待机方法
public static void goToSleep(Context context,long time){
context.enforceCallingOrSelfPermission(android.Manifest.permission.DEVICE_POWER, null);
final AlertDialog dialog = new AlertDialog.Builder(context)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle(com.android.internal.R.string.sleep)
.setMessage(com.android.internal.R.string.sleep_confirm)
.setPositiveButton(com.android.internal.R.string.yes,
new DialogInterface.OnClickListener() {
public void onClick
(DialogInterface dialog, int which){
PowerManager pm = (PowerManager)mContext.getSystemService(Context.POWER_SERVICE);
pm.goToSleep(SystemClock.uptimeMillis());
}
})
.setNegativeButton(com.android.internal.R.string.no, null)
.create();
dialog.getWindow().setType
(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
dialog.getWindow().addFlags
(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
dialog.show();

}


3、修改 /frameworks/policies/base/mid/com/android/internal/policy/impl/GlobalActions.java
找到mItems = Lists.newArrayList,原始代码中定义了两个SinglePressAction,即为power按钮的菜单项,这时要在里面
增加一个SinglePressAction实现屏幕休眠功能的按钮,仿照原始代码
new SinglePressAction(com.android.internal.R.drawable.ic_lock_power_off,
R.string.global_action_sleep){

public void onPress(){
ShutdownThread.goToSleep(mContext,SystemClock.uptimeMillis());

}

public boolean showDuringKeyguard(){
return true;
}

public boolean showBeforeProvisioning(){
return true;
}

}

修改后重新编译,耐心等待后,在android-x86平台的平板电脑上测试可以实现电脑的休眠功能

注:转载本blog请注明http://blog.sina.com.cn/hylinblog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值