Nuestros mejores desarrolladores han agotado sus depósitos de café, buscando diariamente por la respuesta, hasta que Hugo halló la solución en GitHub por lo tanto en este momento la comparte contigo.
Solución:
Configure OkHttpClient para la opción de tiempo de espera. Luego use esto como cliente para Retrofit.Builder
.
final OkHttpClient okHttpClient = new OkHttpClient.Builder()
.connectTimeout(20, TimeUnit.SECONDS)
.writeTimeout(20, TimeUnit.SECONDS)
.readTimeout(30, TimeUnit.SECONDS)
.build();
Utilizar esta okHttpClient
para Retrofit#Constructor
Retrofit.Builder()
.client(okHttpClient);
La documentación oficial de OkHttp sobre el tiempo de espera está aquí
intente debajo del código, se sentó timeout
son 20 segundos y readTimeout
son 30 segundos
private OkHttpClient getRequestHeader()
OkHttpClient httpClient = new OkHttpClient();
httpClient.setConnectTimeout(20, TimeUnit.SECONDS);
httpClient.setReadTimeout(30, TimeUnit.SECONDS);
return httpClient;
Luego
public class ApiClient
public static final String BASE_URL = Constants.BaseURL;
private static Retrofit retrofit = null;
public static Retrofit getClient()
if (retrofit==null)
retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.client(getRequestHeader())
.addConverterFactory(GsonConverterFactory.create())
.build();
return retrofit;
Comentarios y puntuaciones
Si eres capaz, tienes la opción de dejar un post acerca de qué te ha gustado de esta sección.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)