1.先看使用实例代码:
class SettingsObserver extends ContentObserver {
public SettingsObserver(Handler handler) {
super(handler);
ContentResolver resolver = mContext.getContentResolver();
if ("1".equals(SystemProperties.get("ro.tyd_smart_wake_support"))) {
resolver.registerContentObserver(Settings.System.getUriFor(
Settings.System.TYD_SCREEN_DISABLE_SMART_WAKE), false, this,
UserHandle.USER_ALL);
resolver.registerContentObserver(Settings.System.getUriFor(
Settings.System.TYD_SCREEN_DISABLE_UP_SETTING), false, this,
UserHandle.USER_ALL);
}
}
@Override
public void onChange(boolean selfChange) {
}
}
用registerContentObserver注册要监听的值。
重写onChange函数,有注册是值改变的时候系统就会调用onChange