Guia de Linguagem

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

Presente em diversas plataformas, de smartphones e relógios a carros e TVs, Android é um sistema operacional, que utiliza a linguagem Java para programação de seus aplicativos. Considerada por muitos como a plataforma mais utilizada por aplicações mobile, parte dessa popularização se deve ao suporte fornecido pela Google, mantenedora do SDK para desenvolvimento, que contém APIs para acesso ao hardware, assim como para a criação de sistemas para diferentes segmentos. Aliado a esse conjunto de bibliotecas está o Android Studio, IDE oficial apresentada nos cursos abaixo.

E aí, curtiu o primeiro contato com o Android? Continue aprendendo sobre seus recursos e APIs nestes artigos:

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:

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:

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:

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.

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:

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:

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.

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:

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:

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.

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.

Ficou com alguma dúvida?