Вопрос по android – Обозреватель контента вызывается, даже если контакты не изменены

3

У меня странная проблема, я использую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;
        }
    }

Кто-нибудь может помочь?
заранее спасиб

когда это называется? josephus
он вызывается в любое время, я не использую устройство, какое бы оно ни вызывалось, оно также вызывается, когда устройство синхронизируется с учетной записью gmail AnasBakez
@ Josephus Villarey @AnasBakez измени свойURI в ContactsContract.Contacts.CONTENT_VCARD_URI и установитьnotifyForDescendents вложны Ahmad Kayyali
ContactsContract.Contacts.CONTENT_VCARD_URI и установка notifyForDescendents в false, не решает проблему. Я знаю, что вопрос старый, но есть ли что-то еще? Abir Hasan

Ваш Ответ

1   ответ
0

registerContentObserver метод принимает логическое значениеnotifyForDescendents переменная, для которой вы устанавливаете значение true. Может быть, установить в fals

В противном случае, возможно, какая-то фоновая задача мешает вашему наблюдателю. :)

Проверьте документацию notifyForDescendents Developer.android.com / ссылки / Android / содержание / ..., логическое значение, android.database.ContentObserver) Ahmad Kayyali
иначе. :) josephus
Как я могу узнать, что вызывает метод OnChange? AnasBakez

Похожие вопросы