d-man
d-man

Reputation: 58103

android how to stop gps

After launching listener by the following code is working fine.

LocationManager locationManager =(LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(
                    LocationManager.GPS_PROVIDER, WLConstants.DELAY_HOUR, gpsl
                            .getMinDistance(), gpsl);

After some time i stop the listener by the following code

locationManager.removeUpdates(this);

but problem is it still searching my gps any solution ??? how to stop gps ?

Upvotes: 7

Views: 26800

Answers (5)

Claw Hammer
Claw Hammer

Reputation: 31

If you are using maps, you have to do:

locationManager.removeUpdates(locationListener);

mMap.setMylocationEnabled(false);

Upvotes: 3

kevin Zhang
kevin Zhang

Reputation: 11

You could pass the parameter like this GPSLocationListener.this

locationManager.removeGpsStatusListener(GPSLocationListener.this);

the compile will not be wrong

Upvotes: 1

Stelian Iancu
Stelian Iancu

Reputation: 2492

You have to pass the instance to your GPSLocationListener go the removeGpsStatusListener method and not the class name.

Upvotes: 0

Jeff Gilfelt
Jeff Gilfelt

Reputation: 26159

You need to pass the same object implementing LocationListener that you requested location updates for to the locationManager.removeUpdates() method.

So in unless this and gpsl are one and the same, you should call:

locationManager.removeUpdates(gpsl);

Upvotes: 18

d-man
d-man

Reputation: 58103

My listener implemention

public class GPSLocationListener extends Activity implements LocationListener {

    @Override
        public void onLocationChanged(Location location) {
//code here
    }

    }

when i try to remove listener using follwing code compile time error.

locationManager.removeGpsStatusListener(GPSLocationListener )

Upvotes: 0

Related Questions