Observador do conteúdo do histórico do Android

Eu implementei o conteúdo observador da história, mas ele está se comportando de maneira estranha. Para cada mudança na história, sua função onChange () é executada de 3 a 5 vezes.

static class BrowserOberser extends ContentObserver {
    public BrowserOberser() {
        super(null);
    }

    @Override
    public boolean deliverSelfNotifications() {
        return true;
    }

    @Override
    public void onChange(boolean selfChange) {
        super.onChange(selfChange);
        Log.d("History", "onChange: " + selfChange);
    }

}

Eu também registrei meu observador usando

BrowserOberser observer = new BrowserOberser();
getApplication().getContentResolver().registerContentObserver(Browser.BOOKMARKS_URI, true, observer );

e adicionou permissões necessárias no manifesto.

O código funciona bem, mas onChange (); funciona de 3 a 5 vezes para cada mudança na história
Alguém pode me ajudar com uma solução para este problema?

questionAnswers(3)

yourAnswerToTheQuestion