android如何停止gps

时间:2010-01-06 12:31:25

标签: android gps

通过以下代码启动监听器后工作正常。

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

经过一段时间后,我通过以下代码停止了监听器

locationManager.removeUpdates(this);

但问题是它仍在搜索我的gps任何解决方案???如何阻止gps?

5 个答案:

答案 0 :(得分:19)

您需要将实现请求位置更新的LocationListener的同一对象传递给locationManager.removeUpdates()方法。

所以除非thisgpsl是同一个,否则你应该致电:

locationManager.removeUpdates(gpsl);

答案 1 :(得分:3)

如果您使用地图,则必须执行以下操作:

locationManager.removeUpdates(locationListener);

mMap.setMylocationEnabled(false);

答案 2 :(得分:1)

你可以传递像GPSLocationListener.this这样的参数

locationManager.removeGpsStatusListener(GPSLocationListener.this);

编译不会出错

答案 3 :(得分:0)

我的监听器实现

public class GPSLocationListener extends Activity implements LocationListener {

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

    }

当我尝试使用以下代码编译时错误删除侦听器。

locationManager.removeGpsStatusListener(GPSLocationListener )

答案 4 :(得分:0)

您必须将实例传递给GPSLocationListener removeGpsStatusListener方法,而不是类名。