onLocationChanged() выполняется дважды при использовании фиктивного местоположения
В моем приложении я хочу определить, находится ли пользователь над сайтом или нет. в onLocationChanged()
У меня есть функция входа в систему, которая аутентифицирует пользователя и сохраняет широту и долготу в базе данных. И моя функция, чтобы проверить, включено ли фиктивное местоположение или нет, также здесь. Мне нужно, чтобы местоположение было выбрано только один раз, поэтому я использовал locationManager.removeUpdates(this)
, Но когда я проверил с включением макета onLocationChanged()
звонил дважды, и я не могу понять, почему.
Вот мой код:
final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
String lat = String.valueOf(location.getLatitude());
String lon = String.valueOf(location.getLongitude());
locationManager.removeUpdates(this);
mockEnabled = isMockEnabled(getApplicationContext(), location);
login(userId, password, inDate, inTime, lat, lon);
Log.v("MOCK_STATUS", "ENABLED");
}
public void onStatusChanged(String provider, int status, Bundle extras) {}
public void onProviderEnabled(String provider) {}
public void onProviderDisabled(String provider) {}
};
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);