Я уже давно борюсь с этой проблемой, и я не могу найти никаких ответов в Интернете.
В своей голове я закрываю все, что должно быть закрыто.Я никогда не получаю тело ответа, поэтому я не понимаю, как оно может быть утечкой или как мне его закрыть.
Мой код:
try {
String urlString = AppConfig.probeNodeReportHost();
URL url = new URL(urlString);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/json;charset=UTF-8");
conn.setDoOutput(true);
conn.setDoInput(true);
DataOutputStream os = new DataOutputStream(conn.getOutputStream());
os.writeBytes(json.toString());
os.flush();
os.close();
conn.disconnect();
return true;
}catch(java.net.SocketTimeoutException e) {
System.out.println("ERROR: Request timed out");
}catch(java.net.UnknownHostException e){
System.out.println("ERROR: Unknown host");
if(AppConfig.hasNoInternetConnection()){
System.out.println("NO INTERNET CONNECTION");
}else{
System.out.println("Has internet connection");
}
}catch (Exception e){
e.printStackTrace();
}finally{
if (conn != null) {
conn.disconnect();
}
}
Редактировать: точное сообщение об ошибкеЯ получаю это:
W/OkHttpClient: A connection to 'https://admin.ststage.se/' was leaked. Did you forget to close a response body?