Android-студия Geocoder RPC не удалось со статусом 102

голоса
0

Работая над проектом, который получает адрес из базы данных.

Из этих адресов я получаю LatLng и приколоть их на картах деятельности Google.

Я использую этот метод, чтобы получить LatLng с адреса:

     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;

До 2 дня назад, он дал мне 164 корректного coordenates из 285 адресов. Некоторые из адресов дал LatLng нуль по какой-то причине.

Без изменения коды, теперь я получаю следующую ошибку в течение первых 8-10 звонков в геокодер:

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

После этого, остальные дают эту ошибку:

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

Точная линия, которая дает ошибку является:

    address = coder.getFromLocationName(inputtedAddress, 5);

РЕДАКТИРОВАТЬ:

После того, как некоторые более исследования я узнал, что класс Geocoder.java есть ошибки, отсутствуют некоторые методы:

введите

Будет ли переустановить Android студийной работы?

Задан 29/03/2018 в 10:15
источник пользователем
На других языках...                            


2 ответов

голоса
0

Эта проблема была решена в https://stackoverflow.com/a/46256093/20394

Решение заключается в обновлении службы Play Google для пересмотра 44+

Ответил 29/03/2018 в 10:20
источник пользователем

голоса
0

Кажется, что эмулятор не имел подключение к Интернету. Переход от Ethernet к WiFi решен вопрос. В то время как на Ethernet, то DNS был один домен, поэтому он не смог подключиться к Интернету по какой-то причине.

Ответил 03/04/2018 в 11:27
источник пользователем

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