Conexões HTTP

Internet, login, busca de dados armazenados remotamente, ranking de pontuação online... Esses são apenas alguns exemplos do que podemos adicionar à nossa aplicação a partir do momento que aprendemos a utilizar conexões HTTP e HTTPS feitas diretamente de nossa aplicação.

O Android dispõe de três métodos para fazer conexões HTTP. Podemos utilizar a API padrão do Java através da classe java.net.HttpUrlConnection, o framework Commons HttpClient do Apache, com a classe org.apache.http.client.HttpClient, ou ainda através da classe android.net.http.AndroidHttpClient, que existe a partir da versão 2.2 do Android. Todos esses métodos tem o mesmo objetivo final: comunicação via HTTP.

Cada método entre os apresentados utiliza uma maneira diferente para fazer sua comunicação. No escopo dessa aula, estudaremos o primeiro deles, o HttpUrlConnection. Através dessa classe, padrão na API Java, podemos fazer todas as conexões que nos forem necessárias e acreditamos que o estudo dessa classe servirá como base para qualquer outra, uma vez entendida a lógica utilizada por trás da API.

Antes de olharmos o código do lado Android da comunicação, vamos ver o que precisamos do lado do servidor. Para a comunicação do Android com o servidor, é necessário que o servidor entenda as requisições recebidas e também que ele seja capaz de responder do jeito que é esperado pelo requisitante. Esse protocolo a ser utilizado pelas chamadas deve ser definido por você, desenvolvedor, e deve mudar o mínimo possível durante o ciclo de vida de sua aplicação, para evitar problemas com clientes que não estejam atualizados.

Para que haja uma comunicação bem sucedida entre o cliente e o servidor, é importante notar que os dois lados precisam implementar códigos que suportem requisições HTTP. O que está por trás dessas requisições não é importante no caso dessa comunicação. Não importa se o servidor está sendo executado baseado em Java, em PHP ou em qualquer outra linguagem. O importante para que a comunicação funcione é que os dois lados possam implementar corretamente o protocolo HTTP e entendam as requisições que lhe forem feitas, sejam elas do tipo GET, POST ou qualquer outra. A Figura 1 ilustra a abstração, mostrando que o que importa na comunicação é realmente o protocolo da comunicação.

Comunicação HTTP entre um dispositivo Android e o servidor.

Versão 5.3 - Todos os Direitos reservados