我写了一个简单的gps跟踪器,它在服务中收集gps信息
private void startListenCoordinateUpdates() {
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
String provider = LocationManager.GPS_PROVIDER;
int updateTime = 2*1000, updateDistance = 10;
locationManager.requestLocationUpdates(provider, updateTime, updateDistance, locationListener);
}
private void stopListenCoordinateUpdates() {
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
locationManager.removeUpdates(locationListener);
}
private class GpsTrackerLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc) {
currentTrackInfo.addCoordinate(loc.getLatitude(), loc.getLongitude(), loc.getTime());
}
@Override
public void onProviderDisabled(String provider) { }
@Override
public void onProviderEnabled(String provider) { }
@Override
public void onStatusChanged(String provider, int status, Bundle extras) { }
}
但是当收到第一个坐标时,会收到系统通知,其中包含文本“gps设置的位置”和我的应用程序图标。当我按下它时会出现位置服务设置。 即使我删除了监听器或卸载我的应用程序,此通知也永远不会消失。我不想表现出来。我怎么能摆脱这个通知?我使用android模拟器并通过DDMS发送gps坐标
答案 0 :(得分:1)
请在真正的Android设备上查看.. 通常要停止从GPS接收器收听更新,请按照以下步骤操作。
1. locationManager.removeUpdates(locationListener);
2. set locationListener = null
3. set locationManager = null
确保您在真实设备上运行该应用。