通常很多定制系统或者与系统相关的应用都需要查询/设置Settings(设置)里边的值,比如系统亮度,休眠时间,锁屏之类的系统设置等,主要通过SettingsProvider来查询/设置,前提是要知道所要修改的值的数据类型与字符串代表的name。 对应的name值与数据类型在./ics/frameworks/base/core/java/android/provider/Settings.java文件中,例举两个例子如下: 1.查询休眠时间:
2.更改系统亮度:
需要权限:
PS: a.查询Settings中各个属性所对应的值(Android APIs):http://developer./reference/android/provider/Settings.System.html b.ContentResolver Context提供getContentResolver()方法可以获取ContentResolver对象,便可以操作文中前边所提的SettingsProvider所暴露的数据。c.Android系统提供大量的SettingsProvider,Settings除外,常用的还有管理联系人(ContactsContract)、短信(Telephony)、多媒体数据(MediaStore)等,对应的URI可到这里查看:http://developer./reference/android/provider/package-summary.html,源码路径:./ics/frameworks/base/core/java/android/provider/ d.Settings默认初始值的位置(修改之前最好弄明白先,修改后再测试一下):frameworks/base/packages/SettingsProvider/res/values/defaults.xml ========================================================================= Content Provider中的Setting.System表格内存储了很多系统属性的值,以键值对的形式存在! 可以对如下的变量进行设置 http://blog.csdn.net/zzp16/article/details/7888052 |
|
来自: joy_chen > 《Settings》