Library Retrofit 2 no Android
(21107) (59)
CategoriasAndroid, Design, Protótipo
AutorVinÃcius Thiengo
VÃdeo aulas186
Tempo15 horas
ExercÃciosSim
CertificadoSim
CategoriaEngenharia de Software
Autor(es)Vaughn Vernon
EditoraAlta Books
Edição1ª
Ano2024
Páginas160
Tudo bem?
No vídeo acima é apresentada a versão 2.0 da mais popular e eficiente biblioteca Android para comunicação com servidores remotos, a biblioteca Retrofit, também conhecida como Retrofit 2.
Esta biblioteca foi desenvolvida, e ainda é mantida, pela Square, empresa muito conhecida pelas inúmeras bibliotecas open source criadas para o mundo de desenvolvimento: Android; Java; e iOS.
A API Retrofit 2 (API é um outro nome, neste artigo, para biblioteca) é a maneira mais eficiente, porém não a mais simples, de realizar requisições HTTP partindo de um aplicativo Android ou de um aplicativo não mobile escrito em Java ou em Kotlin.
Thiengo, como assim "não mais simples"?
É isso mesmo. Infelizmente está é uma das principais críticas dos desenvolvedores Android à biblioteca Retrofit. Em relação a algumas outras APIs de comunicação remota no Android a Retrofit vem sendo a que exige mais códigos quando em implantação.
Porém não se engane, muitas dessas APIs "mais fáceis" de se configurar não são mantidas com regularidade, algumas estão com mais de um ano sem atualização, têm inúmeros problemas, principalmente quando a quantidade de dados em tráfego, envio de vídeo, por exemplo, é grande. Algo que a Retrofit API trabalha com maestria.
Existem até mesmo alguns artigos na Web que comparam várias outras bibliotecas HTTP com a Retrofit API, e acaba que a Retrofit vence nos principais requisitos:
- Consistência em funcionamento;
- e Documentação completa.
No vídeo deste artigo o foco é integralmente na prática, em apresentar a biblioteca por completo. São realizadas inúmeras requisições de modo a mostrar:
- Como mudar o path, caminho, de requisição;
- Enviar binários (aqui utilizaremos imagens);
- Enviar listas de objetos;
- Buscar listas de objetos;
- Enviar objeto;
- Buscar objeto;
- e Alterar o cabeçalho (header) de requisição.
A Retrofit API é uma daquelas APIs que trabalham com anotações, algo que alivia em muito a codificação de implantação da biblioteca no aplicativo cliente, e com objetos POJO (Plain Old Java Object), objetos esses que têm todos os métodos getters e setters de seus atributos e têm também ao menos um construtor vazio.
Utilizando a Retrofit API será necessária a criação de ao menos uma Interface que na verdade será a API da biblioteca no código cliente, API contendo os métodos de requisição, métodos que farão uso de algumas anotações para informar à biblioteca qual será a configuração de invocação HTTP de cada um deles.
Note que em alguns contextos será necessária uma classe de desserialização de dados, na verdade, somente se houver objetos aninhados vindos do servidor remoto, como resposta.
Para essa classe de desserialização será necessária a implementação do método JsonDeserializer e também o uso de alguma API de desserialização de dados. Uma bem popular e comum para as tarefas de serialização e de desserialização em aplicativos Android é a API Gson, apresentada também em vídeo.
Dentre as formas de envio de dados apresentadas em vídeo, fique atento quanto a utilização da anotação @Body, pois como informado na vídeo aula, pode ser uma melhor escolha utilizar o parse da Gson API devido a possíveis problemas de entidades depreciadas no PHP (se seu back-end Web for em PHP).
Exatamente no algoritmo de envio de lista de objetos, no vídeo, é apresentada essa maneira alternativa de envio utilizando o parser Gson.
Outras boas opções de parser para trabalho em conjunto com a biblioteca Retrofit são as seguintes:
- Jackson;
- Moshi;
- Protobuf;
- Wire;
- e Simple XML (esse último para XML parser).
Se você está no início do desenvolvimento Android é importante saber que para conexões remotas é preciso a configuração de permissão de Internet no AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<uses-permission android:name="android.permission.INTERNET"/>
...
</manifest>
E também a seguinte configuração no Gradle Nível de Aplicativo, ou build.gradle (Module: app), para manter o uso da versão 2.0 da Retrofit API:
...
dependencies {
...
/* Para utilizar a biblioteca Retrofit 2.0 */
implementation 'com.squareup.retrofit:retrofit:2.0.0-beta2'
/* Para utilizar a biblioteca Gson 2.0.0 com a Retrofit 2.0 */
implementation 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
}
...
Apesar de no código acima estarmos utilizando as referências às bibliotecas com implementation, o correto e mais atual, na vídeo aula, devido ao tempo, data, em que ela foi construída (mesmo assim ela ainda e válida) é utilizado compile.
Mas você deve seguir com implementation em sua instalação do Android Studio.
Antes de finalizar, vou deixar alguns links de outros conteúdos do Blog, com vídeos, que lhe colocarão em dia com o que há de atual no mundo de desenvolvimento Android:
- Kotlin Android, Entendendo e Primeiro Projeto;
- Android Studio: Instalação, Configuração e Otimização;
- Android Mobile-Commerce, Apresentação e Protótipo do Projeto.
E caso você tenha, como uma de suas metas, aprender a criar aplicativos Android, ou evoluir nesta área, também com o conteúdo gratuito do Blog e canal, então não deixe de acessar a lista de estudos em: Estudando Android - Lista de Conteúdos do Blog.
Não esqueça de se inscrever 📫na lista de e-mails do Blog para receber todos os conteúdos Android em primeira mão.
Se inscreva também no canal do Blog no YouTube para acompanhar as últimas novidades liberadas lá.
Surgindo dúvidas ou dicas, pode enviar abaixo na área de comentários que logo eu lhe respondo.
Abraço.
Projeto de exemplo
Para acessar o projeto de exemplo utilizado em vídeo, incluindo o lado Web, entre no GitHub dele em: https://github.com/viniciusthiengo/retrofit-example.
Versões da biblioteca
É muito importante que você utilize em seus projetos a versão mais atual da biblioteca Retrofit, isso, pois as versões atuais de qualquer biblioteca tendem a vir mais eficientes, leves e seguras.
O link para acesso a documentação oficial da Retrofit API está logo abaixo na seção "Fontes".
Fontes
Documentação oficial biblioteca Retrofit
Retrofit 2.0: The biggest update yet on the best HTTP Client Library for Android
Comentários Facebook