通过settings.db自定义Android系统默认设置

Android的系统设置数据存放在/data/data/com.android.providers.settings/databases/settings.db 中

数据库结构如下:

通过settings.db自定义Android系统默认设置

数据库中的默认数据在frameworks/base/packages/SettingsProvider/res/values/defaults.xml中定义

通过frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java对数据库结构及初始值进行初始化。

如果要在系统中添加默认设置,需要如下步骤(以带物理键盘的系统中默认打开软键盘为例):

1、在defaults.xml中为新加的数据定义一个默认值

<integer name="show_ime_with_hard_keyboard">1</integer>

2、在DatabaseHelper.java中的loadSecureSettings(SQLiteDatabase db)方法中加入新字段的添加代码

loadStringSetting(stmt, Settings.Secure.SHOW_IME_WITH_HARD_KEYBOARD,
R.string.show_ime_with_hard_keyboar);

3、重新编译

上一篇:Spring注入的不同方式


下一篇:form作为module name 悲剧了