Settings.Global 监听 特定key 值 的 数值 注册与被注册请可出完整代码
时间: 2023-07-16 09:16:44 浏览: 46
以下是在 Android 中监听 Settings.Global 特定 key 值的数值的注册与被注册的完整代码:
注册:
```java
// 定义需要监听的key值
String key = Settings.Global.AIRPLANE_MODE_ON;
// 注册内容观察者
getContentResolver().registerContentObserver(
Settings.Global.getUriFor(key),
true,
new ContentObserver(new Handler()) {
@Override
public void onChange(boolean selfChange) {
// key值变化后的逻辑处理
boolean airplaneModeOn = Settings.Global.getInt(getContentResolver(), key, 0) == 1;
Log.d(TAG, "Airplane mode is " + (airplaneModeOn ? "on" : "off"));
}
}
);
```
被注册:
当该 key 值发生变化时,将会触发 `onChange` 方法中的逻辑处理。其中 `Settings.Global.getInt(getContentResolver(), key, 0)` 方法用于获取该 key 对应的数值,如果该 key 值不存在,则返回默认值 0。