Android Studio geocoder RPC nie powiodło się ze stanem 102

głosy
0

Pracując nad projektem, który pobiera adres z bazy danych.

Z tych adresów i uzyskać długość i szerokość geograficzną i przypiąć je na mapach Google działalności.

Używam tej metody, aby uzyskać długość i szerokość geograficzną z adresu:

     public LatLng getLocationFromAddress(Context context, String inputtedAddress) {

    Geocoder coder = new Geocoder(context);
    List<Address> address;
    LatLng resLatLng = null;

    try {
        // May throw an IOException
        address = coder.getFromLocationName(inputtedAddress, 5);
        if (address == null) {
            return null;
        }

        if (address.size() == 0) {
            return null;
        }

        Address location = address.get(0);
        location.getLatitude();
        location.getLongitude();

        resLatLng = new LatLng(location.getLatitude(), location.getLongitude());

    } catch (IOException ex) {

        ex.printStackTrace();

    }

    return resLatLng;

Aż 2 dni temu, dał mi 164 poprawnych coordenates od 285 adresów. Niektóre adresy dał długość i szerokość geograficzną null dla jakiegoś powodu.

Bez zmiany kodu, teraz pojawia się następujący błąd przez pierwsze 8-10 wywołań geokodera:

    W/System.err: java.io.IOException: Timed out waiting for response from server
    W/System.err:     at android.location.Geocoder.getFromLocationName(Geocoder.java:178)

Po tym, gdy reszta dać ten błąd:

W/System.err: java.io.IOException: RPC failed with status 102
              at android.location.Geocoder.getFromLocationName(Geocoder.java:178)

Dokładna linia, która daje błąd jest:

    address = coder.getFromLocationName(inputtedAddress, 5);

EDYTOWAĆ:

Po kilka bada się dowiedziałem, że klasa Geocoder.java zawiera błędy, brakuje kilka sposobów:

wprowadzić

Czy ponowne zainstalowanie systemu Android pracownia?

Utwórz 29/03/2018 o 10:15
źródło użytkownik
W innych językach...                            


2 odpowiedzi

głosy
0

Ten problem został rozwiązany w https://stackoverflow.com/a/46256093/20394

Rozwiązaniem jest uaktualnienie usługi Google Play do rewizji 44+

Odpowiedział 29/03/2018 o 10:20
źródło użytkownik

głosy
0

Wydaje się, że emulator nie zrobił mieć połączenie z internetem. Zmiana Od Ethernetu do WiFi rozwiązany. Choć na Ethernet, DNS domena jeden, więc nie mógł połączyć się z Internetem z jakiegoś powodu.

Odpowiedział 03/04/2018 o 11:27
źródło użytkownik

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