Я пытаюсь получить адрес из местоположения. Я делаю это внутри асинтезы внутри Fragement. Весь другой код работает отлично (проверяя API и устанавливая некоторые элементы пользовательского интерфейса на его основе), но этот раздел для геокодирования просто не будет. Я последовал примеру из другого места в StackOverflow (не помню точной темы).Android Reverse Geocoding
TextView locTxt = (TextView) findViewById(R.id.locationText);
Geocoder geocoder;
List<Address> addresses;
Double x = 55.971627;
Double y = -3.602585;
try
{
geocoder = new Geocoder(getActivity(), Locale.ENGLISH);
addresses = geocoder.getFromLocation(x, y, 1);
StringBuilder str = new StringBuilder();
if (geocoder.isPresent())
{
Toast.makeText(getApplicationContext(),
"geocoder present", Toast.LENGTH_SHORT).show();
Address returnAddress = addresses.get(0);
String localityString = returnAddress.getLocality();
String city = returnAddress.getCountryName();
String region_code = returnAddress.getCountryCode();
String zipcode = returnAddress.getPostalCode();
str.append(localityString + "");
str.append(city + "" + region_code + "");
str.append(zipcode + "");
locTxt.setText(str);
}
else
{
Toast.makeText(getApplicationContext(), "geocoder not present", Toast.LENGTH_SHORT).show();
}
} catch (IOException e) {}
Когда он попадает в, если заявление на geocoder.isPresent() является терпит неудачу, если и только продолжает с остальной частью программы.
У вас есть разрешение на подключение к Интернету? ' ' –
Andy
@ Andy Извините, я думал, что отправил обратно эту тему. Я решил его решить. Это проблема с эмулятором. Даже когда вы устанавливаете координаты GPS для эмулятора, он не запускает код GeoCoding. Однако работает отлично на физическом устройстве. – jskrwyk