Android新增自定义setting

你可能知道在adb shell中,可以通过setprop和getprop指令来写入或读取设置,那么在代码中我们怎么去添加一个属于我们自己的设置项呢?

1.framework/base/core/java/android/provider/Settings.java添加setting的定义:

public static final String MY_SETTING= "my_setting";
...
public static final String[] SETTINGS_TO_BACKUP =
{
  ...
  MY_SETTING
};

2.framework/base/packages/settingsprovider/res/values/defaults.xml里面添加默认值定义:

<!-- Default for my setting -->
<integer name="my_setting">0</integer>

3.framework/base/packages/settingsprovider/src/com/android/providers/settings/databaseHelper.java里面设置默认值:

// set default value for my setting
loadIntegerSetting(stmt,Settings.System.MY_SETTING,R.integer.my_setting);

4.到此,新setting的添加就算ok了,接下来就是在代码中使用了:

写入setting:
Settings.System.putIntForUser(mContext.getContentResolver(),
  Settings.System.MY_SETTING, yourValue,
  UserHandle.USER_CURRENT);

读取setting:
Settings.System.getInt(aContext.getContentResolver(),
  Settings.System.MY_SETTING, defaultValue);

读取出来的值会作为返回值返回过来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ThisIsClark

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值