Dopo aver aggiunto le seguenti modifiche in build.gradle subito dopo l'aggiornamento all'ultima API di Android livello 23 (Marshmallow) tutte le classi org.apache.http non funzionano.org.apache.http rimossi nel livello API 23. Qual è l'alternativa?
android {
compileSdkVersion 23
buildToolsVersion "23.0.0"
defaultConfig {
applicationId "com.myapp.package"
minSdkVersion 15
targetSdkVersion 23
versionCode 2
versionName "1.1"
}
}
Ho controllato "Rapporto differenze API Android" here. Dice che tutte le Classi di org.apache.http sono state rimosse. Qualcuno può suggerire qual è l'alternativa?
Ecco il mio codice:
try {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(address);
httpPost.setEntity(new StringEntity("{\"longUrl\":\""+longUrl+"\"}"));
httpPost.setHeader("Content-Type", "application/json");
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
HttpClient era già obsoleto in Android L, quindi consiglio di utilizzare HttpURLConnection – user3641702