@Override
    public void onPause() {
        if (mapFragment != null) {
            saveCenterAndZoom();
        }
        if (tileProvider != null) {
            tileProvider.onPause();
        }
        if (!Settings.isFeatureEnabledDefaultTrue(R.string.pref_useDelayedMapFragment)) {
            destroyMapFragment();
        }
        WherigoGame.get().removeListener(wherigoListenerId);
        super.onPause();
    }
to be called by map fragments' observers for zoom level change
main/src/main/java/cgeo/geocaching/unifiedmap/UnifiedMapActivity.java