Раньше, чтобы получить текущее местоположение пользователя, я использовал LocationManager:
LocationManager locationManager = (LocationManager) getActivity().getSystemService(Context.LOCATION_SERVICE);
if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
} else if (locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
}
Легко читается и очень простой код.
Но я заметил, что недавно Google опубликовал модель нового клиента API в сервисах Google Play и предлагает использовать FusedLocationProviderApi, который выглядит намного сложнее, он асинхронный, он требует обработки обратных вызовов и т.д.
Есть ли преимущества использования FusedLocationProviderApi над LocationManager?