Android History Content Observer

Implementé el observador de contenido de la historia pero se está comportando de manera extraña. Para cada cambio en la historia, su función onChange () se ejecuta de 3 a 5 veces.

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);
    }

}

También registré mi observador usando

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

y agregado los permisos requeridos en el manifiesto.

El código funciona bien pero onChange (); corre 3-5 veces por cada cambio en la historia
¿Alguien puede ayudarme con una solución a este problema?