4

我面临一个奇怪的问题,我正在使用ContentObserver来捕获联系人中的更改,但问题是onchange()即使我没有进行任何更改,也会调用该方法。这是我的代码:

getContentResolver().registerContentObserver(ContactsContract.Contacts.CONTENT_URI, true, new MyCOntentObserver());

public class MyCOntentObserver extends ContentObserver{
        public MyCOntentObserver() {
            super(null);
        }
        @Override
        public void onChange(boolean selfChange) {
        super.onChange(selfChange);
            Log.e("","~~~~~~"+selfChange);
        }  

        @Override
        public boolean deliverSelfNotifications() {
            Log.e("","~~~~~~ Change");
            return true;
        }
    }

任何人都可以帮忙吗?
提前致谢

4

1 回答 1

0

registerContentObserver方法接受一个布尔notifyForDescendents变量,您将其设置为 true。也许将其设置为false?

否则,可能某些后台任务会干扰您的观察者。:)

于 2012-05-23T11:35:48.593 回答