如何在Android平板电脑POWER按钮菜单中添加休眠功能
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;
importandroid.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
更多相关文章
- 【Android学习笔记】AutoCompleteTextView(数组在代码中)
- Android 高通代码预制apk可卸载,恢复出厂设置apk可恢复 Android M
- 移动网站开发中常用的10段JavaScript代码
- Android 屏幕适配,分辨率适配
- 设置Android默认锁定屏幕旋转
- android 屏幕适配方案第二版
- Android Studio制作简易计算器源代码及详解
- Android 代码实现logcat输出到文件