Я написал приведенный ниже код для получения лучшего доступного провайдера.
private static String provider;
public static String setCriteria(LocationManager locationManager) {
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_MEDIUM);
provider = locationManager.getBestProvider(criteria, true);
LocationProvider locProvide = locationManager.getProvider(provider);
if (provider == null) {
provider = LocationManager.GPS_PROVIDER;
}
return provider;
}
У меня есть этот код, чтобы найти провайдера, который я буду использовать для получения местоположения. Теперь я хочу проверить, что статус Provider. Я прочитал из документа, что LocationProvider имеет 3 состояния Доступен, Не работает и ВРЕМЕННО_НЕДОСТУПЕН. Теперь, прежде чем запрашивать прослушиватель местоположения, мне нужно проверить статус.
Если статус, например, TEMPORARILY_UNAVAILABLE или Out of Service, пользователь получит соответствующее сообщение, иначе он найдет местоположение. Итак, мой вопрос, как я могу проверить статус?
Если у кого-то есть идеи, пожалуйста, помогите мне...