android 原生得一些默认设置,一般存储再SettingsProvider中
文件路径如下:
frameworks/base / packages/SettingsProvider/res/values/defaults.xml
1. 默认关闭Location服务
<string name="def_location_providers_allowed" translatable="false">gps</string>
修改为<string name="def_location_providers_allowed" translatable="false"> </string>
2. 默认关闭锁屏功能
<bool name="def_lockscreen_disabled">false</bool>修改为<bool name="def_lockscreen_disabled">true</bool>
3. 存储机制
defaults.xml文件中得属性会通过DatabaseHelper类,对应得转化为数据库数据,包括system/secure/Global三个数据库。
文件路径:frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
4. 属性得使用
所有属性得使用方式,基本一样,都是通过lock_settings得service获取属性值,然后进行逻辑处理
获取属性得流程如下,以def_lockscreen_disabled为例:
代码路径:frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java
4.1 获取远程lock_settings service
4.2 由于def_lockscreen_disabled为布尔类型,所以通过getLockSettings.getBoolean方法获取相应属
此处说明一下,def_lockscreen_disabled得值存储到数据库得key为lockscreen.disabled
public final static String DISABLE_LOCKSCREEN_KEY = "lockscreen.disabled";