Quer ter acesso a todos os cursos desse Guia?
Android
O Android é a plataforma oficial para desenvolvimento de aplicativos mobile do Google. Neste guia você encontrará artigos, vídeos e cursos para aprender tudo sobre esse SDK, que domina o mundo dos dispositivos móveis.
Introdução
O desenvolvimento de aplicativos para dispositivos móveis nunca esteve tão em alta, e a perspectiva é que esses números continuem subindo. Se você quer iniciar nessa área, os conteúdos abaixo trazem um bate papo sobre o assunto e um direcionamento para os seus estudos:
Você já sabe o que é Android e agora já pode começar a desenvolver aplicações para essa plataforma. Para isso, o primeiro passo é preparar o ambiente, instalando as ferramentas necessárias. No curso abaixo você verá como proceder:
Hora de colocar a mão na massa e programar aplicativos! Dê seus primeiros passos no Android com os cursos abaixo:
E aí, curtiu o primeiro contato com o Android? Continue aprendendo sobre seus recursos e APIs nestes artigos:
-
ArtigoIntrodução ao Android
-
ArtigoAndroid LifeCycle: ciclo de vida de uma aplicação Android
-
ArtigoAndroid Data Binding
Você sabia que pode programar para Android sem necessariamente utilizar a sua linguagem, mas usando JavaScript. E o melhor, acessando os recursos nativos do Android. Para isso você deve usar o React Native, que você conhece melhor nessa série:
Android Studio
Após um longo período de parceria com a Eclipse Foundation, que deu origem ao Eclipse/ADK, há alguns anos a Google decidiu utilizar o Android Studio como ferramenta oficial para o desenvolvimento de aplicações para a plataforma Android. Independente dos motivos que motivaram essa mudança, familiarizar-se com essa ferramenta tornou-se fundamental para o programador. Apresentá-la é objetivo dos seguintes artigos:
-
ArtigoAndroid Studio: Primeiros passos com Android
-
ArtigoTutorial de Android Studio
-
ArtigoDesenvolvimento Android utilizando a IDE Android Studio
Kotlin
Kotlin é uma linguagem de programação desenvolvidada pela JetBrain e juntamente com o Java são altamente interoperáveis, podendo ser usadas juntas no mesmo projeto. Inclusive, o Kotlin tem como base, e é executado na mesma Máquina Virtual do Java. Desde o lançamento do Android Studio 3.0 em outubro de 2017, o Kotlin é incluído como uma alternativa ao compilador Java padrão.
Para conhecermos um pouco sobre ela, selecionamos os seguintes conteúdos:
Padrões de tela e layouts
Layout nada mais é que a definição da estrutura visual de uma interface. Sendo essencial para sua compreensão e usabilidade, este tema não poderia faltar na linha de aprendizado de uma programador Android:
-
ArtigoLinear, Table e Relative Layouts com Android Studio
-
ArtigoAndroid Layouts: Aprendendo técnicas de Layout no Android
-
ArtigoConstruindo interfaces inovadoras e adaptáveis
-
ArtigoAndroid Design: Componentes visuais da plataforma Android
-
ArtigoUtilizando ImageView no Android
-
ArtigoAndroid Intent Class: trabalhando com múltiplas telas em Android
-
ArtigoComponente Listview no Android Studio
-
ArtigoDominando o sliding menu/navigation drawer template na plataforma Android
-
ArtigoComo criar telas de abertura no Android
Fragments
Em um aplicativo é comum que partes da interface se repitam por mais de uma tela. Um exemplo disso pode ser a barra de navegação, contendo dados sobre o usuário. Um Fragment procura evitar a duplicação de código, permitindo compartilhar essa fragmento entre múltiplas interfaces. Fique por dentro deste assunto com os posts:
Google Material Design
Google Material Design é um conjunto de conceitos a serem seguidos durante a criação de interfaces para diferentes plataforma, como web e mobile. A partir da versão 5, o Android SDK passou a disponibilizar componentes que utilizam esses conceitos funcionais e representativos. Saiba como utilizá-los com os conteúdos:
-
ArtigoConheça o Google Material Design
-
ArtigoMaterial Design: Aprimorando seus aplicativos Android
-
ArtigoMaterial Design: Como aprimorar a qualidade de interface em Android
Biblioteca de compatibilidade
Conheça no conteúdo abaixo a biblioteca de suporte Design, que contém diversos componentes que nasceram no Material Design e permite que esses sejam aplicados a versões mais antigas do Android:
Adapters
Adapters permitem personalizar a forma como um componente é apresentado para o usuário. Muito utilizados na construção de listas, entre outros componentes agrupadores de informações, os Adapters funcionam como uma ponte entre os dados e sua representação na interface. Saiba como criar e utilizar Adapters nos artigos:
SQLite
Na plataforma Android podemos salvar dados de diferentes maneiras. Dentre as mais utilizadas, está a gravação em bancos de dados relacionais. Por ser o SQLite um banco criado para aplicações embarcadas, geralmente ele é visto como a melhor opção. Aprenda sobre como utilizar este banco de dados em suas aplicações com os artigos:
Notificações
Comum a maior parte dos aplicativos, as notificações permitem uma comunicação mais direta com o usuário por meio de mensagens disparadas para seu aparelho diretamente pela internet. Assim, um serviço pode alertar sobre novidades, ou qualquer outro evento importante. Os seguintes conteúdos reúnem informações sobre a utilização de notificações na plataforma Android:
Google Maps
Google Maps é um serviço de geolocalização da Google. Com ele é possível encontrar lugares de acordo com a sua posição e preferências de pesquisa. Nos conteúdos abaixo reunimos uma série de vídeos e artigos para que você possa dominar essa tecnologia:
-
DevCastIntegração de mapas com Android e Google Maps API
-
ArtigoComo utilizar a Google Geocoding API para obter endereços
-
DevCastIntrodução à Google Static Maps API com Android
-
DevCastGoogle Directions - Traçando Rotas com Android e GoogleMaps
-
ArtigoTraçando rotas no Android com a Google Directions
-
DevCastDefinindo Waypoints em uma rota com Google Maps e Android
-
DevCastImplementando Google Street View em App Android
-
ArtigoGeolocalização Android: GPS, mapas e sintetização de voz no Android
-
ArtigoArmazenando dados de geoposicionamento com Google Maps e MongoDB
-
ArtigoGoogle Maps Android API e Location Service API
-
ArtigoGeolocalização além do GPS utilizando CellId e Wifi
-
DevCastMonitoramento de GPS com GoogleMap e SQLite no Android
Tarefas assíncronas
A comunicação assíncrona permite a troca de dados entre aplicações, sem que elas fiquem aguardando o retorno da requisição para dar prosseguimento a suas atividades. Considerando o segmento escolhido, o uso dessa estratégia pode ser essencial no desenvolvimento para uma melhor experiência em usabilidade para o usuário. Os artigos a seguir introduzem este assunto. Confira:
-
ArtigoComunicação web e assíncrona em Android
-
ArtigoAndroid Retrofit: Primeiros passos com a Retrofit API
Essencial para a programação multitarefa, as Threads permitem executar ações paralelamente. Para isso são utilizadas classes que herdem essas funcionalidades, como AsyncTask. Acompanhe esse assunto nos artigos a seguir.
Sensores
O uso de sensores em aplicativos móveis é cada vez mais comum. Eles permitem obter informações sobre movimentação, velocidade, posicionamento, entre outras. Veja como podemos trabalhar com sensores na plataforma Android nos posts:
NFC
NFC, Near Field Communication (comunicação por campo de proximidade), é uma tecnologia que permite a troca de informações de forma segura pelo ar. Diferente do Bluetooth, essa tecnologia não requer o emparelhamento dos aparelhos, facilitando assim sua utilização. Aprenda a utilizá-la no artigo:
Bluetooth
Bluetooth é uma forma de comunicação sem fio muito utilizada entre dispositivos portáteis, seja pelo baixo consumo de energia ou pela grande variedade de dispositivos móveis que possuem este recurso. Nos conteúdos reunidos nessa seção você aprenderá sobre os fundamentos da comunicação bluetooth aplicados à plataforma Android.
SMS
Short Message Service é um serviço utilizado para a troca de mensagens curtas entre aparelhos celulares. Presente hoje em dia principalmente em aplicações de suporte e call center, ou que necessitem receber resposta padronizada do usuário, seu domínio é recomendado para o programador Android. Saiba mais nos posts:
Serviços do Google
Além do SDK, a Google oferece uma série de serviços que suportam o desenvolvimento de aplicativos para a plataforma Android. Esta seção reúne os principais dentre eles.
Google Cloud Messaging
O serviço Google Cloud Messaging permite enviar e receber dados de dispositivos em uma mesma conexão, fornecendo a infraestrutura necessária para o enfileiramento e disparo de mensagens. Fique por dentro dessa tecnologia nos artigos:
-
ArtigoGoogle Cloud Messaging: Introdução
-
ArtigoGoogle Cloud Messaging (GCM): Enviando dados de servidores
-
DevCastNotificações Push em App Android com Google Cloud Messaging
Google Sign-In
Google Sign-in permite entrar em diferentes sistemas usando suas credenciais da Google. Para isso alguns pré-requisitos devem ser atendidos pela aplicação. Saiba quais no artigo:
Google App Engine
Plataforma da Google para criação de aplicativos para dispositivos móveis, o Google App Engine oferece infraestrutura que permite o desenvolvimento escalável, bem como diversos back-ends, além de bancos de dados relacionais e não relacionais. Saiba como integrá-lo às suas aplicações:
Google Drive
Google Drive é um serviço de armazenamento na nuvem do Google. Com os artigos abaixo você poderá desenvolver aplicações que o utilizem:
-
ArtigoIntrodução à Google Drive API para Android
-
ArtigoComo integrar um aplicativo Android com o Google Drive
Google Analytics
O Google Analytics é uma plataforma gratuita que permite o acompanhamento e análise de atividades e comportamento de usuários dentro de um aplicativo, website ou até mesmo game. Fique por dentro dessa tecnologia com o artigo a seguir:
Mídia
Android oferece suporte a diferentes tipos e formatos de mídia, permitindo ao desenvolvedor tornar suas aplicações mais ricas visualmente, melhorando a experiência do usuário. Aprenda a adicionar esse poderoso recurso às suas aplicações com os seguintes posts:
Android Annotations
Anotações é um recurso conhecido do desenvolvedor Java, que permite a codificação de forma mais limpa, concentrando parte do código referente a construção de objetos, dependências, entre outras informações em metadados. O framework Android Annotations busca aumentar e simplificar a construção de interfaces, utilizando para isso as anotações. Saiba como utilizá-lo nos conteúdos abaixo:
Injeção de dependências
Injeção de dependências é o princípio que trata da forma como os módulos de um sistema se relacionam, prezando pelo baixo acoplamento entre eles. Nestes conteúdos você poderá entender como implementar esse conceito em suas aplicações Android:
JSON
JSON (JavaScript Object Notation) é o modelo para armazenamento e transmissão de informações mais utilizado entre serviços atualmente. Dada crescente necessidade de integração entre aplicações móveis e Web Services, seu conhecimento é recomendado na linha de aprendizado do programador Android. Saiba como processar arquivos JSON com a biblioteca Android Volley no vídeo:
Web services
Web services são aplicações web que têm como principal objetivo fornecer e processar informações recebidas de outros softwares (chamados de aplicações clientes) a fim de permitir a integração entre elas. Os apps mobile estão entre as principais aplicações clientes nesse contexto, pois são atualmente responsáveis por boa parte dos softwares utilizados em nosso dia a dia e precisam enviar e receber dados de aplicações servidoras (os web services).
Nos artigos abaixo você verá como consumir web services a partir de aplicações Android:
-
DevCastConsumindo web services RESTful com Android
-
ArtigoConsumindo dados de um Web Service com Android
-
ArtigoUtilizando Web Service no acesso a dados remotos
-
DevCastComunicando WS SOAP com Android
Veja também como integrar sua aplicação Android a serviços de grandes players do mercado, como AWS e Google:
Boas práticas
Como em toda linguagem e plataforma de programação, existem algumas sugestões de boas práticas para a construção de aplicações Android, que visam melhorar sua qualidade e facilitar sua manutenção. Confira nos artigos abaixo algumas delas e como implementá-las:
Desenvolvimento de jogos
O mercado de jogos é um dos que mais cresce na área de tecnologia e movimenta anualmente bilhões de dólares em todo o mundo. Se você se interessa pelo assunto e deseja ingressar nessa área com jogos para Android, consulte os artigos abaixo:
Debug e testes
Realizar debug e testes das aplicações durante seu desenvolvimento é fundamental para identificar e corrigir problemas, evitando falhas quando o app for publicado.
Na prática
Nada melhor para fixar o conhecimento do que praticar, certo? Nesta seção separamos alguns conteúdos para que você possa aplicar na prática o que aprendeu até aqui. Para começar, aprenda a desenvolver uma loja virtual completa:
A seguir veja como projetar e desenvolver uma aplicação completa para Android:
-
ArtigoProjetando e criando Aplicativos para Dispositivos Móveis
-
ArtigoDesenvolvendo e instalando uma aplicação Android passo a passo
E veja ainda mais alguns conteúdos práticos abaixo:
Segurança
Segurança é uma necessidade de qualquer sistema, pois é necessário garantir, por exemplo, que os dados não sejam acessados por usuários não autorizados. Nesta seção separamos alguns conteúdos que tratam de técnicas para aprimorar a segurança das suas aplicações Android.
Projetos
Nesta seção você encontra projetos completos para download, que você pode utilizar ou modificar para criar novos aplicativos Android nativos.
Conteúdo extra
Nesta seção trazemos reunimos artigos que lhe permitirão aprimorar seus conhecimentos sobre o Android, ampliando seus horizontes no uso dessa plataforma:
Mais sobre mobile
Além dos cursos e exemplos sugeridos nesse guia, a DevMedia publica com frequência novos conteúdos sobre programação mobile, os quais você pode conferir nos Guias de Consulta abaixo:
Além disso, você pode conferir todo o conteúdo sobre programação mobile clicando aqui.
Black November
Desconto exclusivo para as primeiras 200 matrículas!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 54,90
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 54,90 /mês
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>