如果要在系统设置中添加一个新的设置项,则该字段就具备
1.整个Android系统都能访问此设置的值,
2.该设置值为永久保存,除非刷机后该系统没有此设置项。
添加新的设置值如下步骤:
1、添加关键字
/frameworks/base/core/java/android/provider/Settings.java中添加如
public static final String AIRPLANE_MODE_ON = "airplane_mode_on";
2、添加设置项的默认值
系统设置项的默认值是在frameworks/base/packages/SettingsProvider/res/values/defaults.xml中定义的(当然也可在代码中直接给定)。
在defaults.xml中为新加的数据定义一个默认值 如
<bool name="def_airplane_mode_on">false</bool>
<bool> 为boolean类型
<string>为string 类型
<integer> 为 int 类型
3、初始化设置值
在frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java中
loadSystemSettings()方法中加入新字段的添加代码,如下:
loadBooleanSetting(stmt, Settings.System.AIRPLANE_MODE_ON, R.bool.def_airplane_mode_on);
4、重新编译一个SettingsProvider.apk,再替换原来的SettingsProvider.apk
5、用Settings.System.putBoolean();Settings.System.getBoolean()来设置和取得设置的值