Posts com a tag ‘httpurlconnection’

Acessando a rede através de HTTP

1423687551_Globe

Neste capítulo do curso de Android iremos aprender como acessar um servidor utilizando HTTP.

Iremos utilizar este servidor para fazer backup das notas criadas pela nossa aplicação QuickNotes.

Se você não estava acompanhando o Curso de Android, faça o download do projeto aqui, pois as alterações serão feitas neste projeto.

 

Clientes HTTP em Android

Em Android temos dois clientes HTTP:

  • Apache HTTP Client
  • HttpURLConnection

O Google aconselha o uso de HttpURLConnection desde a versão 2.3 (Gingerbread)

Usaremos o HTTPUrlConnection para enviar as notas, que no nosso exemplo são armazenadas no banco de dados local, para o servidor remoto. Abaixo segue a implementação:


String urlParameters = "nota=" + URLEncoder.encode(note,"UTF-8");
String request = "http://tests.felipesilveira.com.br/android-core/insert.php";
URL url = new URL(request);

// Criando a instância de HttpURLConnection responsável por acessar a rede
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setInstanceFollowRedirects(false);
// Vamos enviar a requisição via POST
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
connection.setRequestProperty("charset", "utf-8");
connection.setRequestProperty("Content-Length", "" +
		Integer.toString(urlParameters.getBytes().length));
connection.setUseCaches (false);

// Criando um