Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

PROGRAMAÇÃO 
CODING (MOBILE)
Unidade 1
Ambiente e 
fundamentos do 
desenvolvimentos 
mobile
CEO 
DAVID LIRA STEPHEN BARROS
Diretora Editorial 
ALESSANDRA FERREIRA
Gerente Editorial 
LAURA KRISTINA FRANCO DOS SANTOS
Projeto Gráfico 
TIAGO DA ROCHA
Autoria 
LUIZ FERNANDO CORCINI
4 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
A
U
TO
RI
A
Luiz Fernando Corcini
Olá. Sou graduado em Engenharia Eletrônica, especializado 
em Administração de TI, mestre em Educação e Novas Tecnologias 
e Doutorando em Sistemas Tutores Inteligentes. Tenho experiência 
técnico-profissional na área de desenvolvimento e gestão da 
produção de software nas áreas de Gerenciamento de Processos 
Empresariais. Uso os recursos disponibilizados pela web há mais 
de 20 anos. Sou professor universitário há mais de 15 anos e já 
publiquei vários livros técnicos sobre assuntos voltados à área 
de informática. Sou apaixonado pelo que faço e adoro transmitir 
minha experiência de vida àqueles que estão iniciando em suas 
profissões. Por isso fui convidado pela Editora Telesapiens a 
integrar seu elenco de autores independentes. Estou muito feliz 
em poder ajudar você nessa fase de muito estudo e trabalho. 
Conte comigo! 
5PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
ÍC
O
N
ESEsses ícones aparecerão em sua trilha de aprendizagem nos seguintes casos:
OBJETIVO
No início do 
desenvolvimento 
de uma nova 
competência. DEFINIÇÃO
Caso haja a 
necessidade de 
apresentar um novo 
conceito.
NOTA
Quando são 
necessárias 
observações ou 
complementações. IMPORTANTE
Se as observações 
escritas tiverem que 
ser priorizadas.
EXPLICANDO 
MELHOR
Se algo precisar ser 
melhor explicado ou 
detalhado. VOCÊ SABIA?
Se existirem 
curiosidades e 
indagações lúdicas 
sobre o tema em 
estudo.
SAIBA MAIS
Existência de 
textos, referências 
bibliográficas e links 
para aprofundar seu 
conhecimento.
ACESSE
Se for preciso acessar 
sites para fazer 
downloads, assistir 
vídeos, ler textos ou 
ouvir podcasts. 
REFLITA
Se houver a 
necessidade de 
chamar a atenção 
sobre algo a 
ser refletido ou 
discutido.
RESUMINDO
Quando for preciso 
fazer um resumo 
cumulativo das últimas 
abordagens.
ATIVIDADES
Quando alguma 
atividade de 
autoaprendizagem 
for aplicada. TESTANDO
Quando uma 
competência é 
concluída e questões 
são explicadas.
6 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
SU
M
Á
RI
O
Android ..................................................................................... 10
Dispositivos móveis ...........................................................................................10
Android: um pouco de história .......................................................................12
Android: características ...................................................................................13
Arquitetura da plataforma .................................................................17
Requisitos para o desenvolvimento de um aplicativo ................................ 18
Ambiente de desenvolvimento Java para mobile ................. 20
Instalar o JDK ......................................................................................................20
Configurando as variáveis de ambiente .......................................... 24
Instalar e configurar o Android Studio .......................................................... 29
Instalando o Android Studio .............................................................29
Configurando o Android Studio ........................................................ 35
Configurar o Android SDK Manager ...............................................................39
Testando o ambiente de desenvolvimento .................................................. 42
Fechando a aplicação Android ........................................................................53
Estrutura do projeto Java-Android ........................................ 55
Conhecendo a interface Android Studio .......................................................55
Tela de boas-vindas ............................................................................56
Tela principal ........................................................................................57
Estrutura do projeto Java-Android..................................................................63
Pasta Manifests .....................................................................................64
Pasta Java ..............................................................................................70
Pasta Res ...............................................................................................73
7PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Fundamentos do Java para mobile......................................... 76
Java: Um pouco de história ..............................................................................76
A tecnologia Java ................................................................................................77
A linguagem Java .................................................................................77
Esquema de execução de um programa em Java ......................... 78
A plataforma Java ................................................................................79
Entendendo, instalando e configurando o ambiente Java ......................... 80
Instalando o JDK ..................................................................................80
Instalando o IDE ..................................................................................81
Instalando o Eclipse ............................................................................82
8 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
A
PR
ES
EN
TA
ÇÃ
O
Você sabia que a compreensão a respeito de ambientes 
e fundamentos do desenvolvimento mobile é essencial para 
trabalhar na área de programação, que é uma das mais 
demandadas do mercado de trabalho atualmente? Isso mesmo. 
Nesta unidade, faremos uma introdução aos dispositivos móveis 
e ao sistema operacional Android, tratando um pouco sobre a 
história desse sistema, suas características e seus requisitos, 
como sua arquitetura funcional, compatibilidades e limitações. 
Veremos também como operar a interface de desenvolvimento de 
aplicativos do ambiente Java para dispositivos móveis, a estrutura 
da linguagem de programação e o método de organização do 
código. Além disso, aprenderemos como desenhar e organizar os 
elementos de um projeto de desenvolvimento de aplicativos para 
Android utilizando a linguagem Java Mobile. Entendeu? Ao longo 
desta unidade letiva, você vai mergulhar nesse universo!
9PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
O
BJ
ET
IV
O
S
Olá. Seja muito bem-vindo à Unidade 1. Nosso objetivo 
é auxiliar você no desenvolvimento das seguintes competências 
profissionais até o término desta etapa de estudos:
1. Reconhecer e manipular os recursos do sistema de 
operação Android, compreendendo sua arquitetura 
funcional, compatibilidades e limitações;
2. Operar a interface de desenvolvimento de aplicativos 
do ambiente Java para dispositivos móveis;
3. Explicar a estrutura da linguagem de programação Java 
para dispositivos móveis e seu método de organização 
do código;
4. Desenhar e organizar os elementos de um projeto de 
desenvolvimento de aplicativos para Android utilizando 
a linguagem Java Mobile.
10 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Android
OBJETIVO
Ao final deste capítulo, você será capaz de 
reconhecer e manipular os recursos do sistema 
operacional Android, compreendendo sua 
arquitetura funcional, compatibilidades e 
limitações. Trata-se de um conhecimento essencial 
para iniciar nossa viagem na complexa área de 
conhecimentos com que estamos lidando. E então? 
Motivado para desenvolver essa competência? 
Avante!
Dispositivos móveis
Dispositivos móveis, mobile devices, também conhecidos 
como smartphones, podem ser definidos como pequenos 
computadorespara o correto 
entendimento do conteúdo.
Quadro 1.1 – Conceitos importantes
Item Descrição
JDK
Conjunto de ferramentas de desenvolvimento que permite criar 
programas na plataforma Java. Contém o JRE e outras ferramentas, 
tais como o compilador (javac), o empacotador (jar) e ferramentas 
para documentação (javadoc).
JRE Contém a JVM e as bibliotecas de classes Java (APIs Java).
JVM
Ferramenta fundamental para permitir a funcionalidade do Java de 
ser multiplataforma. Antes de instalar uma JVM, é necessário definir 
em qual sistema operacional ela será utilizada.
IDE
Ambiente de desenvolvimento que permite ao programador o 
acesso a uma interface amigável de desenvolvimento que facilita, 
organiza e otimiza o desenvolvimento, o teste e a distribuição da 
aplicação.
Fonte: Elaborado pela autoria (2023 ).
Precisamos instalar ambas as ferramentas (JDK e IDE) em 
nosso computador.
Instalando o JDK
O processo de instalação do kit de desenvolvimento Java 
já foi explicado anteriormente. Caso você tenha realizado todas 
as atividades desta unidade até aqui, não precisará reinstalá-lo. 
Pode passar para o próximo passo. Mas é importante lembrar de 
9 .Java Development JDK – JAVA. 
10 .Integrated Development Environment: ambiente de desenvolvimento integrado.
81PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
que, se você quiser apenas trabalhar com a linguagem Java em 
outro computador em que não instalou os itens relacionados no 
capítulo 2, você deverá executar o item 2.1 antes de continuar 
por aqui.
Instalando o IDE
Trabalharemos com o IDE Eclipse Photon, que pode ser 
encontrado clicando aqui .
Imagem 1.53 – Baixando a IDE
Fonte: Elaborada pela autoria (2023).
Ao abrir esse endereço web em seu navegador, selecione 
Download Packages, como mostrado na imagem anterior, e uma 
nova tela será carrega em seu navegador. Depois, selecione o 
pacote Eclipse IDE for Java EE Developers e a versão do seu sistema 
operacional (32 ou 64 bits). Para esse material, trabalharemos com 
a versão 64 bits.
82 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.54 – Baixando a IDE
Fonte: Elaborada pela autoria (2023).
Baixe o arquivo eclipse_jee_photon-R-win32-x86_64.zip 
e descompacte-o no mesmo diretório em que está o JDK. Para o 
nosso caso, é o diretório c:\program files\ java\. A pasta Eclipse 
será criada dentro desse diretório.
IMPORTANTE
O Eclipse não precisa ser instalado. Uma vez 
descompactado, é só clicar no arquivo eclipse.exe 
e mãos à obra!
Instalando o Eclipse
Para ter certeza de que todas as instalações e 
descompactações ocorreram de acordo com o esperado, segue 
uma lista de testes necessários antes de prosseguir:
Execute o arquivo eclipse.exe. Uma tela como a mostrada 
a seguir deve aparecer:
83PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.55 – Tela Splash do Eclipse Photon
Fonte: Elaborada pela autoria (2023).
Logo em seguida, o Eclipse solicitará que seja informado 
qual o caminho para o workspace, como mostrado na próxima 
imagem.
Imagem 1.56 – Selecionar o diretório de trabalho
Fonte: Elaborada pela autoria (2023).
84 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
O workspace significa espaço de trabalho e define o 
endereço (diretório e pasta) em que serão colocados todos os 
arquivos do seu projeto. Podem ser criados vários workspaces, um 
para cada projeto que seja desenvolvido. Para esse teste, digite o 
endereço: c:\Teste e clique em OK.
O Eclipse criará uma pasta com o nome, no local 
especificado. Nesse caso, a pasta é Teste e o local é c:\. O Eclipse 
carregará as bibliotecas necessárias, e a tela será apresentada da 
seguinte maneira:
Imagem 1.57 – Tela de abertura do Eclipse
Fonte: Elaborada pela autoria (2023).
Clique em Workbench, como mostrado na imagem anterior.
85PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.58 – IDE Eclipse
Fonte: Elaborada pela autoria (2023).
Esse é o ambiente de desenvolvimento integrado ou IDE 
do Eclipse. Nesse ambiente, serão escritos os códigos em Java 
para os programas propostos em nossos estudos. Em momento 
posterior, serão apresentadas as funcionalidades necessárias 
dessa interface.
Para finalizar, (1) minimize a janela do Eclipse; (2) abra o 
Windows Explorer; (3) verifique que a pasta Teste foi criada no 
drive c:\; (4) abra a pasta Teste e verifique que o Eclipse criou 
toda a estrutura de pastas e arquivos para que seu projeto possa 
funcionar. Feche o Eclipse e delete a pasta Teste no navegador, 
pois ela foi criada apenas para esse primeiro exemplo-teste. Nos 
exercícios mais avançados, serão utilizados outros workspaces.
Muito bem! Depois de tudo isso, você deve estar em 
condições de desenvolver em Java e para dispositivos móveis, 
que é o nosso foco no momento. Você deve estar “louco” para 
aprender mais, mas não podemos colocar tudo em uma única 
unidade, não é mesmo? 
86 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza de 
que você realmente entendeu o tema de estudo 
deste capítulo, vamos resumir tudo o que vimos. 
Você deve ter aprendido a desenhar e a organizar 
os elementos de um projeto de desenvolvimento 
de aplicativos para Android utilizando a linguagem 
Java Mobile. Esperamos que você tenha gostado 
e continue praticando o que aprendeu até aqui. 
A aprendizagem não pode parar! Até a próxima 
unidade!
87PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
RE
FE
RÊ
N
CI
A
S
AMAR, R. Android. Hardware.com.br, 2009. Disponível em: 
https://www.hardware.com.br/livros/smartphones/android.html. 
Acesso em: 21 jan. 2024.
ANDROID Lifecycle: ciclo de vida de uma aplicação Android. 
DevMedia, 2014. Disponível em: https://www.devmedia.com.br/
android-lifecycle- ciclo-de-vida-de-uma-aplicacao-android/29991. 
Acesso em: 21 jan. 2024.
CORDEIRO, F. Android Studio. 3. ed. [S. l.]: AndroidPro, 2016.
CORDEIRO, F. Android aprendiz. AndroidPro, 2017. Disponível 
em: https://www.androidpro.com.br/. Acesso em: 21 jan. 2024.
OGLIARI, R. S.; BRITO, R. C. Android: do básico ao avançado. Rio de 
Janeiro: Editora Ciência Moderna Ltda., 2014.
PEREIRA, A. P. O que é XML? TecMundo, 2009. Disponível em: 
https://www.tecmundo.com.br/programacao/1762-o-que-e-xml-.
htm. Acesso em: 21 jan. 2024.
POZZEBOM, R. O que são sistemas embarcados? Oficina da 
Net, 2014. Disponível em: https://www.oficinadanet.com.br/
post/13538-o-que-sao-sistemas-embarcados. Acesso em: 21 jan. 
2024.
VISÃO geral do manifesto do aplicativo. Developers, 2014. 
Disponível em: https://developer.android.com/guide/topics/
manifest/manifest-intro. Acesso em: 21 jan. 2024.
	Android
	Dispositivos móveis
	Android: um pouco de história
	Android: características 
	Arquitetura da plataforma
	Requisitos para o desenvolvimento de um aplicativo
	Ambiente de desenvolvimento Java para mobile
	Instalar o JDK
	Configurando as variáveis de ambiente
	Instalar e configurar o Android Studio
	Instalando o Android Studio
	Configurando o Android Studio
	Configurar o Android SDK Manager
	Testando o ambiente de desenvolvimento
	Fechando a aplicação Android
	Estrutura do projeto Java-Android
	Conhecendo a interface Android Studio
	Tela de boas-vindas
	Tela principal
	Estrutura do projeto Java-Android
	Pasta Manifests
	Pasta Java
	Pasta Res
	Fundamentos do Java para mobile
	Java: Um pouco de história
	A tecnologia Java
	A linguagem Java
	Esquema de execução de um programa em Java
	A plataforma Java
	Entendendo, instalando e configurando o ambiente Java
	Instalando o JDK
	Instalando o IDE
	Instalando o Eclipseque normalmente cabem na palma da mão. Esses 
“computadores de mão” costumam ter uma tela que normalmente 
é sensível ao toque, para permitir ao usuário a entrada (input) de 
dados por meio de um miniteclado, apresentado na própria tela 
ou por meio de opções a serem selecionadas. A saída (output) pode 
ocorrer de várias formas, desde a exibição de imagens, de sons 
ou de vídeos, vibrações, capturas de movimentos, até a execução 
de uma aplicação mais complexa, com o envio ou recebimento 
de mensagens, a execução de um programa especializado, 
acesso a redes sociais, ou a câmera do dispositivo. Por se tratar 
de minicomputadores, todos eles necessitam de um sistema 
operacional1 para gerenciar seu correto funcionamento e para 
que as várias aplicações possam ser executadas.
Com o avanço constante da tecnologia, os dispositivos 
móveis vêm se aprimorando em aspectos que até recentemente 
1 Sistema operacional é o conjunto de programas que gerenciam recursos, processadores, 
armazenamento, dispositivos de entrada e saída e dados da máquina e seus periféricos. 
Exemplos: Dos, Unix, Linux, Mac OS, OS-2, Windows etc. (Sistema, 2003-2023).
11PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
eram considerados limitações relevantes no que diz respeito à 
usabilidade e ao desenvolvimento de aplicativos, como:
 • Tamanho do ecrã2;
 • Memória limitada (primária e secundária);
 • Poder de processamento limitado;
 • Baixo consumo de energia;
 • Conectividade limitada.
Em razão dessas características, os sistemas operacionais 
para dispositivos móveis, ou mobile operating systems (MOS), em 
inglês, têm características diferentes dos sistemas operacionais 
para desktops.
SAIBA MAIS
Em relação aos MOS mais utilizados, é importante 
estar atualizado em relação os relatórios das 
empresas do setor, como da IDC, que você pode 
acessar pelo QR code. Nele, são apresentados os 
sistemas operacionais dominantes do mercado de 
dispositivos móveis.
Assim como os MOS, as linguagens de programação 
devem estar adaptadas às restrições dos dispositivos móveis. 
Entre as linguagens, podemos citar: Java, C#, OPL, Objective-C, 
Ruby, Python, Flutter, Go, Rust, Lua, entre outras. 
2 Ecrã: superfície fluorescente sobre a qual se forma a imagem nos tubos catódicos 
(televisão, informática etc.) = tela. 
https://www.idc.com/promo/smartphone-market-share/os
12 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Em nossos estudos, trabalharemos com o MOS Android e 
com a linguagem de programação Java.
Android: um pouco de história
A empresa norte-americana Google foi fundada por Larry 
Page e Sergey Brin em 4 de setembro de 1998. Desde o início, a 
missão declarada da empresa era de organizar as informações 
mundiais e torná-las universalmente acessíveis. O foco da Google 
sempre foi hospedar e desenvolver uma série de produtos e 
serviços baseados na internet. 
De acordo com Amar (2009), depois de muita caminhada 
e de já estar famosa com seu sistema de busca inovador, entre 
outros serviços e produtos, a empresa resolveu comprar, em 
2005, uma pequena empresa de sistemas embarcados3 chamada 
Android Inc. e decidiu entrar também no ramo de smartphones.
Dois anos depois (em 2007), o projeto foi apresentado ao 
público e se mostrou mais ambicioso do que um mero modelo 
específico de smartphone. Tratava-se de um sistema operacional 
com código aberto (open-source4) para dispositivos móveis, 
baseado em Linux, com uma interface de programação em Java. O 
Android estava sendo lançado!
3 O sistema embarcado, também chamado de sistema embutido, é um sistema 
microprocessado em que um computador está anexado ao sistema que ele controla. Um 
sistema embarcado pode realizar um conjunto de tarefas que foram predefinidas. O sistema 
é usado para tarefas específicas, e assim, por meio de engenharia é possível otimizar um 
determinado produto e diminuir o tamanho, bem como os recursos computacionais e o seu 
valor final. (Pozzebom, 2014, on-line).
4 Código aberto (open-source) é um software de utilização livre, para quem quiser. Todos 
podem contribuir com ele, seja no seu desenvolvimento, seja na correção de erros, seja na 
documentação, desde que a condição de liberdade seja mantida. Exemplos: Linux, Android, 
Apache, gcc, PostgreSQL, MySQL etc.
13PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
SAIBA MAIS
Para conhecer um pouco mais da história do 
sistema operacional Android e todas as suas 
versões, acesse o QR code. 
Agora que você conhece um pouquinho da história do 
MOS Android, vamos apresentar suas características.
Android: características 
O Android não é uma linguagem de programação, mas 
uma distribuição do sistema operacional Linux multiusuário. Para 
programar aplicativos para os dispositivos móveis que utilizam o 
SO (sistema operacional) Android, são necessárias a instalação e 
a configuração de um ambiente de desenvolvimento apropriado, 
conforme aprenderemos adiante. Os programas escritos no 
ambiente de desenvolvimento Android devem ser compilados 
juntamente com todos os arquivos disponibilizados (recursos), de 
maneira a gerar um arquivo com a extensão APK, que é o arquivo 
utilizado pelos dispositivos para instalar a aplicação Android.
VOCÊ SABIA?
“APK” vem de “Android package”, que significa 
“arquivo de pacote de aplicativos” em tradução 
livre. É o formato de arquivo utilizado pelo 
MOS Android para distribuição e instalação de 
aplicativos para dispositivos móveis.
Uma vez instalado no dispositivo, cada aplicativo recebe 
um número de identificação único, chamado de ID do usuário, de 
maneira que cada ID se torna um usuário Linux gerenciado pelo 
https://www.hostmidia.com.br/blog/o-que-e-android/
14 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
sistema Android. O sistema, por padrão, executa cada uma das 
IDs em processos separados, isto é, para cada aplicação que está 
em execução no dispositivo, existe uma máquina virtual (VM) que 
a gerencia e monitora, permitindo a cada uma delas o acesso aos 
recursos necessários para executar suas tarefas e nada mais. Essa 
característica de isolar as aplicações cria um ambiente mais seguro 
e otimizado, em que os aplicativos acessam apenas os recursos de 
que precisam.
Para o caso de aplicativos que precisam acessar dados ou 
recursos de outros aplicativos, eles devem compartilhar o mesmo 
ID de usuário e, dessa maneira, podem ser executados em um 
único processo ou até compartilhar a mesma VM. Outros tipos de 
permissão, tais como acessar os dados gravados no dispositivo 
(contatos, telefones) ou acessar recursos, como câmera ou 
bluetooth, devem ser definidos pelo programador no momento do 
desenvolvimento e da instalação do aplicativo.
Cada aplicação Android é formada por componentes, que 
são como blocos de construção. Eles executam tarefas específicas 
e têm sua própria identificação. Podem ser utilizados como pontos 
de entrada do usuário ou para integração entre aplicativos, no 
caso de dependência de recursos. Dentro de um dispositivo móvel, 
como o smartphone, podem existir vários aplicativos instalados, 
e pode-se utilizá-los (executá-los) com um simples toque, o que 
permite que dois ou mais aplicativos estejam rodando (sendo 
executados) ao mesmo tempo.
No gerenciamento de aplicativos realizado pelo Android, 
um desses aplicativos (que estão sendo executados) sempre estará 
visível, e os outros estarão parados temporariamente (com status 
igual a paused) ou parados definitivamente (com status igual a 
stopped), mas, ainda assim, ocupando memória e outros recursos, 
em segundo plano. Um caso comum ocorre quando o usuário está 
15PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
verificando seus compromissos no aplicativo calendário/agenda e 
recebe uma ligação, por exemplo. Nesse cenário, o Android vai 
parar temporariamente (pause) o aplicativo calendário/agenda e 
colocá-lo em segundo plano, enquanto o aplicativo que permite 
o atendimento da ligação (chamada telefônica) é colocado em 
primeiro plano e executado. Quando a ligação for encerrada,o 
Android fechará o aplicativo chamada telefônica e reposicionará 
o aplicativo calendário/agenda para o primeiro plano, permitindo 
que o usuário dê sequência à sua consulta de compromissos.
Olhando dessa forma, pode até parecer que o processo é 
simples. Mas não é!
Os recursos de um dispositivo móvel são limitados, de 
modo que o Android pode fechar qualquer aplicação que não 
esteja em primeiro plano no caso de esses recursos ficarem em 
situação crítica, ou quando alguma configuração do dispositivo 
for alterada. Como o avanço da tecnologia, essas situações estão 
sendo minimizadas e quase não são perceptíveis para os usuários. 
Causaria muitos problemas ao usuário se, no exemplo citado, o 
Android apenas fechasse o aplicativo calendário/agenda porque o 
aparelho está recebendo uma ligação, pois todas as alterações que 
o usuário fazia até então e não teve a oportunidade de salvar, como 
o agendamento de compromissos importantes, seriam perdidas. 
Esse tipo de atuação funciona como uma gestão dos recursos de 
que o aparelho dispõe, para que consiga desempenhar variadas 
tarefas com qualidade e o mínimo de interrupções.
VOCÊ SABIA?
Quando um aplicativo é desenvolvido para os 
dispositivos que trabalham com Android, a 
programação deve prever que ele pode parar 
temporariamente quando colocado em segundo 
plano, de modo que seus estados (configurações, 
dados etc..) devem ser salvos para que o usuário 
possa retomá-los, caso necessário.
16 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Para auxiliar nesse gerenciamento dos aplicativos, o 
sistema Android trabalha basicamente com quatro tipos diferentes 
de componentes, que são:
 • Atividades (activities); 
 • Serviços (services);
 • Provedores de conteúdo (content providers);
 • Receptores de broadcast (broadcast receivers).
Cada um desses itens relacionados serve a propósitos 
distintos e tem diferentes ciclos de vida. Pode-se observar essa 
questão nas Atividades:
Toda aplicação Android pode ser formada por 
uma ou mais Activities. Estas Activities são, na 
verdade, pequenas “atividades” executadas 
uma de cada vez. A maneira mais fácil de 
entender as Activities é associar cada tela 
a uma Activity. Para controlar todas estas 
Activities, já que apenas uma Activity pode ser 
executada de cada vez, existe a Activity Stack, 
ou pilha de Activity. (Ogliari; Brito, 2014)
SAIBA MAIS
O código-fonte do Android está disponível para 
acesso, basta acessar o QR code. 
https://source.android.com/?hl=pt-br
17PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Arquitetura da plataforma
A arquitetura da plataforma Android está apresentada de 
forma esquematizada na imagem a seguir.
Imagem 1.1 – Esquema básico da arquitetura da plataforma Android 
Aplicativos
Frameworks, serviços 
e bibliotecas
Bibliotecas e serviços nativos 
Linux
Intents Activities
Retrofit
Widgets Services
Retrofit
Fonte: Adaptado de Cordeiro (2017).
https://apps.uk/android-annotations/
https://square.github.io/retrofit/
18 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Nesse contexto, Cordeiro (2017) explica:
 • Aplicativos: são os aplicativos e jogos desenvolvidos em 
Java;
 • Frameworks, serviços, bibliotecas: geralmente 
são escritos em Java e servem para facilitar o 
desenvolvimento de aplicativos e jogos;
 • Bibliotecas e serviços nativos: são recursos que 
já vêm com o Android, para serem utilizados pelo 
desenvolvedor;
 • Linux é a base de tudo e inclui todos os drivers de 
hardware e redes (bluetooth, câmeras, USB, GPS etc.), 
sistemas de arquivos e processamento.
SAIBA MAIS
Para saber em detalhes como é a arquitetura da 
plataforma Android, acesse pelo QR code.
Requisitos para o 
desenvolvimento de um 
aplicativo
Para desenvolver aplicativos para Android, são necessários 
alguns requisitos:
 • Conhecer as bases da programação em linguagem Java; 
 • Conhecimento básico sobre arquivos XML;
 https://developer.android.com/guide/platform?hl=pt-br
19PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
 • Montar o ambiente de desenvolvimento, que consiste 
em: instalar e configurar o JDK5;
 • Instalar e configurar o Android Studio. Configurar o 
SDK6 Manager.
Estabelecida essa parte inicial que aprendemos até aqui, 
podemos começar a montar o nosso ambiente de desenvolvimento. 
As bases da programação Java e dos conhecimentos necessários 
em arquivos XML serão apresentados durante nossos estudos em 
situação e profundidade oportunas, para que você possa tirar o 
máximo proveito e desenvolver com tranquilidade aplicações para 
dispositivos móveis.
Dito isso, seguimos em frente mostrando como preparar o 
ambiente para desenvolvimento Java para mobiles.
RESUMINDO
E, então? Gostou do que lhe mostramos? 
Aprendeu mesmo tudinho? Agora, só para termos 
certeza de que você realmente entendeu o tema 
de estudo deste capítulo, vamos resumir tudo o 
que vimos. Você deve ter aprendido a reconhecer 
e manipular os recursos do sistema operação 
Android, compreendendo sua arquitetura 
funcional, compatibilidades e limitações. Também 
estabelecemos os requisitos principais para o 
desenvolvimento de aplicativos que funcionem 
nesse sistema. Esperamos que tenha gostado e 
compreendido tudo o que foi apresentado até 
aqui. Pronto para continuar e aprender ainda 
mais? Vamos lá!
5 JDK é a sigla de Java Development Kit: Kit de desenvolvimento Java.
6 O Android SDK ou Kit de Desenvolvimento de Software para Android é um pacote com 
diversas ferramentas utilizadas pelo Android Studio e pelos desenvolvedores.
20 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Ambiente de desenvolvimento 
Java para mobile
OBJETIVO
Ao final deste capítulo, você será capaz de operar 
a interface de desenvolvimento de aplicativos 
do ambiente Java para dispositivos móveis. Está 
preparado para embarcar nessa viagem rumo ao 
conhecimento? Então vamos juntos! 
Antes de desenvolver qualquer aplicação para dispositivos 
móveis, é necessário instalar e configurar o ambiente de 
desenvolvimento. Você já pode ir se acostumando, pois esse 
é um procedimento normal para a maioria das linguagens de 
programação em quase todos os ambientes. Sendo assim, 
execute atentamente cada passo apresentado a seguir, para que, 
ao terminar cada etapa, tenha baixado, instalado e configurado 
adequadamente o ambiente de desenvolvimento.
Instalar o JDK
Como os aplicativos desenvolvidos para funcionar no MOS 
Android são desenvolvidos em linguagem Java, é preciso instalar 
o kit de desenvolvimento Java, o qual pode ser encontrado para 
download em vários sites. Um deles você encontra clicando aqui .
Ao seguir esse endereço da web, seu navegador abrirá um 
site da Oracle, como mostrado na imagem a seguir. O exemplo 
em questão traz a versão 21.0.2, de modo que é importante estar 
atualizado a respeito das possíveis alterações das versões mais 
recentes.
 Clique sobre a palavra download para selecionar a 
função apresentada na imagem anterior, e uma nova tela será 
apresentada, permitindo que você escolha o arquivo para 
21PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
download referente ao sistema operacional da sua máquina, como 
mostrado nas imagens a seguir.
Imagem 1.2 – Baixando o JDK
Fonte: Elaborada pela autoria (2024).
Imagem 1.3 – Baixando o JDK
Fonte: Elaborada pela autoria (2023).
Em nossos estudos, será considerado que o sistema 
operacional de seu computador é o Windows 11 (64 bits), mas 
novamente ressaltamos que é imprescindível a um profissional da 
área estar atualizado das versões mais recentes. Faça o download 
e execute o arquivo.
IMPORTANTE
Não se esqueça de aceitar os termos de licença 
antes de selecionar o arquivo para fazer o 
download.
22 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Logo que o arquivo for baixado, você deverá executá-
lo. Uma tela, como a mostrada a seguir, deve aparecer. Proceda 
conforme indicado a seguir.
Imagem 1.4 – Instalando o JDK
Fonte: Elaborada pela autoria (2024).
Passo 1: clique em Next.
23PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1Imagem 1.5 - Instalando o JDK
Fonte: Elaborada pela autoria (2024).
Passo 2: selecione o diretório no qual deve ser instalado 
o JDK e clique em Next; recomendamos deixar o local do arquivo 
conforme definido como padrão. Aguarde a instalação, conforme 
a imagem a seguir.
Imagem 1.6 - Instalando o JDK
Fonte: Elaborada pela autoria (2024).
24 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.7 - Instalando o JDK
Fonte: Elaborada pela autoria (2024).
Quando o JDK estiver instalado com sucesso, clique em 
Close.
Configurando as variáveis de ambiente
Passo 3: busque por “variáveis do ambiente” na busca 
do Windows e clique no botão “Variáveis de Ambiente”, como 
mostrado na figura a seguir.
25PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.8 – Variáveis de ambiente
Fonte: Elaborada pela autoria (2023).
Isso fará com que surja a seguinte tela:
Imagem 1.9 – Variáveis de ambiente
Fonte: Elaborada pela autoria (2024).
26 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 4: crie uma Variável do sistema com o nome JAVA_
HOME e, como valor da variável, coloque o caminho em que foi 
instalado o JDK, como apresentado na imagem a seguir.
Imagem 1.10 – Criação de nova variável do sistema
Fonte: Elaborada pela autoria (2024).
Passo 5: clique em OK na tela da figura anterior.
Passo 6: localize na lista de variáveis da figura, a variável 
de nome Path e clique duas vezes sobre ela. A seguinte tela será 
apresentada.
Imagem 1.11 - Criação da variável Path
Fonte: Elaborada pela autoria (2024).
27PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 7: clique no botão Novo e digite o endereço do 
arquivo javac.exe, como: C:\ Program Files\Java\jdk1.7.0_04\bin 
ou, se preferir, %JAVA_HOME%\bin, como mostrado na imagem 
anterior.
Passo 8: clique em OK.
Passo 9: crie uma nova variável com o nome CLASSPATH e 
coloque como valor da variável: C:\Program Files\Java\jdk1.7.0_04\
lib\, como mostrado na imagem a seguir.
Imagem 1.12 – Criando a variável CLASSPATH
 
Fonte: Elaborada pela autoria (2023).
Passo 10: depois de clicar em OK, reinicie o computador 
para que as alterações tenham efeito.
Ao que tudo indica, o JDK está instalado, mas é bom 
fazer um teste, não é mesmo? Então vamos lá. Para verificar se 
o JDK foi instalado corretamente e que o seu computador está 
reconhecendo-o, entre no Prompt do DOS e digite o comando java 
-version. O resultado deve ser parecido com o apresentado na 
imagem a seguir.
28 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.13 – Testando a instalação do JDK
Fonte: Elaborada pela autoria (2023).
Ainda no Prompt do DOS, digite outro comando: javac 
-version. O resultado deve ser parecido com o apresentado na 
imagem a seguir.
Imagem 1.14 – Testando a instalação do JDK
Fonte: Elaborada pela autoria (2023).
O JDK está instalado e reconhecido. Podemos seguir para 
os próximos passos.
29PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Instalar e configurar o Android 
Studio
Chegamos ao momento de instalar e configurar a 
ferramenta oficial de desenvolvimento Android do Google: o 
Android Studio. Cada passo desse processo será explicado a 
seguir.
Instalando o Android Studio
Passo 1: baixe o Android Studio. O link para baixar a 
ferramenta está acessível no QR Code.
IMPORTANTE
Caso seu sistema operacional seja 64 bits, clique 
no botão de download. Se não for esse o caso, 
clique em Download Options e selecione o link 
para a versão 32 bits, seguindo as instruções do 
instalador.
Não se esqueça de verificar as atualizações. Nesse 
caso, o arquivo a ser baixado tem o seguinte 
nome: android-studio-ide-173.4907809- windows.
exe. Trata-se do nome na versão 64 bits, mas pode 
variar conforme o sistema operacional utilizado 
em seu computador.
https://developer.android.com/studio
30 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 2: execute o arquivo baixado. Ao clicar duas vezes 
sobre ele, o assistente de instalação do Android Studio será 
iniciado, apresentando a tela a seguir.
Imagem 1.15 – Assistente de instalação do Android Studio (tela 1)
Fonte: Elaborada pela autoria (2023).
Ressaltamos que as ilustrações têm a finalidade de ajudá-
lo no aprendizado, como um guia visual, mas esses serviços têm 
constantes atualizações e mudanças, de modo que a interface com 
que o usuário se depara agora pode não ser igual alguns meses 
depois. Por isso é importante entender o processo como um todo, 
já que não há como “decorar” o jeito de fazer.
31PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 3: clique em Next, e a seguinte tela será apresentada.
Imagem 1.16 – Assistente de instalação do Android Studio (tela 2)
Fonte: Elaborada pela autoria (2023).
Passo 4: verifique se a checkbox da opção Android Studio 
está marcada e marque também a checkbox da opção Android 
virtual device.
32 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 5: clique em Next.
Imagem 1.17 – Assistente de instalação do Android Studio (tela 3)
Fonte: Elaborada pela autoria (2023).
Passo 6: escolha o local em que o aplicativo deve ser 
instalado (é recomendável deixar o padrão).
33PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 7: clique em Next.
Imagem 1.18 – Assistente de instalação do Android Studio (tela 4)
Fonte: Elaborada pela autoria (2023).
Passo 8: clique em Next e o processo de instalação terá 
início, como mostra a figura a seguir.
Imagem 1.19 – Assistente de instalação do Android Studio (tela 5)
Fonte: Elaborada pela autoria (2023).
34 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Aguarde até a instalação ser completada.
Passo 9: clique em Next.
Imagem 1.20 - Assistente de instalação do Android Studio (tela 6)
Fonte: Elaborada pela autoria (2023).
Passo 10: marque a opção para iniciar o aplicativo Android 
Studio.
Passo 11: clique em Finish. A seguinte tela aparecerá:
Imagem 1.21 – Assistente de instalação do Android Studio (tela 7)
Fonte: Elaborada pela autoria (2023).
35PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 12: selecione a opção de Não importar configurações 
(Do not import settings) e clique em OK. A instalação foi finalizada.
Vamos agora para a configuração do Android Studio.
Configurando o Android Studio
Após clicar em OK, conforme o passo 12 da instalação 
que acabamos de aprender, a tela do assistente de configuração 
aparecerá.
Imagem 1.22 – Assistente de configuração (tela 1)
Fonte: Elaborada pela autoria (2023).
36 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 13: clique em Next.
Imagem 1.23 – Assistente de configuração (tela 2)
Fonte: Elaborada pela autoria (2023).
Passo 14: mantenha marcada a opção Standard para que a 
instalação aconteça com as configurações e opções padrão.
37PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 15: clique em Next.
Imagem 1.24 – Assistente de configuração (tela 4)
Fonte: Elaborada pela autoria (2023).
Passo 16: clique em Finish.
Passo 17: selecione a aparência desejada para a interface.
Recomendamos a opção Dracula, porque apresenta fundo 
mais escuro e, por isso, cansa menos a visão.
38 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.25 – Assistente de configuração (tela 3)
Fonte: Elaborada pela autoria (2023).
Depois de instalado e configurado o programa, a tela de 
boas-vindas do Android Studio deve ficar assim:
39PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.26 – Ferramenta Android Studio depois de instalada
Fonte: Elaborada pela autoria (2023).
Antes de começar um novo projeto com essa ferramenta, 
precisamos verificar o SDK Manager.
Configurar o Android SDK 
Manager
Passo 18: clique no botão Configure e na opção SDK 
Manager, conforme apresentado na imagem a seguir:
40 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.27 – Configurando o SDK Manager
Fonte: Elaborada pela autoria (2023).
A seguinte tela deverá ser apresentada:
Imagem 1.28 – Configurando o SDK Manager
Fonte: Elaborada pela autoria (2023).
41PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Passo 19: selecione a guia SDK Platforme os itens 
apresentados na figura anterior – da API Level 14 até a 28.
Passo 20: clique na guia SDK Tools e marque os itens 
apresentados na imagem a seguir.
Imagem 1.29 – Configurando o SDK Manager
Fonte: Elaborada pela autoria (2023).
Passo 21: clique em Apply e aguarde que a atualização seja 
realizada.
Passo 22: clique em OK.
42 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
IMPORTANTE
Certifique-se de que os seguintes pacotes estejam 
listados como instalados na coluna Status:
 • Tools > Android SDK Tools;
 • Tools > Android SDK Platform-tools;
 • Tools > Android SDK Build-tools;
 • SDK Platform (versão mais recente) > SDK 
Platform;
 • SDK Platform (versão mais recente) > ARM 
EABI v7a System Image;
 • Extras > Android Support Repository;
 • Extras > Android Support Library;
 • Extras > Google Repository;
 • Extras > Google USB Driver (necessário 
apenas em sistemas Windows).
Muito bem! Agora estamos prontos para testar o ambiente 
de desenvolvimento Android.
Testando o ambiente de 
desenvolvimento
Para montar o nosso primeiro projeto Android, clique em 
Start a new Android Studio Project, conforme apresentado na tela 
a seguir.
43PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.30 – Novo projeto Android
Fonte: Elaborada pela autoria (2023).
Ao clicar no local marcado na imagem anterior, a seguinte 
tela será apresentada.
Imagem 1.31 – Criando um projeto Android
Fonte: Elaborada pela autoria (2023).
44 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Em Application Name (Nome do aplicativo), digite Meu 
primeiro App, deixando os demais itens como estão, e clique 
em Next.
Na tela apresentada na imagem a seguir, marque apenas 
a checkbox referente ao item Phone and Tablet e selecione, na 
combobox (caixa de combinação), o item API 21: Android 5.0 
(Lollipop).
Note que essa tela permite configurar o dispositivo para 
o qual você deseja desenvolver o projeto Android e que, além 
da opção que marcamos (Phone and Tablet), também há outras 
opções, tais como dispositivos chamados de wearables, Android 
TV, entre outros.
Imagem 1.32 – Criando um projeto Android
Fonte: Elaborada pela autoria (2023).
45PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
IMPORTANTE
Sempre que você for selecionar um tipo de 
dispositivo para o projeto, precisa definir qual é 
a API mínima que o referido dispositivo deve ter 
para rodar/suportar adequadamente o executável 
do projeto. Caso você tenha alguma dúvida sobre 
qual API deve ser selecionada, clique no link Help 
me choose, destacado em branco na imagem 
anterior. Ao clicar nesse link, uma nova tela será 
apresentada (ver a imagem a seguir), em que 
será possível verificar qual é a abrangência da API 
selecionada.
Imagem 1.33 – Tela que apresenta a abrangência das API disponíveis
Fonte: Elaborada pela autoria (2023).
Analisando a imagem anterior, verificamos que, se 
selecionarmos a API 25 para o nosso projeto, implementamos 
uma aplicação que terá apenas 1,5% dos dispositivos capazes de 
executá-la. Se selecionarmos a API 21, nossa abrangência aumenta 
46 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
para 50% dos dispositivos atualmente no mercado. E, para ter uma 
abrangência garantida para a maioria dos dispositivos, escolhemos 
a API 15, que nos dá praticamente 100% de abrangência para a 
nossa aplicação. Dessa forma, depois de selecionada a API 15 para 
o dispositivo Phone and Tablet, clique em Next.
A próxima tela a ser apresentada (imagem a seguir) 
permite selecionar a activity padrão para seu aplicativo. A activity é 
um módulo único e independente que costuma estar relacionado 
diretamente a uma tela de interface de usuário e suas respectivas 
funcionalidades. Não se preocupe em entender completamente 
esse conceito agora, pois trataremos dele com detalhes em 
outro momento. Por enquanto, basta entender que cada activity 
representa uma tela do aplicativo que estamos a desenvolver.
Imagem 1.34 – Tela de seleção do tipo de activity do aplicativo
Fonte: Elaborada pela autoria (2023).
47PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Selecione uma Empty activity, como mostra a figura 
anterior, e clique em Next. A tela a seguir permite que você defina 
o nome da activity e o nome do layout para a sua aplicação.
 • Activity name: isso dá à sua activity um nome para se 
referir no código. Uma classe Java será criada e usará 
o conteúdo desse campo de texto para dar um nome à 
classe (Cordeiro, 2017).
 • Layout name: define o nome do arquivo XML que 
contém as configurações do layout que será exibido 
para o usuário do aplicativo.
Nesse momento, deixe com os nomes padrões e clique em 
Finish.
Imagem 1.35 – Tela de configuração da activity do aplicativo
Fonte: Elaborada pela autoria (2023).
48 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
O seu projeto será criado conforme as configurações 
que você definiu e será apresentado na IDE7 do Android Studio, 
conforme imagem a seguir.
Imagem 1.36 – IDE do Android Studio
Fonte: Elaborada pela autoria (2023).
Muito bem. Agora falta pouco! Depois de todo esse 
trabalho, o que precisamos é ver se o aplicativo está funcionando 
corretamente, certo?
Para isso, clique no menu Run e selecione o primeiro item, 
Run app. Uma nova tela será apresentada, conforme a imagem a 
seguir.
7 Integrated Development Environment - Ambiente de Desenvolvimento Integrado - que 
permite ao programador o acesso a uma interface amigável de desenvolvimento que facilita, 
organiza e otimiza o desenvolvimento, o teste e a distribuição da aplicação.
49PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.37 – Tela para seleção do dispositivo virtual Android
Fonte: Elaborada pela autoria (2023).
Repare que a lista de dispositivos virtuais conectados está 
vazia () e, por isso, caso você clique em OK, uma mensagem 
de erro será apresentada, informando que nenhum dispositivo 
virtual foi selecionado. Precisamos, então, criar um dispositivo 
virtual para rodar a nossa aplicação-teste.
É importante notar que o Android Studio está simulando 
uma aplicação em um dispositivo móvel, mas seu computador, 
mesmo sendo um notebook, não é um dispositivo móvel como um 
celular ou um tablet. Por isso, precisamos permitir que o Android 
Studio faça a simulação desse dispositivo, ou seja, precisamos 
criar um dispositivo virtual Android ou, em inglês, um Android 
virtual device.
Para isso, clique no botão Create New Virtual Device e 
selecione o dispositivo Phone - Nexus 4, conforme mostrado na 
imagem a seguir:
50 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.38 – Criando o AVD (Android virtual device)
Fonte: Elaborada pela autoria (2023).
Clique em Next e faça o download da API 28, conforme 
mostrado na próxima imagem:
Imagem 1.39 – Carregando as API necessárias para o aplicativo
Fonte: Elaborada pela autoria (2023).
51PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Clique em Next novamente.
Imagem 1.40 – Configuração do AVD
Fonte: Elaborada pela autoria (2023).
Escolha um nome qualquer para o seu AVD, bem como a 
orientação inicial, e clique em Finish.
Se tudo estiver de acordo, aparecerá um emulador do 
dispositivo Android executando seu primeiro app, conforme a 
próxima imagem.
52 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.41 – AVD executando seu primeiro app mobile
Fonte: Elaborada pela autoria (2023).
Não foi tão difícil assim, não é mesmo?! Agora que 
você tem seu primeiro projeto funcionando em um dispositivo 
virtual Android, podemos considerar que tudo está instalado e 
configurado corretamente.
SAIBA MAIS
A fim de aprofundar seus conhecimentos em 
programação para dispositivos Android, acesse o 
QR code .
https://developer.android.com/guide/
53PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Fechando a aplicação Android
Precisamos executar mais duas atividades para concluir a 
presente etapa.
 • Primeiro: feche o AVD (Android virtual device), clicando 
no X que está localizado no canto superior direito da 
barra lateral, destacado na imagema seguir.
Imagem 1.42 – Como fechar o AVD
Fonte: Elaborada pela autoria (2023).
 • Segundo: feche o projeto-teste adequadamente. Para 
isso, clique no menu File e selecione o item Close project, 
como mostra a imagem.
54 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.43 – Fechando o projeto corretamente
Fonte: Elaborada pela autoria (2023).
Podemos, assim, passar para a próxima fase do 
nosso aprendizado: entender o funcionamento e os recursos 
disponibilizados pela interface Android Studio e, em seguida, 
aprender os fundamentos da linguagem Java. Detalharemos 
o passo a passo de cada etapa realizada até o momento no 
desenvolvimento de aplicativos para dispositivos móveis.
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza de 
que você realmente entendeu o tema de estudo 
desse capítulo, vamos resumir tudo o que vimos. 
Você deve ter aprendido a operar a interface de 
desenvolvimento de aplicativos do ambiente Java 
para dispositivos móveis, testando o aplicativo 
e observando seu funcionamento. Espero que 
tenha gostado e compreendido tudo o que foi 
apresentado até aqui. E aí, pronto para continuar? 
Vamos juntos!
55PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Estrutura do projeto Java-
Android
OBJETIVO
Ao final deste capítulo, você será capaz de explicar 
a estrutura da linguagem de programação 
Java para dispositivos móveis e seu método de 
organização do código. Motivado para desenvolver 
essa competência? Avante!
Antes de darmos sequência ao aprendizado e à 
implementação de programas para dispositivos móveis utilizando 
Java-Android, é importante entender os recursos disponibilizados 
pela interface do ambiente de desenvolvimento integrado (IDE) 
Android Studio, bem como seu funcionamento.
É importante destacar que a interface utilizada em nossos 
estudos não é a única maneira de desenvolver aplicativos Java 
para dispositivos móveis. Poderíamos, por exemplo, ter instalado 
o próprio ambiente de desenvolvimento Java, baixando o JDK 
na sua última versão disponível na página da Oracle (empresa 
proprietária do Java). Trataremos mais do assunto adiante e 
exploraremos a interface Android Studio.
Conhecendo a interface Android 
Studio
Como você deve ter percebido no primeiro app que 
desenvolvemos juntos, a interface da IDE Android Studio tem uma 
grande variedade de telas e funções. Vamos apresentar as mais 
relevantes que você vai precisar utilizar nos exemplos e exercícios 
no escopo dos nossos estudos. 
56 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Novamente salientamos que as imagens são ilustrativas de 
uma versão corrente do programa, que pode, a qualquer tempo, 
receber atualizações e ser modificado.
Tela de boas-vindas
Imagem 1.44 - Tela de boas-vindas
Fonte: Elaborada pela autoria (2023).
Ao abrir a IDE Android Studio, normalmente a tela de boas-
vindas será a primeira a aparecer.
IMPORTANTE
Isso só não vai acontecer caso você tenha fechado 
a IDE sem antes fechar o projeto. Para esse caso, 
a IDE abrirá e carregará diretamente o projeto 
que estava aberto. Caso isso tenha acontecido 
com você, feche corretamente o projeto e você 
terá acesso à tela de boas-vindas, conforme 
apresentado na imagem anterior.
57PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Não está errado fechar diretamente a IDE sem fechar 
antes o projeto. Estamos procedendo assim, dessa vez, para ter 
acesso a todas as telas e funcionalidades relevantes para o escopo 
de nosso aprendizado.
Repare que a tela de boas-vindas está dividida em duas 
colunas, a saber:
 • A coluna da esquerda apresenta a lista dos últimos 
projetos trabalhados;
 • A coluna da direita fornece uma lista de possibilidades, 
entre as quais destacamos as duas primeiras: (1) iniciar 
um novo projeto Android Studio e (2) abrir um projeto 
Android Studio existente.
Clique no projeto-teste, na coluna da esquerda, para ter 
acesso à tela principal do projeto.
Tela principal
É preciso dizer que o layout e a configuração dos painéis 
da tela principal variam conforme o gosto de desenvolvedor e, 
também, de acordo com as ferramentas utilizadas da última vez 
que o projeto foi aberto.
58 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.45 – Tela principal do IDE Android Studio
Fonte: Elaborada pela autoria (2023).
Na imagem anterior, destacamos os seguintes itens:
A – Barra de menus: barra tradicional com as opções de 
salvar, abrir, importar, exportar, navegar, executar etc. Veremos os 
mais relevantes no decorrer de nossos estudos. Nesse momento, é 
importante entender alguns itens dessa barra de menus, conforme 
explicaremos a seguir.
Menu File:
 • New: permite a criação de um novo projeto, classe, 
activity, módulo, entre outros. Aprenderemos a 
trabalhar com cada um desses itens futuramente;
 • Open: permite abrir um projeto existente;
 • Close project: fecha o projeto em uso;
 • Settings: apresenta uma nova tela que permite 
configurações de aparência e comportamento da IDE, 
tais como tamanho, cor e tipo de fonte do código, cor 
de fundo da IDE, entre outras;
59PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
 • Project structure: apresenta uma nova tela que permite 
configurar características, tais como a localização do 
Android SDK e JDK, bem como verificar as versões do 
Android, entre outras;
 • Save all: salva todas as janelas de código abertas;
 • Exit: fecha a IDE sem fechar o projeto. Caso algum 
projeto esteja aberto, este será carregado da próxima 
vez que a IDE for aberta.
Menu Edit: dá acesso às funções tradicionais de undo 
(desfazer) e redo (refazer), bem como copiar, colar, recortar, colar, 
selecionar tudo e localizar.
Menu View:
 • Tool window: permite acesso às janelas da IDE, tais 
como Logcat, Project, Favorites, Structure, entre outras;
 • Demais itens: permitem a visualização de alterações 
recentes, bem como a ativação ou desativação 
da visualização das barras de ferramentas, status, 
navegação e botões.
Menu Navigate: permite o direcionamento do ponteiro de 
ação do editor para uma determinada classe, linha de aviso de 
erro etc.
Menu Code: atalhos para a geração de código ou inserção 
de comentários (em linha ou em bloco), entre outras coisas. 
Veremos esses itens com mais detalhes quando tratarmos do 
código Java do projeto.
Menu Run: permite a execução do projeto em modo normal 
ou em modo debug.
60 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Menu Tools: permite acesso ao SDK Manager, ao AVD 
Manager, ao editor de temas, e aos menus VCS, Windows e Help – 
sobre os quais aprenderemos mais adiante.
Existem ainda os menus Analyze, Refactor e Build.
B – Barra de navegação: permite a movimentação entre 
os arquivos, subpastas e pastas que compõem o projeto. Segue 
o mesmo princípio da barra de navegações do Windows Explorer.
C – Barra de ferramentas: é composta por botões que 
servem como atalho para as funções que são utilizadas com mais 
frequência. Pode ser personalizada, clicando com o botão direito 
na barra e selecionando a opção Menus and Toolbars.
D - Janela do editor de código: exibe o conteúdo (código) 
do arquivo no qual o programador está trabalhando no momento. 
Quando estiver trabalhando com várias janelas (arquivos) de 
código, cada uma delas será representada por uma aba, seguindo 
a mesma lógica dos navegadores na internet. 
E – Janela de ferramentas de projeto: fornece uma visão 
hierárquica da estrutura do arquivo de projeto, permitindo a 
navegação para arquivos e pastas específicos para serem abertos. 
A configuração padrão é a visualização Android, que é o modo a 
ser utilizado em nossos estudos.
F – Barra de status e demais janelas de ferramentas:
Barra de status - exibe mensagens informativas sobre o 
projeto e as activities do Android Studio.
Janelas de ferramentas - localizadas no canto esquerdo, 
permitem acesso a uma variedade de janelas que apresentam 
dados importantes sobre o projeto. 
1.1.1 Demais janelas de ferramentas
61PROGRAMAÇÃO CODING (MOBILE)U
ni
da
de
 1
Para ter acesso às demais janelas de ferramentas 
disponibilizadas pela IDE, pare o cursor do mouse sobre o ícone 
localizado no canto inferior esquerdo da IDE, conforme mostra a 
imagem a seguir.
Imagem 1.46 – Lista das janelas de ferramentas disponibilizadas pela IDE
Fonte: Elaborada pela autoria (2023).
Como se pode verificar, a IDE fornece uma grande 
variedade de janelas de ferramentas. As mais utilizadas, de acordo 
com Cordeiro (2016), são as seguintes:
 • Project: fornece uma visão geral da estrutura de arquivos 
que compõe o projeto, permitindo uma navegação 
rápida entre os arquivos;
 • Structure: permite uma visão de alto nível da estrutura 
das classes atualmente exibidas no editor. Essa 
informação inclui uma lista de itens, tais como classes, 
métodos e variáveis no arquivo;
 • Build variants: uma maneira rápida de configurar 
diferentes tipos de compilação para o projeto atual (por 
exemplo, diferentes versões para debug e liberação 
62 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
de versões do aplicativo, ou várias compilações para 
atingir diferentes categorias de dispositivos);
 • Todo: fornece um lugar para os itens que ainda têm de 
ser concluídos no projeto;
 • Messages: os dados dessa janela são gerados a partir do 
sistema de compilação Gradle e podem ser úteis para 
identificar as causas de problemas na compilação de 
projetos;
 • Android monitor: possibilita o acesso ao sistema de 
debug do Android. Dentro dessa janela, podemos 
executar tarefas básicas de debug, como monitorar 
a saída de log de um aplicativo em execução, tirar 
screenshots e vídeos do aplicativo e parar um processo;
 • Android model: exibe uma lista completa das 
configurações do seu projeto. Essas podem variar entre 
configurações mais óbvias, tais como a versão do SDK 
alvo, e coisas mais escondidas, tais como regras da 
configuração de compilação;
 • Terminal: é uma janela de terminal do sistema na qual 
o Android Studio está em execução. No Windows, essa 
interface é o prompt de comando;
 • Run: essa ferramenta torna-se disponível quando 
um aplicativo está sendo executado e fornece uma 
visualização dos resultados da execução, junto a opções 
para parar ou reiniciar o processo;
 • Event log: exibe mensagens relacionadas a eventos e 
atividades realizadas no Android Studio. A compilação 
bem-sucedida de um projeto, por exemplo, ou o fato 
de que um app está sendo executado serão mostrados 
dentro dessa janela;
63PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
 • Gradle console: usada para exibir todas as saídas do 
sistema Gradle enquanto os projetos são compilados 
dentro do Android Studio. Isso inclui informações sobre o 
sucesso ou insucesso do processo de desenvolvimento, 
assim como avisos ou detalhes de qualquer erro;
 • Gradle: mostra as tarefas do Gradle que compõem a 
configuração do projeto. Essa janela lista as tarefas que 
estão envolvidas na compilação dos vários elementos 
do projeto em um aplicativo Android.
Estrutura do projeto Java-Android
Agora nos dedicaremos ao reconhecimento de alguns 
arquivos e características importantes para o entendimento da 
estrutura básica do projeto Java-Android. Trataremos, nesse 
momento, apenas dos arquivos e das características relevantes 
para o entendimento do projeto.
Para verificar a estrutura do projeto, abra o Android Studio 
e crie um novo projeto com as seguintes características:
Na tela Create Android project:
 • Defina o Application name: AppEstrutura. Na tela Target 
Android device:
 • Marque a opção Phone and tablets;
 • Selecione a API 15.
Na tela Add an activity to mobile:
 • Selecione: Empty activity. 
Na tela Configure activity:
 • Defina o Activity name: principal;
64 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
 • Defina o Layout name: activity principal;
 • Clique em Finish e aguarde a criação do projeto.
Uma vez que o projeto esteja criado, a janela de ferramenta 
de projeto deve estar como apresentada na imagem a seguir.
Imagem 1.47 – Tela de ferramentas de projeto
Fonte: Elaborada pela autoria (2023).
Note que a estrutura de pastas do projeto possui duas 
pastas “raiz”: (1) app e (2) Gradle scripts. A pasta app é composta 
por três subpastas: (a) pasta Manifests; (b) a pasta Java; (c) e a pasta 
Res. A seguir, entenderemos melhor cada uma delas.
Pasta Manifests
Dentro da pasta Manifests existe um arquivo chamado 
AndroidManifests.xml. Todo aplicativo Java-Android deve ter um 
arquivo com esse mesmo nome. Pode ser um projeto desenvolvido 
(ou em desenvolvimento) por você ou de outra pessoa. Ele é o 
manifesto do aplicativo, o qual contém informações essenciais 
sobre o aplicativo cujo código nós estamos analisando.
O termo manifesto consiste em um substantivo masculino 
cujo significado diz respeito à exposição em que se manifesta o 
65PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
que é preciso ou o que se deseja saber a respeito de algo. Com 
essa definição, podemos inferir que o arquivo manifesto do 
aplicativo tem a função de conter as informações necessárias (que 
devem ser passadas para o MOS Android) para que o aplicativo 
seja corretamente executado.
De maneira geral, segundo a própria documentação 
fornecida pelo site do Android, o arquivo do manifesto serve para:
 • Nomear (identificar unicamente) o pacote Java para o 
aplicativo;
 • Descrever os componentes do aplicativo;
 • Declarar as permissões que o aplicativo deve ter para 
acessar partes protegidas da API;
 • Declarar as permissões que o aplicativo deve ter para 
interagir com outros aplicativos;
 • Declarar qual é a API mínima necessária para a correta 
execução do aplicativo;
 • Listar as bibliotecas às quais o aplicativo necessita estar 
vinculado para funcionar adequadamente.
Agora que você sabe o que é e para que serve o arquivo 
referente ao manifesto do aplicativo, vamos analisar a estrutura 
deste. A imagem a seguir apresenta uma cópia do AndroidManifest.
xml do projeto que estamos desenvolvendo. Ele deve ser idêntico 
ao do seu projeto.
66 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Imagem 1.48 – Arquivo AndroidManifest.xml
Fonte: Elaborada pela autoria (2023).
Algumas considerações preliminares são importantes. 
O manifesto é um arquivo no formato XML (Extensible Markup 
Language) que, conforme aponta Pereira (2009), é uma linguagem 
de marcação recomendada pela W3C para a criação de documentos 
com dados organizados hierarquicamente, assim como faz o HTML, 
porém seu diferencial é ser extensível, o que permite ao utilizador 
definir seus próprios conjuntos de elementos de marcação.
Em HTML, utilizamos conjuntos de TAGs ou marcadores 
predefinidos, tais como , etc. Com XML, 
é possível criar nossos próprios marcadores. Você pode criar um 
marcador, como: , etc.. Para 
o caso do arquivo AndroidManifest.xml, apresentado na imagem 
anterior, podemos identificar alguns marcadores definidos 
por quem elaborou essa solução para o desenvolvimento de 
aplicativos para dispositivos móveis.
Note que a linha número 1 contém um cabeçalho. Todos 
os arquivos XML precisam ter esse cabeçalho e informar ao 
navegador ou ao MOS Android que o arquivo a ser lido está no 
67PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
formato XML. Ao passar para o conteúdo do arquivo, veja que, 
na linha 2, existe um marcador chamado , o qual inicia 
o documento e, consequentemente, também o finaliza, pois 
temos, na linha 21, o fechamento do mesmo marcador. Na linha 
5, temos o marcador , que é fechado na linha 19. 
Também temos o marcador na linha 12 e que é fechado 
na linha 18.
Vamos verificar quais são os marcadores e suas utilidades 
(as TAGs), apresentadas na imagem anterior:
 - é o elemento-raiz de todo arquivo 
AndroidManifest.xml.
 • Deve definir o namespace do Android, cujo atributo, 
segundo o Android, pode ser sempre definido como: 
http://schemas.android.com/apk/res/android;
 • Deve identificaro pacote (package) ao qual a aplicação 
pertence. O nome completo desse pacote é definido 
quando estamos criando um projeto no Android Studio. 
O nome do pacote também representa, conforme 
Android, a identificação (ID) da aplicação, a qual deve ser 
única e será usada caso se queira publicar a aplicação 
na Google Play;
 • Deve conter pelo menos uma aplicação (representada 
pelo marcador ). 
Existem muitos outros elementos que podem estar 
contidos dentro do marcador . Nesse momento 
estamos nos dedicando apenas àqueles que o arquivo da imagem 
apresenta. 
: é a declaração da aplicação. Esse elemento 
deve conter todos os subelementos que declaram cada um dos 
componentes da aplicação e, também, pode conter atributos que 
68 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
afetem esses componentes. São exemplos de atributos: icon, label, 
permission, process etc.
Atributos:
 • Android:allowBackup: determina se o aplicativo em 
questão participa ou não da infraestrutura de backup 
e restauração. Pode ser configurado para verdadeiro 
(true) ou falso (false);
 • Android:icon: define um ícone para a aplicação como 
um todo e um ícone padrão para cada componente da 
aplicação. Deve ser configurado como uma referência 
para uma fonte de imagem apontada pelo elemento @
drawable/icon (que veremos mais adiante);
 • Android:label: define uma etiqueta (label) legível para a 
aplicação como um todo e uma etiqueta (label) padrão 
para cada componente da aplicação;
 • Android:roundIcon: A partir da versão 8 do MOS 
Android, foram introduzidos ícones adaptativos que 
podem ter os mais variados formatos. Um deles é o 
formato arredondado, por isso roundIcon;
ACESSE
Para saber mais sobre os ícones adaptativos, 
acesse o QR code disponível aqui.
 • Android:supportsRtl: declara se sua aplicação suporta 
layouts “Right-to-Left”.
https://developer.android.com/develop/ui/views/launch/icon_design_adaptive?hl=pt-br
69PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Podem ser definidos como verdadeiro (true) ou falso 
(false).
 • Android: theme: define um tema padrão para todas 
as atividades (telas) contidas na aplicação. Atividades 
individuais que usem esse atributo podem se sobrepor 
à definição padrão.
 - Declara uma atividade, isto é, uma interface 
(tela) visual para o usuário. Uma aplicação pode ter várias telas, e 
cada uma delas deve ser representada por um elemento 
distinto dentro do arquivo do manifesto.
Atributos: android:name: define o nome da atividade.
 • : intent é um objeto de mensagem que 
pode ser usado para solicitar uma ação de outro 
componente de aplicativo Android. O 
especifica o tipo de intent a que uma atividade, serviço 
ou receiver está apto a responder. Explicando melhor: 
um intent-filter declara o que uma atividade ou serviço 
pode fazer e quais tipos de broadcasts um receiver pode 
manipular. Nesse momento, nos importa saber que, no 
caso da figura anterior, aparecem dois subelementos: 
(1) action; (2) category;
 • Action: adiciona uma ação ao elemento intent-filter (que 
pode possuir um ou mais elementos de ações). No caso 
em estudo, temos que a ação é definida como MAIN. 
Essa ação (MAIN) informa ao MOS Android que essa é a 
atividade principal da aplicação;
 • Category: adiciona um nome de categoria ao elemento 
intent-filter. No caso em estudo, temos que a categoria 
foi declarada como launcher (iniciar, lançar, começar, 
empreender). Isso informa ao MOS Android que a 
70 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
atividade deve estar visível no launcher do dispositivo 
móvel.
Finalizamos a análise do arquivo de manifesto do aplicativo. 
Passamos agora para a próxima pasta.
IMPORTANTE
Não se preocupe se tudo isso ainda parece meio 
confuso. Estamos na fase inicial. Trabalharemos 
em detalhes cada um desses elementos e outros 
mais para que você possa se sentir confiante ao 
desenvolver uma aplicação para dispositivo móvel.
Pasta Java
A pasta Java tem, normalmente, três subpastas. A primeira 
contém as classes (arquivos.java) referentes às activities (telas) 
da sua aplicação e demais classes que você porventura precise 
desenvolver em uma aplicação mais sofisticada. As outras duas 
pastas são pastas de testes, não sendo nosso foco agora. Vamos, 
então, para a classe Principal.java, que deve conter a estrutura da 
nossa activity. A imagem a seguir mostra o conteúdo dessa classe. 
Imagem 1.49 – Classe Principal.Java
Fonte: Elaborada pela autoria (2023).
71PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Não iremos estudar a linguagem Java nesse momento. 
Mas, apesar disso, precisamos fazer aqui algumas considerações.
 • Na linha 1, a palavra destacada package define em 
que pacote essa classe está declarada. Um pacote 
pode conter várias classes que devem estar separadas 
por assunto ou aplicação, assim como separamos 
documentos em uma pasta ou pacote;
 • Na linha 3, a palavra destacada import declara quais 
são as bibliotecas que essa nossa classe Principal vai 
precisar usar para que seja executada adequadamente 
pelo MOS Android. As classes importadas não 
aparecem por motivos de organização de código, mas, 
se você clicar nos três pontinhos que estão logo depois 
da palavra import, poderá ver quais são as classes 
necessárias para fazer esse projeto ser executado;
 • Na linha 6, a classe principal é definida. A palavra 
destacada class define que Principal é uma classe. 
A palavra public define que essa classe pode ser 
instanciada por qualquer outra que a utilize, sem precisar 
ser uma classe-filha. Já a palavra extends declara que a 
classe Principal (nossa classe) deve estender (herdar) 
as características (atributos) e os comportamentos 
(métodos) da classe AppCompatActivity;
 • Na linha 8, a palavra @Override informa que o 
método da linha abaixo (onCreate) está fazendo 
sobreposição8 de um método já existente na classe-
mãe (AppCompatActivity);
 • Na linha 9, o método onCreate é definido. Ele é 
responsável por carregar os layouts e outras operações 
8 Sobreposição (override) é uma característica da programação orientada a objetos que 
permite a uma subclasse ou classe-filha prover uma específica implementação de um 
método que já foi implementado pela classe-mãe.
72 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
de inicialização. Veremos com mais detalhes esse 
método quando estudarmos o ciclo de vida completo 
da activity;
 • A palavra void declara que esse método não retorna 
qualquer valor, ao passo que protected define que 
esse método não pode ser acessado por qualquer 
classe, apenas pelas classes-filhas dessa que 
estamos criando;
 • Note também que o método onCreate tem um 
parâmetro, mas não se preocupe com ele agora. 
Estudaremos essa parte com detalhes quando 
tratarmos do ciclo de vida de uma activity.
 • Na linha 10, a palavra reservada super indica que o 
método onCreate original (definido na classe-mãe) deve 
ser chamado e executado;
 • Na linha 11, o método setc.ontentView será chamado. Ele 
tem a função de apresentar um conteúdo na tela. Esse 
conteúdo é definido por um layout que está declarado 
no argumento ou parâmetro desse método (R.layout.
activity_principal);
 • R indica a pasta res (abreviatura de resource);
 • Layout é o nome da subpasta da pasta res;
 • Activity_principal é o nome do arquivo (activity_
principal.xml).
A pasta res será analisada agora, e você terá uma visão da 
estrutura completa.
73PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Pasta Res
É a pasta de recursos (resources) da sua aplicação Android.
Pasta Drawable: na qual serão armazenados todos os 
recursos de imagens para o seu aplicativo.
Pasta Layout: na qual ficarão armazenados todos os 
layouts que você for utilizar em cada uma das activities (telas) de 
sua aplicação. Dentro dessa pasta, existe um arquivo chamado 
activity_principal.xml, sobre o qual falamos há pouco. Esse arquivo 
define o layout da única activity que você tem, porenquanto, em 
sua aplicação. A imagem a seguir mostra o conteúdo do referido 
arquivo. 
Imagem 1.50 – Arquivo de Layout – activity - principal.xml
Fonte: Elaborada pela autoria (2023).
 • Pasta mipmap: local em que são armazenados todos 
os ícones utilizados em sua aplicação. Existem duas 
subpastas: (1) ic_launcher e (2) ic_launcher_round, nas 
quais você pode verificar os arquivos.png utilizados na 
sua aplicação;
74 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
 • Pasta Values: contém três arquivos, como mostrado na 
imagem a seguir:
Imagem 1.51 – Arquivo de Layout – activity-principal.xml
Fonte: Elaborada pela autoria (2023).
Colors.xml: é recomendado que você registre aqui todas as 
cores que você pretende utilizar dentro da sua aplicação. Depois 
de registrado aqui nesse arquivo, a cor pode ser referenciada 
nos arquivos de layouts de cada uma das telas (activities) de sua 
aplicação. Uma vez que você queira alterar a cor que você utilizou 
em 10 layouts, por exemplo, é só trocar aqui, e os layouts que 
fazem referência a essa cor serão alterados automaticamente.
Strings.xml: tem o mesmo funcionamento que o arquivo 
de cores explicado anteriormente. Nele, devem ser registrados 
todos os textos estáticos da sua aplicação. Antes de definir um 
texto para um botão ou um texto para um label, defina-o aqui 
e use a referência aqui definida nos layouts. Uma vez que você 
mude aqui o texto do botão, como de “Alterar”, para “Editar”, por 
exemplo, todos os botões das telas que fazem referência a esse 
texto serão alterados automaticamente.
Styles.xml: define o estilo de sua aplicação. Aqui serão 
definidas características como tamanho, margem, cor de fundo 
etc. e da mesma forma que acontece com o arquivo de strings ou 
de cores, usa apenas a referência a esse estilo dentro dos layouts. 
Quando você alterar um parâmetro de margem ou cor de fundo 
75PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
aqui nesse arquivo, estará automaticamente alterando em todas 
as telas (activities) da sua aplicação que a eles fazem referência.
Agora que você entendeu um pouco como funciona a 
estrutura de uma aplicação Java-Android, vamos aos fundamentos 
da programação Java para dispositivos móveis.
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza de 
que você realmente entendeu o tema de estudo 
deste capítulo, vamos resumir tudo o que vimos. 
Você deve ter compreendido como funciona a 
estrutura da linguagem de programação Java 
para dispositivos móveis e seu método de 
organização do código. Espero que tenha gostado 
e compreendido tudo o que foi apresentado até 
aqui. Está pronto para continuar? Vamos juntos!
76 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Fundamentos do Java para 
mobile
OBJETIVO
Ao final deste capítulo, você será capaz de 
desenhar e organizar os elementos de um projeto 
de desenvolvimento de aplicativos para Android 
utilizando a linguagem Java Mobile. E então? 
Motivado para desenvolver essa competência? 
Avante!
Java: Um pouco de história
Era o ano de 1991, e a empresa Sun Microsystems 
trabalhava em um projeto chamado Green Project, cujo objetivo era 
desenvolver uma nova plataforma para a computação interativa. 
O resultado desse projeto foi a criação do Handheld StarSeven 
(cujo símbolo era “*7”). Tratava-se de um dispositivo com tela 
sensível ao toque (touchscreen) que controlava uma variedade 
de aparelhos domésticos. Pode-se dizer que consistia em um 
controle remoto sofisticado, com a capacidade de controlar uma 
grande variedade de aparelhos domésticos disponíveis na época, 
apresentando uma interface animada, em uma tela colorida de 
cinco polegadas, de LCD, sensível ao toque.
A linguagem de programação desenvolvida para o 
StarSeven foi denominada de linguagem Oak, que, em português, 
quer dizer “carvalho”. Ela tinha esse nome porque seria a árvore que 
um dos criadores da linguagem, James Gosling, via de sua janela. 
O projeto, no entanto, não deu muito certo e foi abandonado, 
pois, segundo alguns, estava bem à frente de seu tempo. Mas a 
linguagem Oak, por ser independente de plataforma, tornou-se de 
grande interesse para a Sun e foi retrabalhada, ajustada e moldada 
por uma equipe de engenheiros para se tornar, depois de dois ou 
três anos de pesquisa, a primeira versão da linguagem Java.
77PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Em 23 de maio de 1995, foi anunciado que a tecnologia 
Java estava disponível, na sua primeira versão, incorporada ao 
navegador Netscape.
A tecnologia Java
Quando se fala em tecnologia Java, faz-se referência à 
linguagem Java e à plataforma Java, sobre as quais aprenderemos 
a seguir.
A linguagem Java
A linguagem Java é uma linguagem de alto nível. A seguir, 
estão relacionadas algumas de suas características:
 • Orientada a objetos;
 • Para ambientes distribuídos: um sistema distribuído 
é um conjunto de computadores independentes 
que aparenta ao usuário ser um único computador. 
Exemplo: sistema de reserva de passagens aéreas, 
serviços da internet;
 • Arquitetura neutra e portável: é uma linguagem criada 
para rodar em várias plataformas;
 • Alto desempenho. Interpretada.
78 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
IMPORTANTE
Vale destacar aqui a diferença entre linguagens de 
programação interpretada e compilada.
Linguagem interpretada: é uma linguagem de 
programação em que o programa (código-fonte) 
é lido (executado) por um interpretador que o faz 
diretamente durante a execução, isto é, não existe 
o executável do programa. Exemplos: Java, C#, ASP.
Linguagem compilada: é uma linguagem de 
programação cujo código-fonte é traduzido pelo 
compilador, gerando um arquivo executável do 
programa (linguagem de máquina) que é acionado 
diretamente pelo processador ou pelo sistema 
operacional. Exemplos: C, C++, Delphi.
Esquema de execução de um programa 
em Java
Quando um programa em Java é escrito, ele é gravado 
em um arquivo texto com extensão .java. O compilador lê esse 
arquivo e o transforma em um arquivo .class. Esse processo é 
chamado de compilação. A JVM (Java virtual machine) lê (interpreta) 
esse arquivo .class e executa o programa. Tal processo é chamado 
de execução. A imagem a seguir ilustra o processo de execução de 
um programa Java.
Imagem 1.52 – Processo de execução de um programa Java
Fonte: Elaborada pela autoria (2023).
79PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Quando o programa .java é compilado, o resultado é um 
arquivo .class (bytecodes), que é a linguagem de máquina que a 
JVM consegue entender. Os bytecodes são então processados 
(interpretados) pela JVM, que executa o programa em seu 
computador. Caso o sistema operacional do seu computador 
seja o Windows, você vai precisar de uma JVM para o Windows. 
Caso você esteja trabalhando com um computador cujo sistema 
operacional seja o MacOS, precisará de uma JVM para esse SO, e 
assim por diante.
A plataforma Java
É o nome dado ao ambiente computacional que permite 
desenvolver aplicativos utilizando a linguagem Java. A grande 
vantagem dessa plataforma é que ela não está presa a um único 
sistema operacional ou a um único hardware. Atualmente, existem 
três plataformas Java principais:
 • Java SE (Java Standard Edition): permite desenvolver e 
implantar aplicações em desktops e servidores;
 • Java EE (Java Enterprise Edition): permite desenvolver 
aplicações corporativas e para a internet;
 • Java ME (Java Micro Edition): permite desenvolver 
aplicações para dispositivos móveis.
A seguir, entenderemos o passo a passo de como montar 
um ambiente de desenvolvimento Java para as aplicações que 
serão desenvolvidas em nossos estudos.
80 PROGRAMAÇÃO CODING (MOBILE)
U
ni
da
de
 1
Entendendo, instalando e 
configurando o ambiente Java
Antes de começar a programar em linguagem Java, é 
necessário preparar o ambiente de desenvolvimento, que é 
composto basicamente por: JDK9 e IDE10. O quadro a seguir 
esclarece e relembra alguns conceitos necessários

Mais conteúdos dessa disciplina