android 休眠时间和property设置

原创 2015年07月09日 19:24:14

最近在做一个项目,开机就进入我们自己的launcher,关于电源管理这一块,我们直接调用gotosleep让系统进入sleep模式。但是感觉这样做太不正规了,所以leader决定休眠部分走系统正常流程,通过设置系统screen_off_timeout改变系统超时设置,播放视频等时申请PowerManager.WakeLock阻止系统进入休眠。

  1,设置休眠超时

   Settings.System.putInt(getContentResolver(),Settings.System.SCREEN_OFF_TIMEOUT,15000);

其中getContentResolver需要通过Activity或者service得到(Activity.this.getContentResolver),可以通过Settings.System.getint方法得到超时时间,没有该设置是会抛出SettingNotFoundException异常。该方法包含在包android.provider.Settings中.其他系统中的设置一般已String方式存储,此方法能直接获得转换成Int类型的值。

这种通过SettingsProvider(android.provider.Settings.System。*)来查询/设置,前提是要知道所要修改的值的数据类型与字符串代表的name,对应那么的值和数据类型在framework/base/core/java/provider/Settings.java中。如android.provider.Settings.System.getInt(resolver, Settings.System.SCREEN_BRIGHTNESS)获得系统Backlight亮度。

注意,需要添加权限<uses-permission android:name="android.permission.WRITE_SETTINGS" />  ,或者为APP UID为syetem或root。

2:Property

属性系统是android的一个重要特性。它作为一个服务运行,管理系统配置和状态。所有这些配置和状态都是属性。每个属性是一个键值对(key/value pair),其类型都是字符串。

首先,getprop查看设备上所有属性状态值。以ro.开关表明该属性是只读的,以persist.”开头,当设置这个属性时,其值也将写入/data/property,属性“ ctrl.start ”和“ ctrl.stop ”是用来启动和停止服务。每一项服务必须在/init.rc中定义.系统启动时,init守护进程将解析init.rc和启动属性服务。一旦收到设置“ ctrl.start ”属性的请求,属性服务将使用该属性值作为服务名找到该服务,启动该服务。这项服务的启动结果将会放入“ init.svc.<服务名>“属性中。客户端应用程序可以轮询那个属性值,以确定结果。

SystemProperties.set()/SystemProperties.get()设置和读取系统Property.源码位于frameworks\base\core\java\android\os\SystemProperties.java。

通过Socket通信property_service发送消息,property_service在android启动时作为守护进程一直存在,具体实现细节稍后在研究下补上。


相关文章推荐

Android休眠设置时间

转自  http://m.blog.csdn.net/blog/song_shi_chao/23365243 /** * 获得休眠时间 毫秒 */ private in...

android 设置 永不休眠

如果想第一次烧录系统开机就是永不休眠。这个需要修改def_screen_off_timeout = -1,在android 第一次开机的时候会去读取这个值, 在文件SettingsProvider/...

【Android休眠】之Android休眠机制

1、Android设备屏幕暗下来的时候,并不是立即就进入了休眠模式;当所有唤醒源都处于de-avtive状态后,系统才会进入休眠。 2、Android设备连着adb线到其他设备的情况下,设备是不会进...

android禁止系统休眠,使屏幕不变暗的两种方法

Android 禁止系统休眠,使屏幕不变暗,保持游戏中屏幕高亮 实现这一功能的方法有两种,一种是在Manifest.xml文件里面声明,一种是在代码里面修改LayoutParams的标志位。具体...

Android 系统设置中显示设置之休眠和屏保设置篇

1、休眠设置     首先我们来看一下休眠设置在界面中的定义: 1 ListPreference 2 android:key="screen_timeout" 3...

Android应用程序添加自定义的property属性

这是因为Android只有root, system, media用户才有权限写property, 而普通APP的用户ID是APP_XXX, 所以需要提升权限. 前提一定要基于Android源码来编译,...

Android休眠设置时间

默认情况下,Android系统在超过N分钟没操作,会自动关屏并进入休眠状态。  实际上,有些项目要求超时不休眠,如果只是针对单个应用程序,我们可以通过电源管理设置状态来实现, 而如果要设置所有...

Android设置系统开机自动永不休眠

android4.2系统增永不休眠同时隐藏休眠选项 1. android\frameworks\base\packages\SettingsProvider\res\values\defaults.x...

Android休眠设置时间

默认情况下,Android系统在超过N分钟没操作,会自动关屏并进入休眠状态。  实际上,有些项目要求超时不休眠,如果只是针对单个应用程序,我们可以通过电源管理设置状态来实现, 而如果要设置所有...

Android 获取系统休眠时间和自动锁屏时间

Android手机系统没有操作后,回先黑屏,但是这个时候还没有锁屏,如果你5秒内点击电源键,屏幕还是会亮的,不用解锁;如果你超过5秒后点击电源键,那么就需要解锁才能进入手机桌面。 这里有2个时间...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 休眠时间和property设置
举报原因:
原因补充:

(最多只允许输入30个字)