Ich benutze Retrofit und OkHttp, um eine Verbindung zum Server herzustellen. in den meisten Fällen funktioniert es gut. aber manchmal scheitert es. einige Male HTTP FEHLGESCHLAGEN: java.net.UnknownHostException und einige Male java.net.SocketTimeoutException. Dieser Fehler ist nur, wenn ich zu Hause mit dem WLAN Verbindung zum Server verwende. aber wenn ich das Mobilfunknetz nutze ist es gut und es gibt kein Problem. Verwendung mit Emulator ist gut. es passiert nur mit einem echten Gerät. und nur manchmal nicht alle Male.java.net.SocketTimeoutException mit Retrofit
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
httpClient.readTimeout(30, TimeUnit.SECONDS)
.connectTimeout(30, TimeUnit.SECONDS)
.writeTimeout(30, TimeUnit.SECONDS)
.build();
retrofit = new Retrofit.Builder()
.baseUrl(ClientConfigs.REST_API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient.build())
.build();
compile 'com.squareup.retrofit2:retrofit:2.2.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
Stack Overflow ist für die Programmierung von Fragen. Was ist deine Frage? Wenn Ihre Frage lautet: "Wie vermeide ich diese Fehler?" Lautet die Antwort "Stoppt die Nutzung des Internets". Sie werden auf diese Art von Problemen stoßen * viel * wenn Sie Ihre App veröffentlichen und es in allen Arten von Netzwerken in allen möglichen Situationen verwendet wird. – CommonsWare