android 4.2以上版本永不休眠 .
来源:互联网 发布:视频慢镜头放软件 编辑:程序博客网 时间:2024/05/21 08:03
android4.2以上版本比android4.2以前的版本framework层框架部分有了很大的改变,androd4.2以前版本framework层给上的接口函数与android4.2以上版本的接口函数也有了些变化,以前让机器永不休眠的方法用在android4.2以上版本已经不起作用了。现将android4.2以上版本修改永不休眠的方法记录下来。
首先还是要修改defaults.xml文件里def_screen_off_timeout的值。
1. 修改default值,不自动休眠
/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
修改def_screen_off_timeout为-1
2.修改PowerManagerService.java文件getScreenOffTimeoutLocked()函数
/frameworks\base\services\java\com\android\server\power\PowerManagerService.java
修改前:
- private int getScreenOffTimeoutLocked() {
- int timeout = mScreenOffTimeoutSetting;
- if (isMaximumScreenOffTimeoutFromDeviceAdminEnforcedLocked()) {
- timeout = Math.min(timeout, mMaximumScreenOffTimeoutFromDeviceAdmin);
- }
- if (mUserActivityTimeoutOverrideFromWindowManager >= 0) {
- timeout = (int)Math.min(timeout, mUserActivityTimeoutOverrideFromWindowManager);
- }
- return Math.max(timeout, MINIMUM_SCREEN_OFF_TIMEOUT);
- }
private int getScreenOffTimeoutLocked() { int timeout = mScreenOffTimeoutSetting; if (isMaximumScreenOffTimeoutFromDeviceAdminEnforcedLocked()) { timeout = Math.min(timeout, mMaximumScreenOffTimeoutFromDeviceAdmin); } if (mUserActivityTimeoutOverrideFromWindowManager >= 0) { timeout = (int)Math.min(timeout, mUserActivityTimeoutOverrideFromWindowManager); } return Math.max(timeout, MINIMUM_SCREEN_OFF_TIMEOUT); }修改后:
- int nosleep;
- int timeout = mScreenOffTimeoutSetting;
- if (isMaximumScreenOffTimeoutFromDeviceAdminEnforcedLocked()) {
- timeout = Math.min(timeout, mMaximumScreenOffTimeoutFromDeviceAdmin);
- }
- if (mUserActivityTimeoutOverrideFromWindowManager >= 0) {
- timeout = (int)Math.min(timeout, mUserActivityTimeoutOverrideFromWindowManager);
- }
- nosleep = mScreenOffTimeoutSetting;
- if(nosleep < 0)
- {
- nosleep = mMaximumScreenOffTimeoutFromDeviceAdmin ;
- return Math.max(nosleep, mMaximumScreenOffTimeoutFromDeviceAdmin);
- }
- return Math.max(timeout, MINIMUM_SCREEN_OFF_TIMEOUT);
int nosleep; int timeout = mScreenOffTimeoutSetting; if (isMaximumScreenOffTimeoutFromDeviceAdminEnforcedLocked()) { timeout = Math.min(timeout, mMaximumScreenOffTimeoutFromDeviceAdmin); } if (mUserActivityTimeoutOverrideFromWindowManager >= 0) { timeout = (int)Math.min(timeout, mUserActivityTimeoutOverrideFromWindowManager); } nosleep = mScreenOffTimeoutSetting; if(nosleep < 0) { nosleep = mMaximumScreenOffTimeoutFromDeviceAdmin ; return Math.max(nosleep, mMaximumScreenOffTimeoutFromDeviceAdmin); } return Math.max(timeout, MINIMUM_SCREEN_OFF_TIMEOUT);修改后就不会休眠了。可能还有其它方法让其用不休眠,有兴趣的人可以在看看源码找着看。
0 0
- android 4.2以上版本永不休眠
- android 4.2以上版本永不休眠
- android 4.2以上版本永不休眠 .
- android 4.2以上版本永不休眠
- android 4.2以上版本永不休眠
- android 4.2以上版本永不休眠
- android 4.2以上版本永不休眠
- android 4.2 永不休眠补充
- android 设置 永不休眠
- android 设置 永不休眠
- android 设置永不休眠
- Android 系统永不休眠
- android 设置 永不休眠
- android 4.2 系统增永不休眠同时隐藏休眠选项
- 让Android设备永不休眠
- 让Android设备永不休眠
- android 4.4 系统永不休眠
- android 4.4 系统永不休眠
- 参加公司沟通课程培训,笔记
- Android性能优化案例研究(下)
- 如何获得外部看到的外网IP
- 相关
- 给图片各个位置做标记,实现类似百度地图的标记功能(动态创建页面元素,各种定位,Ajax,MVC)
- android 4.2以上版本永不休眠 .
- 当子组件大小发生变化时,容器是否要及时响应?
- Libevent示例程序3 定时器程序
- Joomla插件汉化小程序
- 黑马程序员 Java基础<五> 数组
- VIM插件汇总
- ZBar 二维码扫描,
- 手机端的点菜利器 排队美食app
- Android:ExpandableListView使用