Android Получить Адрес местонахождения с геокодировщиком в службе

голоса
1

Я последовал за этим , чтобы получить координаты местоположения и адрес

Так вот его получение обновлений местоположения Координаты Широта и долгота за каждые 10 секунд

Я пытаюсь получить Адрес местонахождения вместе с ними

Здесь , чтобы получить адрес я использую Const класс

public class Const {

public static String getCompleteAddressString(Context m_context, double LATITUDE, double LONGITUDE) {
    String strAdd = ;
    Geocoder geocoder = new Geocoder(m_context, Locale.getDefault());
    try {
        List<Address> addresses = geocoder.getFromLocation(LATITUDE, LONGITUDE, 1);
        if (addresses != null) {
            Address returnedAddress = addresses.get(0);
            StringBuilder strReturnedAddress = new StringBuilder();

            for (int i = 0; i < returnedAddress.getMaxAddressLineIndex(); i++) {
                strReturnedAddress.append(returnedAddress.getAddressLine(i)).append(\n);
            }
            strAdd = strReturnedAddress.toString();
            Log.v(My Current location add,  + strAdd.toString());
        }
    } catch (Exception e) {
        e.printStackTrace();
        Toast.makeText(m_context, Sorry, Your location cannot be retrieved ! + e.getMessage(), Toast.LENGTH_SHORT).show();

    }
    return strAdd;
}
}

И теперь в главном деятельности Чтобы получить адрес , я использую

private void updateUI() {
mLatitudeTextView.setText(String.format(%s: %f, mLatitudeLabel,
        mCurrentLocation.getLatitude()));
mLongitudeTextView.setText(String.format(%s: %f, mLongitudeLabel,
        mCurrentLocation.getLongitude()));
mLastUpdateTimeTextView.setText(String.format(%s: %s, mLastUpdateTimeLabel,
        mLastUpdateTime));

//For Address

mLocAddTextView.setText(String.format(%s: %s, mLocAddressLabel,
Const.getCompleteAddressString(this, mCurrentLocation.getLatitude(), mCurrentLocation.getLongitude())));
 }

Но здесь его проявления ничего не может предложить любой из меня, что случилось в этом

Задан 27/02/2018 в 07:54
источник пользователем
На других языках...                            


1 ответов

голоса
1

Ваш код совершенен

Попробуйте это в вашем Const class

strReturnedAddress .append(returnedAddress.getAddressLine(0)).append("\n");

Если вы хотите использовать почтовый индекс, населенный пункт и страну .. и т.д ... использование

List<Address> addresses = geocoder.getFromLocation(LATITUDE, LONGITUDE, 1);
if (addresses != null) {
    Address returnedAddress = addresses.get(0);
    StringBuilder strReturnedAddress = new StringBuilder("");
    for (int i = 0; i < returnedAddress.getMaxAddressLineIndex(); i++) {
                  strReturnedAddress.append(returnedAddress.getAddressLine(i)).append("\n");
    }
        strReturnedAddress .append(returnedAddress.getAddressLine(0)).append("\n");
        strReturnedAddress .append(returnedAddress.getLocality()).append("\n");
        strReturnedAddress .append(returnedAddress.getPostalCode()).append("\n");
        strReturnedAddress .append(returnedAddress.getCountryName());
    strAdd  = strReturnedAddress.toString();
    Log.v("My Current location add", "" + streturnedAddressd.toString());
}

Для того, чтобы получить Geocoder адрес следовать Android Геокодировать Расположение

Ответил 28/02/2018 в 08:07
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more