Можно ли установить время ожидания сетевого вызова более 60 секунд. - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть некоторые сетевые вызовы, которые могут занять больше минуты, поэтому я хочу установить тайм-аут запросов на 180 секунд.

Я попробовал этот код, но похоже, что через 60 секунд он отменяет запрос и не читает свойство timeout.

Это мой код.

            jsonObjectRequest.setRetryPolicy(new DefaultRetryPolicy(
                    (int) TimeUnit.SECONDS.toMillis(185),
                    DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                    DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

1 Ответ

0 голосов
/ 02 декабря 2018

возможно с модификацией 2. попробуйте этот код ниже

int timeOut = 3 * 60; // duration in seconds
    OkHttpClient client = new OkHttpClient.Builder()
            .connectTimeout(timeOut, TimeUnit.SECONDS)
            .writeTimeout(timeOut, TimeUnit.SECONDS)
            .readTimeout(timeOut, TimeUnit.SECONDS)
            .build();

    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("your netwrok url")
            .addConverterFactory(GsonConverterFactory.create())
            .client(client)
            .build();

YourRetrofitInterface service = retrofit.create(YourRetrofitInterface.class);
...