我对我今天设置的ContentObserver有疑问。像Android中的大多数东西一样,它们设置起来似乎很简单,但总有一些问题或“不要那样做”。我在ContentObserver中发现的唯一问题是我使用的是不推荐使用的URI,但我很快/很容易地改变了它。
这是我的ContactObserver类:
public class ContactObserver extends ContentObserver {
public ContactChangeObserver() {
//Is passing in a null here fine? I'm afraid something might break, even though it hasn't in my tests.
super(null);
Log.e(getClass().getSimpleName(), "constructor");
}
public void onChange(boolean selfChange) {
//Is this super necessary?
super.onChange(selfChange);
Log.e(getClass().getSimpleName(), "changed");
}
}
在我的onCreate of my Activity中,我有这个:
this.getContentResolver().registerContentObserver(ContactsContract.Contacts.CONTENT_URI, true, new ContactObserver());
同样,这一切似乎都有效。我通过阅读日志来测试它。