Выключение и фоновый режим LocationListener

Подскажите, пожалуйста, два вопроса по локации:

1) Я так понимаю, что метод LocationListener постоянно кушает аккумулятор и интересно как его можно приостанавливать. (вариант с установкой опроса координат через большой промежуток времени - не то)

2) Как заставить работать этот же LocationListener в фоновом режиме. Например Handler я могу использовать внутри одного из методов слушателя локации, а мне, получается, нужно сам слушатель запихнуть в Handler. Как же решить этот вопрос? (вариант с отключением галочки GPS в самом телефоне - вообще не годится, только программно)

Ниже пример шаблона кода слушателя который я использую.

public LocationListener locationListener = new LocationListener() {
        @Override
        public void onLocationChanged(Location location) {
            showLocation(location);
        }

        @Override
        public void onProviderDisabled(String provider) {
            checkEnabled();
        }

        @Override
        public void onProviderEnabled(String provider) {
            checkEnabled();
                return;
            }
            showLocation(locationManager.getLastKnownLocation(provider));
        }
        @Override
        public void onStatusChanged(String provider, int status, Bundle extras) {
          }
        }
    };

Ответы (0 шт):