Home / Programmazione / Java Android / Usare HttpURLConnection in Android
Mattepuffo

Usare HttpURLConnection in Android

Usare HttpURLConnection in Android

Passando una app totalmente ad Android 5, ho notato che praticamente tutto il package org.apache.http risulta deprecato.

In cambio, l'SDK ci mette a disposizione nuovi strumenti, che a quanto pare siano anche più leggeri.

Principalmente tutto parte dalla connessione astratta URLConnection.

Vediamo un esempio usando HttpURLConnection, altra classe astratta che estende la precedente.

Volendo è anche disponibile HttpsURLConnection, che in pratica è identica ma si aggancia ad HTTPS.

Vediamo un esempio:

import android.util.Log;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class Service {

    public void launchService(String file) throws MalformedURLException, IOException {
        URL url = new URL(file);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        InputStream is = connection.getInputStream();

        BufferedReader rd = new BufferedReader(new InputStreamReader(is));
        String line;
        StringBuilder response = new StringBuilder();
        while ((line = rd.readLine()) != null) {
            response.append(line);
        }
        rd.close();
        Log.i("RES", response.toString());
    }

Semplicemente mandiamo una richiesta ad un indirizzo remoto, passato come parametro, e stampiamo l'output nel LOG.

Enjoy!