Uzyskaj nazwę lokalizacji z geokodera zamiast adresu

głosy
0

Staram się zrobić to tak, że zamiast adres fizyczny jest odwrotna geokodowane od szerokości i długości geograficznej, pojawi się nazwa tego miejsca są one obecnie.

Więc jeśli są w kawiarni o nazwie „Kawa Stacka” na „123 przepełnieniem drogi”, zwraca kawy Stacka zamiast 123 przepełnieniem Road. Szukałem na odniesienie tutaj i starał małą klasę testową z następujących powodów:

public String getLocationName() {
    double latitude = location.getLatitude();
    double longitude = location.getLongitude();

    String test = ;
    String feature = ;
    String premises = ;
    String fromLocationName = ;

    geocoder = new Geocoder(context);

    try {
        addresses = geocoder.getFromLocation(latitude, longitude, 5);
        String address = addresses.get(0).getAddressLine(0);

         fromLocationName = String.valueOf(geocoder.getFromLocationName(address, 1));
         premises  = addresses.get(0).getPremises();
         feature  = addresses.get(1).getFeatureName();


    }
    catch (IOException e)
    {
        e.printStackTrace();
    }

    test = feature: +feature+ premises: +premises+ fromLocationName: +fromLocationName;
    return test;
}

Nie jestem pewien, czy robię to prawidłowo, starałem się sprawdzić, czy getPremises () lub getFeatureName () jest poprawny sposób, ale oba wydają się po prostu wrócić adres fizyczny.

Utwórz 04/11/2017 o 15:08
źródło użytkownik
W innych językach...                            


1 odpowiedzi

Uzyskaj nazwę lokalizacji z geokodera zamiast adresu

głosy
0

Staram się zrobić to tak, że zamiast adres fizyczny jest odwrotna geokodowane od szerokości i długości geograficznej, pojawi się nazwa tego miejsca są one obecnie.

Więc jeśli są w kawiarni o nazwie „Kawa Stacka” na „123 przepełnieniem drogi”, zwraca kawy Stacka zamiast 123 przepełnieniem Road. Szukałem na odniesienie tutaj i starał małą klasę testową z następujących powodów:

public String getLocationName() {
    double latitude = location.getLatitude();
    double longitude = location.getLongitude();

    String test = "";
    String feature = "";
    String premises = "";
    String fromLocationName = "";

    geocoder = new Geocoder(context);

    try {
        addresses = geocoder.getFromLocation(latitude, longitude, 5);
        String address = addresses.get(0).getAddressLine(0);

         fromLocationName = String.valueOf(geocoder.getFromLocationName(address, 1));
         premises  = addresses.get(0).getPremises();
         feature  = addresses.get(1).getFeatureName();


    }
    catch (IOException e)
    {
        e.printStackTrace();
    }

    test = "feature: "+feature+" premises: "+premises+" fromLocationName: "+fromLocationName;
    return test;
}

Nie jestem pewien, czy robię to prawidłowo, starałem się sprawdzić, czy getPremises () lub getFeatureName () jest poprawny sposób, ale oba wydają się po prostu wrócić adres fizyczny.

Odpowiedział 04/11/2017 o 15:08
źródło użytkownik

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