Buscar

Aplicativos Mobile Multiplataforma

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 196 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 196 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 196 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Continue navegando


Prévia do material em texto

Aplicativos Mobile Multiplataforma
W
BA
01
77
_v
1.
2
2/196
Aplicativos Mobile Multiplataforma
Autor: César Torres Fernandes
Como citar este documento: FERNANDES, César Torres. Aplicativos Mobile Multiplataforma. Valinhos, 
2016.
Sumário
Apresentação da Disciplina 03
Unidade 1: Introdução ao PhoneGap e Cordova 05
Unidade 2: Instalação PhoneGap e Cordova 28
Unidade 3: Estrutura do Projeto e Configurações 48
Unidade 4: Criando o Primeiro Aplicativo 70
2/196
Unidade 5: Funcionalidades dos Plugins 102
Unidade 6: Funcionalidades Extras 133
Unidade 7: Armazenamento Local 157
Unidade 8: Armazenamento Web 178
3/196
Apresentação da Disciplina
O desenvolvimento de aplicações web, 
ao longo dos anos, passou de simples 
páginas de conteúdo estático para sites da 
internet para aplicações muito mais ricas, 
dinâmicas e interativas, atendendo cada 
vez mais às necessidades e desejos dos 
seus usuários, sejam eles empresas sejam 
pessoas comuns. Esta transformação 
só foi possível de ser alcançada com o 
surgimento e o desenvolvimento de novas 
ferramentas, linguagens, plataformas e 
sistemas, mas também com os avanços nas 
áreas de telecomunicações e comunicação 
de dados.
Com o aparecimento dos dispositivos 
móveis, o mercado teve a necessidade de 
migrar muitas de suas aplicações ou criar 
novas aplicações para este novo ambiente, 
permitindo uma maior mobilidade de 
seus usuários. Grandes empresas, como 
Google e Apple, criaram suas lojas virtuais, 
permitindo a distribuição de aplicativos 
aos usuários de seus respectivos sistemas 
(Android e iOS). Mas e as aplicações 
web? As aplicações web não podem ser 
distribuídas e muito menos instaladas nos 
dispositivos móveis.
Felizmente, o mundo do desenvolvimento 
de aplicações mobile está se 
transformando rapidamente, e frameworks 
como PhoneGap e outros possibilitam 
a construção de aplicativos nativos 
para diversas plataformas, utilizando-
se do conhecimento e habilidades dos 
desenvolvedores web, sem a necessidade 
de se aprender novas linguagens de 
programação.
4/196
Esta disciplina tem o intuito de introduzi-
los ao estudo e desenvolvimento de 
aplicações mobile multiplataforma 
utilizando Apache Cordova e PhoneGap. 
Você verá os principais conceitos, a 
instalação, a estrutura de projeto e 
as configurações necessárias para o 
desenvolvimento de aplicações e também 
o uso das funcionalidades dos plugins e 
funcionalidades extras e o armazenamento 
local e web de dados. Prepare-se para 
desenvolver suas competências no 
desenvolvimento mobile multiplataforma.
5/196
Unidade 1
Introdução ao PhoneGap e Cordova
Objetivos
1. Compreender os aspectos históricos 
que culminaram no surgimento do 
framework PhoneGap e do Apache 
Cordova.
2. Compreender as vantagens 
e desvantagens de se utilizar 
aplicações mobile multiplataforma.
3. Compreender os principais conceitos 
relacionados ao PhoneGap e Apache 
Cordova.
Unidade 1 • Introdução ao PhoneGap e Cordova6/196
Introdução 
Durante a década de 1990 e início dos anos 
2000, vimos o aparecimento de diversas 
plataformas de desenvolvimento para 
aplicações desktop, como Windows, Mac, 
Linux/Unix e suas diversas distribuições. 
Nesta época, o desenvolvimento de 
produtos de software que fossem 
executados em todas estas plataformas era 
extremamente difícil, pois cada plataforma 
possuía características específicas de 
funcionamento. O resultado dessa 
fragmentação de plataformas forçou 
empresas a criarem soluções internas 
através da construção de estruturas em 
linguagens que permitissem um maior grau 
de abstração (por exemplo, C++) e também 
da abstração de módulos específicos do 
sistema operacional.
Com o surgimento da linguagem de 
programação orientada a objetos Java, 
criada pela empresa Sun Microsystem, o 
desenvolvimento de aplicações desktop 
e para outros ambientes tornou-se 
mais simples, pois esta linguagem é 
compilada para um formato conhecido 
como bytecode, sendo executado por 
uma máquina virtual Java, utilizando a 
estratégia de “escreva uma vez, execute em 
qualquer lugar”, promovendo, assim, uma 
independência de plataforma. 
Durante os anos 2000, com o crescente 
desenvolvimento da internet, ocorreu uma 
outra forma de fragmentação, envolvendo 
os navegadores (browsers). Neste período, 
surgiram diversos navegadores, e cada 
um possui um conjunto de características 
Unidade 1 • Introdução ao PhoneGap e Cordova7/196
próprias, que fizeram com que aplicações 
tivessem problemas aos serem executadas 
em um determinado tipo de navegador. 
Isso ocorreu, em grande parte, porque 
os fabricantes, ao desenvolverem 
seus navegadores, não seguiam as 
especificações definidas pelo World Wide 
Web Consortium (W3C). A solução adotada 
pelos desenvolvedores de aplicações 
para a web para esta fragmentação foi a 
adoção de trechos de código que verificam 
em qual navegador serão executados e, 
assim, ativam ou desativam determinadas 
funções.
Com o surgimento dos dispositivos móveis, 
ocorreu uma nova fragmentação de 
plataformas, pois os fabricantes desses 
dispositivos criaram ou se utilizaram de 
diversos tipos de sistemas operacionais, 
tentando atender às diversas necessidades 
de aplicações e tecnologias que podiam 
ser utilizadas pelos usuários. Alguns 
fabricantes criaram suas próprias lojas 
virtuais (Google e Apple, por exemplo) 
para distribuição oficial de aplicações 
desenvolvidas especificamente para as 
suas plataformas. O desenvolvimento de 
aplicações para o ambiente mobile exige o 
uso específico de linguagens, ferramentas 
e ambiente para a sua construção, não 
permitindo o desenvolvimento de uma 
aplicação multiplataforma. Se uma 
aplicação foi desenvolvida para ambiente 
Android, será executada somente em 
dispositivos que tenham como sistema 
operacional o Android. Se uma aplicação 
Unidade 1 • Introdução ao PhoneGap e Cordova8/196
em consideração pelos desenvolvedores, 
tais como: orçamento, requisitos, público-
alvo, tipo de funcionalidades, benefícios, 
limitações e estratégias de projeto. Além 
disso, temos que entender as diferenças 
entre esses tipos de desenvolvimento, suas 
vantagens e desvantagens.
1. Aplicações Web
As aplicações web são sempre acessadas 
através de um navegador (não necessita 
de instalação) e podem ser utilizadas, 
normalmente, em todos os dispositivos 
móveis, sendo necessário uma conexão 
com a internet e se adaptar ao ambiente 
para uma correta visualização. Para o 
seu desenvolvimento, faz-se necessário 
foi desenvolvida para iOS, também será 
executada somente em dispositivos com o 
sistema operacional iOS. As aplicações web 
são acessadas através dos navegadores 
instalados nesses equipamentos.
Neste momento, você pode pensar: Será 
que todas as aplicações web atendem às 
necessidades dos seus usuários em todos 
os dispositivos da mesma maneira que no 
ambiente desktop? Ou será que eu preciso 
criar aplicações nativas para atender a 
essas necessidades? Ou ainda, será que 
eu preciso criar, se for possível, aplicações 
híbridas?
As respostas a estes questionamentos 
podem ser dadas quando entendermos 
que as soluções dependem de um grande 
número de variáveis, que devem ser levadas 
Unidade 1 • Introdução ao PhoneGap e Cordova9/196
somente o uso de linguagens para 
desenvolvimento web. Infelizmente, há 
desvantagens, pois têm acesso limitado 
aos recursos de hardware, não suportam o 
modo off-line e nem o modo full screen. As 
aplicações web são desenvolvidas quando 
é preciso operar em diversas plataformas, 
quando atendem a todos os requisitos, não 
necessitam de recursos específicos das 
plataformas e devem ser disponibilizadas 
de forma rápida no mercado.
2. Aplicações Nativas
As aplicações nativas são desenvolvidas 
para serem executadas em um sistema 
operacional específico de um determinado 
dispositivo móvel e devem ser instaladas 
permitindo a utilização de todas as 
potencialidades presentes na plataforma e 
no dispositivo. Esse tipo de desenvolvimento 
causa o aumento da complexidadee dos 
custos envolvidos, pois não permite a 
reutilização de código entre plataformas. 
Dessa forma, caso seja necessário o 
desenvolvimento de uma aplicação 
multiplataforma, isso exigirá uma equipe 
formada por pessoas especializadas em 
cada uma das plataformas de destino. 
Basicamente, as aplicações nativas são 
desenvolvidas quando existem requisitos 
específicos de desempenho, usabilidade, 
quantidades elevadas de animações, 
utilização de APIs específicas dos dispositivos 
ou quando os usuários são específicos de 
uma determinada plataforma.
Unidade 1 • Introdução ao PhoneGap e Cordova10/196
3. Aplicações Híbridas
As aplicações híbridas combinam as 
características das duas abordagens 
anteriores, a nativa e a web. A parte 
nativa faz uso de APIs da plataforma 
para criar uma base entre o navegador 
e as APIs do dispositivo, permitindo 
o aproveitamento de quase todos os 
recursos disponíveis nos dispositivos mais 
modernos. Este desenvolvimento pode 
ser realizado por codificação, exigindo 
assim o encapsulamento da componente 
web, ou com o uso de frameworks, que 
simplificam o processo, exigindo apenas 
o desenvolvimento da componente 
web. Para a parte da componente web, 
exige-se somente o uso de HTML5, 
CSS3 e JavaScript, que será empacotado 
e instalado no dispositivo, fazendo 
com que pareça uma aplicação nativa. 
Esta característica permite o melhor 
aproveitamento das duas abordagens 
anteriores, permitindo a criação de 
aplicações que podem fazer uso de 
alguns recursos dos dispositivos, sendo 
desenvolvidas apenas uma vez e tendo um 
Para saber mais
A sigla API significa “Application Programming 
Interface”, que significa, em português 
“Interface de Programação de Aplicações”. É um 
conjunto de rotinas e padrões de programação 
para acesso a um aplicativo de software ou 
plataforma baseado na Web. 
Unidade 1 • Introdução ao PhoneGap e Cordova11/196
ciclo de desenvolvimento mais curto. O 
framework mais popular utilizado para este 
tipo de aplicação é o PhoneGap, do Apache 
Cordova.
4. O PhoneGap
O framework PhoneGap apareceu 
pela primeira vez no San Francisco 
iPhoneDevCamp, em agosto de 2008. Ele 
foi desenvolvido pela empresa Nitobi como 
uma forma de simplificar o processo e o 
desenvolvimento de aplicações mobile 
multiplataforma. O projeto inicial foi criado 
para permitir que uma aplicação web fosse 
reconhecida como uma aplicação nativa 
para o iPhone. Logo depois, ampliou-se 
o projeto para adicionar suporte para as 
plataformas Android e BlackBerry. Os 
desenvolvedores da Nitobi adicionaram 
suporte para novas plataformas de 
hardware e trabalharam para, mesmo 
com todos os avanços, garantir a paridade 
de funcionalidade de todas as APIs para 
todas as plataformas. Durante este 
período recebeu contribuições de diversas 
empresas, como a IBM. Em 2011, a 
empresa Nitobi doou o projeto PhoneGap 
para a Fundação Apache.
A empresa Adobe System adquiriu a 
Nitobi logo após esta ter feito a doação 
para a Fundação Apache. A Adobe incluiu 
o projeto PhoneGap (Adobe PhoneGap) 
como parte integrante de seu portfólio 
de produtos, possibilitando aos antigos 
desenvolvedores da Nitobi uma estrutura 
Unidade 1 • Introdução ao PhoneGap e Cordova12/196
de desenvolvimento muito melhor e uma 
integração com outros produtos fornecidos 
pela Adobe.
O framework PhoneGap, doado à Fundação 
Apache, foi incluído em seu portfólio de 
projetos como Apache Callback, sendo 
posteriormente renomeado para Apache 
DeviceReady e, finalmente como Apache 
Cordova. Este projeto é o que recebe 
o maior número de atualizações e de 
liberações dentro da Fundação Apache.
O framework PhoneGap mantém toda a 
compatibilidade com o Apache Cordova, 
incluindo apenas algumas funcionalidades 
extras, como, por exemplo, o PhoneGap 
Desktop, aplicativo para criar e servir 
aplicativos PhoneGap, o PhoneGap 
Developer App, aplicativo que permite 
testar sua aplicação no celular sem a 
necessidade de empacotar e instalar, e o 
PhoneGap Build, que é um serviço remoto 
que permite criar a aplicação final sem 
a infraestrutura de seu computador. Já o 
Apache Cordova, para criar a aplicação 
final, utiliza uma interface de linha de 
comando (CLI).
5. O Apache Cordova
O Apache Cordova é um framework 
open-source para o desenvolvimento 
mobile multiplataforma que permite a 
combinação de tecnologias nativas e o uso 
de tecnologias para desenvolvimento web 
padronizadas, como o HTML5, o CSS3 e o 
JavaScript. Isso permite que aplicações web 
possam realizar tarefas além do permitido 
Unidade 1 • Introdução ao PhoneGap e Cordova13/196
pelos navegadores. Para garantir essa 
característica, o Apache Cordova implementa 
um conjunto de APIs que ampliam as 
capacidades de funcionalidades nativas para 
uma aplicação web dentro de um dispositivo 
móvel.
O Apache Cordova possui os seguintes 
componentes principais: 
• Um repositório que conterá o código-
fonte da aplicação web para cada 
plataforma de destino.
• Um conjunto de APIs que 
proporcionará a uma aplicação web 
o acesso aos recursos do dispositivo 
e também de APIs que não são 
suportados pelos navegadores.
• Um conjunto de ferramentas para 
gerenciar todo o processo de 
criação de projetos de aplicativos, 
gerenciamentos de plugins e a 
construção de aplicativos nativos 
com o uso de SDKs nativos e, ainda, 
auxiliar nos testes destas aplicações 
em simuladores e emuladores de 
dispositivos móveis.
Para construir um aplicativo 
multiplataforma utilizando o Apache 
Para saber mais
a sigla SDK significa “Software Development Kit”. É 
um conjunto de ferramentas de desenvolvimento 
que permite a criação de aplicativos, frameworks e 
outros tipos de software.
Unidade 1 • Introdução ao PhoneGap e Cordova14/196
Cordova, os passos básicos que você 
realizará serão: criar um projeto de uma 
aplicação web, utilizando HTML5, CSS3 e 
JavaScript, empacotar esse projeto para 
um contêiner nativo, testar e depurar 
este aplicativo, e não sendo encontradas 
restrições em relação a qualidade, distribuir 
aos usuários através de lojas virtuais de 
aplicativos (App Stores).
Ao ser instalado em um dispositivo 
móvel, a aplicação multiplataforma será 
tratada como uma aplicação nativa. 
Quando iniciar o aplicativo, a interface 
de usuário do aplicativo será aberta e irá 
carregar a página inicial do aplicativo web, 
normalmente uma página index.html e, 
em seguida, passará o controle para a Web 
View, permitindo que o usuário interaja 
com a aplicação web, tendo a possibilidade 
de, através de links ou de código JavaScript, 
carregar outros conteúdos que estejam 
dentro dos arquivos de recursos, que foram 
empacotados juntos com a aplicação ou 
até pela rede de computadores ou internet 
que contenha uma aplicação servidora.
Uma aplicação web sendo executada 
dentro do contêiner da aplicação nativa 
funcionará de maneira igual ao ser 
executada pelo navegador do dispositivo 
Para saber mais
Uma Web View é um componente nativo utilizado 
para processar o conteúdo web, como, por 
exemplo, páginas HTML, dentro de uma janela do 
aplicativo nativo ou tela.
Unidade 1 • Introdução ao PhoneGap e Cordova15/196
móvel. Toda a lógica da aplicação 
necessária para o seu funcionamento, a 
abertura de novas páginas, a realização 
de cálculos, enviar ou recuperar dados de 
servidores web, entre outras coisas, são 
realizadas com o uso de códigos JavaScript 
incorporados dentro dos arquivos 
utilizados pela aplicação web.
Em relação à v interface do usuário, 
tudo aquilo que um desenvolvedor pode 
fazer em uma aplicação web hospedada 
em um servidor (como configuração de 
fontes, linhas, espaçamentos, coloração 
utilizando Cascading Style Sheets – CSS3 
ou diretamente nas páginas HTML) pode 
ser feito no desenvolvimento de aplicações 
multiplataforma, utilizando Apache 
Cordova.
O Apache Cordova, para permitir que uma 
aplicação web possa acessar aplicativos, 
hardware e APIs nativas, fornece um 
conjunto de APIs em JavaScript. Essas APIs 
foram implementadasem duas partes: 
uma biblioteca JavaScript que expõe as 
capacidades nativas para a aplicação 
web e o código nativo correspondente em 
execução no contêiner que implementa 
a parte da API nativa. Cada uma das 
APIs, presentes no Apache Cordova, 
tem sido dividida em plugins separados, 
permitindo o gerenciamento de plugins 
no projeto (adição e remoção) de acordo 
com as necessidades do projeto a ser 
desenvolvido. Quando uma aplicação 
possui a implementação de um recurso que 
usa uma dessas APIs do Apache Cordova, o 
Unidade 1 • Introdução ao PhoneGap e Cordova16/196
aplicativo realiza a chamada a API usando 
JavaScript. Uma camada especial dentro 
do aplicativo interpreta a chamada API do 
Apache Cordova na API nativa apropriada 
para a função específica que foi solicitada.
O Apache Cordova fornece as seguintes 
APIs:
• Accelerometer;
• BatteryStatus;
• Camera;
• Capture;
• Compass;
• Connection;
• Contacts;
• Device;
• Events;
• File;
• File Transfer;
• Geolocation;
• Globalization;
• InAppBrowser;
• Media;
• Notification;
• Splashscreen;
• Status Bar;
• Storage;
• Vibration.
Você verá mais detalhes sobre estas APIs 
quando formos tratar, especificamente, das 
funcionalidades e o seu uso em aplicações 
multiplataforma.
Unidade 1 • Introdução ao PhoneGap e Cordova17/196
Glossário
Bytecode: Forma intermediária de código, resultado da compilação de programa de 
computador escrito em linguagem Java e que é interpretada pelas Máquinas Virtuais Java.
Máquina Virtual Java: É um programa responsável por carregar, executar e gerenciar os 
aplicativos Java, convertendo os bytecodes em código executável de máquina. 
Cascading Style Sheets (CSS): É uma linguagem de folhas de estilo que propicia a separação 
entre formato e o conteúdo de um documento escrito em uma linguagem de marcação, como 
HTML e XML.
Questão
reflexão
?
para
18/196
Reflita sobre o conceito de desenvolvimento de 
aplicações híbridas e sugira uma ou mais situações em 
que este tipo de abordagem pode ser utilizado.
19/196
Considerações Finais
• Tivemos a conceituação de aplicações nativas, web e híbridas.
• Tivemos uma visão histórica do Adobe PhoneGap e Apache Cordova.
• Tivemos uma visão básica da estrutura e funcionamento das aplicações 
híbridas multiplataforma, utilizando Adobe PhoneGap e Apache Cordova.
• Tivemos uma primeira visão da quantidade de APIs que podem ser 
utilizadas em aplicações multiplataforma.
Unidade 1 • Introdução ao PhoneGap e Cordova20/196
Referências
GATOL, R.; PATEL, Y. Beginning PhoneGap: Mobile Web Framework for JavaScript and HTML5. 
Editora Apress, 2012.
LOPES, S. Aplicações Mobile Híbridas com Cordova e PhoneGap. Editora Casa do Código, 
2016. (Série Caelum).
LUNNY, A. PhoneGap Beginner’s Guide. Editora Packt Publishing, 2011.
MYER, T. Beginning PhoneGap. Editora John Wesley & Sons, 2012.
WARGO, J. M. Apache Cordova 3 Programming. Editora Addison-Wesley, 2013. (Mobile 
Programming Series).
21/196
1. O que são aplicações nativas para dispositivos móveis?
a) São aplicações especialmente concebidas para serem executadas em um sistema 
operacional de um determinado dispositivo móvel e que não necessitam ser instaladas.
b) São aplicações especialmente concebidas para serem executadas em um sistema 
operacional de um determinado dispositivo móvel e que necessitam ser instaladas.
c) São aplicações concebidas para serem executadas em mais de um sistema operacional de 
diversos dispositivos móveis e que necessitam ser instaladas.
d) São aplicações que necessitam do conhecimento de linguagens de programação web para 
serem desenvolvidas.
e) São aplicações que necessitam do conhecimento de linguagens de programação web para 
serem desenvolvidas e de linguagens específicas dos dispositivos.
Questão 1
22/196
2. O que são aplicações web para dispositivos móveis?
a) São aplicações que exigem o conhecimento de linguagens de programação como Java, 
Swift, entre outras.
b) São aplicações que exigem a sua instalação no dispositivo para serem utilizadas.
c) São aplicações que exigem o uso de frameworks específicos para desenvolvimento 
multiplataforma.
d) São aplicações que se utilizam de navegadores e devem ser instaladas no dispositivo.
e) São aplicações que se utilizam de navegadores e do acesso à Internet e podem, 
normalmente, ser utilizadas em todos os dispositivos móveis.
Questão 2
23/196
3. O que são aplicações híbridas para dispositivos móveis?
a) São aplicações que exigem um alto conhecimento de Java por parte do desenvolvedor.
b) São aplicações nativas que não necessitam de instalação no dispositivo.
c) São aplicações que combinam o desenvolvimento nativo com a tecnologia web.
d) São aplicações web que necessitam de instalação no dispositivo.
e) São aplicações que dependem do conhecimento único da linguagem de marcação XML.
Questão 3
24/196
4. Para desenvolver aplicações mobile multiplataforma, é suficiente e 
necessário conhecer quais linguagens:
a) HTML, Java, CSS.
b) HTML5, CSS3, Java.
c) HTML5, CSS3, JavaScript.
d) JavaScript, Java, Swift.
e) Java, CSS3, HTML5.
Questão 4
25/196
5. Para que servem o PhoneGap e o Apache Cordova?
a) Servem como framework para auxiliar no processo de criação de aplicações mobile 
multiplataforma.
b) Servem como framework para auxiliar no processo de criação de aplicações mobile nativas.
c) Servem como framework para o desenvolvimento de aplicações nativas que não 
necessitam de instalação no dispositivo móvel.
d) Servem como framework para o desenvolvimento de aplicações cliente-servidor.
e) Servem como framework para o desenvolvimento de aplicações desktop.
Questão 5
26/196
Gabarito
1. Resposta: B.
Todas as aplicações nativas são 
desenvolvidas para fazerem uso de todos 
os recursos de hardware e do sistema 
operacional utilizado pelo dispositivo 
móvel.
2. Resposta: E.
As aplicações web podem ser utilizadas 
pelos navegadores instalados nos 
dispositivos móveis da mesma maneira que 
seriam utilizados pelos navegadores em um 
ambiente desktop, sem a necessidade de 
instalação.
3. Resposta: C.
As aplicações híbridas possuem a 
vantagem de combinar o melhor das duas 
abordagens: desenvolvimento nativo e 
desenvolvimento web.
4. Resposta: C.
Para o desenvolvimento de aplicações 
multiplataforma, é suficiente o 
conhecimento da linguagem de marcação 
HTML5, da linguagem de folha de estilos 
CSS3 e da linguagem de programação 
interpretada JavaScript.
27/196
Gabarito
5. Resposta: A.
O Adobe PhoneGap e o Apache Cordova 
servem para auxiliar na criação de 
aplicações multiplataforma, pois 
empacotam a aplicação web, que assim 
pode ser instalada e acessar recursos como 
se fosse uma aplicação nativa
28/196
Unidade 2
Instalação PhoneGap e Cordova
Objetivos
1. Localizar e instalar o Apache Cordova.
2. Localizar e instalar o Adobe 
PhoneGap. 
3. Compreender as diferenças entre as 
plataformas.
Unidade 2 • Instalação PhoneGap e Cordova29/196
Introdução
Para realizar a instalação do Apache 
Cordova e do Adobe PhoneGap é 
necessário que você entenda que existem 
duas formas de desenvolvimento possíveis: 
a multiplataforma e a centrada em 
plataforma: 
• Multiplataforma: utilize esta forma de 
desenvolvimento quando você quiser 
construir projetos para diversas 
plataformas de uma vez, abstraindo 
muitas das funcionalidades de shell 
scripts de baixo nível, e também 
fornecer uma interface comum para 
aplicar plugins para o seu aplicativo. 
A CLI (Command Line Interface) 
copia um conjunto comum de 
recursos da Web em subdiretórios 
para cada plataforma móvel, faz 
todas as alterações de configuração 
necessárias para cada uma e executa 
scripts de criação para gerar binários 
do aplicativo;
• Centrada em plataforma: utilize 
esta forma de desenvolvimento 
quando você quiser se concentrar 
em construir um aplicativo para uma 
plataforma única e precisa ser capaz 
de modificá-lo a um nível mais baixo, 
dentro do SDK. Essa forma se baseia 
em um conjuntode shell scripts de 
baixo nível, que são adaptados para 
cada plataforma suportada e um 
utilitário Plugman separado, que 
permite que você aplique plugins 
ao projeto. Você pode usar esta 
forma de desenvolvimento para criar 
Unidade 2 • Instalação PhoneGap e Cordova30/196
aplicativos multiplataforma, mas, 
pela falta de uma ferramenta de 
alto nível, você terá mais ciclos de 
compilação separada e modificações 
de plugin para cada plataforma.
Caso tenha desenvolvido um projeto 
multiplataforma, você tem a opção de 
mudar para um desenvolvimento centrado 
na plataforma, quando precisar de maior 
controle do SDK. Importante salientar que, 
ao realizar esta mudança, não há como 
retornar à forma de desenvolvimento 
multiplataforma (CLI).
As plataformas Android, iOS e Windows 
Phone serão o foco de nosso tema por 
serem as mais utilizadas nos dispositivos 
móveis. Para cada uma dessas plataformas, 
existem necessidades específicas – de 
hardware, de software, entre outras – 
que devem ser levadas em consideração 
para a criação de um ambiente de 
desenvolvimento adequado para 
aplicações híbridas multiplataforma.
Para o Android:
• Instalar o JDK 7 ou superior.
• Instalar o Android SDK ou o Android 
Para saber mais
O utilitário Plugman é um gerenciador de 
plugin que deve ser instalado quando do 
desenvolvimento centrado em plataforma. Para 
instalar o Plugman, utilize o comando: npm install 
-g plugman <enter>.
Unidade 2 • Instalação PhoneGap e Cordova31/196
Studio (já possui o Android SDK).
• Para testar, você pode utilizar 
os emuladores de dispositivos 
disponíveis no SDK ou instalar 
emuladores de terceiros e também 
ter dispositivos reais.
• Para publicar, será necessária uma 
conta de desenvolvedor paga.
Para o iOS:
• Possuir um Mac com sistema 
operacional Mac OS X versão 10.9 ou 
superior.
• Instalar o Xcode 6.0 ou superior, que 
inclui o iOS SDK 8.
• Para testar, você pode utilizar os 
emuladores disponíveis pelo iOS 
SDK e Xcode e também possuir 
dispositivos reais com no mínimo o 
iOS 8.
• Para publicar, será necessário o Xcode 
e uma conta de desenvolvedor paga.
Para Windows:
• Possuir um computador com sistema 
operacional Windows 8 Pro, Windows 
8.1 Pro ou Windows 10 Pro, de 64 
bits e com processadores Intel com 
suporte a Hyper-V.
• Instalar o Visual Studio 2015 
ou superior com as opções de 
ferramentas e SDKs selecionadas.
• Instalar o Windows Phone 8 SDK.
• Para testar, você pode utilizar os 
emuladores presentes no Visual 
Studio e também ter dispositivos 
reais que devem ser registrados na 
Microsoft.
Unidade 2 • Instalação PhoneGap e Cordova32/196
• Para publicar, será necessária uma 
conta de desenvolvedor paga.
1. Instalação do Apache 
Cordova
O Cordova CLI é distribuído como um 
pacote do npm. Para instalar o Cordova CLI, 
você precisará:
1. Baixar o Node.js de acordo 
com a sua plataforma de 
desenvolvimento. 
2. Realizar o procedimento de 
instalação do Node.js. No final da 
instalação, você deverá ser capaz 
de invocá-lo pela linha de comando 
em um terminal. Abra um terminal e 
digite:
• No Windows, OS X e Linux:
node –v <enter> 
Para saber mais
O npm (Node Package Manager) é um repositório 
on-line para publicação de projetos de código 
aberto e também um utilitário de linha de comando 
que interage com este repositório on-line, para 
auxiliar na instalação de pacotes, gerenciamento 
de versão e gerenciamento de dependências.
Para saber mais
Node.js é uma poderosa plataforma que permite 
escrever aplicações web escaláveis utilizando 
JavaScript no lado servidor.
Unidade 2 • Instalação PhoneGap e Cordova33/196
Este comando confirmará a versão 
instalada do Node.js.
3. Instalar o Cordova CLI utilizando o 
módulo utilitário npm do Node.js. Em 
um terminal, digite:
• No Windows:
npm install –g cordova <enter>
• No OS X e Linux:
sudo npm install –g cordova <enter>
No OS X e no Linux, utiliza-se sudo para ter 
acesso a diretórios com permissão restrita. 
Caso você tenha acesso com permissão de 
gravação ao diretório de instalação, não se 
faz necessário o uso do prefixo sudo para 
executar o comando npm.
O flag –g sinaliza ao npm para instalar o 
Cordova globalmente. Caso contrário, 
ele será instalado no subdiretório node_
modules do diretório atual de trabalho.
No final da instalação, você deverá ser 
capaz de invocá-lo pela linha de comando 
em um terminal. Abra um terminal e digite:
• No Windows, OS X e Linux:
cordova <enter>
Este comando lhe mostrará uma visão geral 
dos comandos e opções que podem ser 
utilizadas pelo Cordova.
2. Instalação do Adobe 
PhoneGap
O Adobe PhoneGap, como você 
verá, disponibiliza duas formas de 
Unidade 2 • Instalação PhoneGap e Cordova34/196
desenvolvimento: uma pelo PhoneGap 
Desktop e outra pelo PhoneGap CLI.
Instalação do Adobe PhoneGap 
CLI
 O PhoneGap CLI fornece uma interface 
de linha de comando para criar aplicações 
PhoneGap como uma alternativa ao uso 
do PhoneGap Desktop. O PhoneGap CLI 
possui alguns recursos adicionais sobre 
o PhoneGap Desktop para construção, 
execução e empacotamento das aplicações 
PhoneGap em múltiplas plataformas.
Para instalar o PhoneGap CLI, você 
precisará:
1. Baixar o Node.js (<https://nodejs.org/
en/download/>) de acordo com a sua 
plataforma de desenvolvimento;
2. Realizar o procedimento de instalação 
do Node.js. No final da instalação, 
você deverá ser capaz de invocá-
lo pela linha de comando em um 
terminal. Abra um terminal e digite:
• No Windows e OS X:
node –v <enter> 
Este comando confirmará a versão 
instalada do Node.js.
3. Instalar o PhoneGap CLI utilizando o 
módulo utilitário npm do Node.js. Em 
um terminal, digite:
• No Windows:
npm install -g PhoneGap@latest 
<enter>
https://nodejs.org/en/download/
https://nodejs.org/en/download/
Unidade 2 • Instalação PhoneGap e Cordova35/196
• No OS X:
sudo npm install -g PhoneGap@
latest <enter>
No OS X e no Linux, utiliza-se sudo para ter 
acesso a diretórios com permissão restrita. 
Caso você tenha acesso com permissão de 
gravação ao diretório de instalação, não se 
faz necessário o uso do prefixo sudo para 
executar o comando npm.
O flag –g sinaliza ao npm para instalar o 
PhoneGap CLI globalmente. Caso contrário, 
ele será instalado no subdiretório node_
modules do diretório atual de trabalho.
No final da instalação, você deverá ser 
capaz de invocá-lo pela linha de comando 
em um terminal. Abra um terminal e digite:
• No Windows e OS X:
PhoneGap <enter>
Este comando lhe mostrará uma visão 
geral dos comandos e opções que podem 
ser utilizadas pelo PhoneGap CLI. 
Instalação do Adobe PhoneGap 
Desktop
O PhoneGap Desktop fornece uma 
interface de arrastar e soltar para criar 
aplicações PhoneGap, sendo uma 
alternativa ao uso do PhoneGap CLI.
Antes de instalar o PhoneGap Desktop, 
devemos escolher o sistema operacional: 
Mac OS X ou Windows.
Unidade 2 • Instalação PhoneGap e Cordova36/196
Instalação no Windows:
1. Baixar a última versão do instalador 
para Windows (<http://PhoneGap.
com/products/>).
2. Clicar duas vezes sobre o arquivo que 
foi baixado para executar o instalador. 
Aparecerá a tela inicial do instalador. 
Clicar em Próximo.
3. Ao realizar isso, você verá o contrato 
de licença solicitando o seu aceite. 
Aceitar o contrato de licença.
4. Selecionar o destino desejado para 
o aplicativo (caso seja necessário) e 
clicar em Próximo.
5. Selecionar o local desejado para o 
atalho (caso seja necessário) e clicar 
em Próximo.
6. Clicar em Instalar para iniciar a 
instalação.
7. Clicar em Concluir para fechar o 
assistente de configuração.
8. Abrir o aplicativo PhoneGap Desktop.
Instalação no Mac OS X:
1. Baixar a última versão do instalador 
para Mac OS X (<http://PhoneGap.
com/products/>).
2. Clicar duas vezes sobre o arquivo que 
foi baixado para executar o instalador. 
Ao realizar isso, você verá o contrato 
de licença solicitando o seu aceite. 
Aceitar o contrato de licença.
3. Arrastar e soltar o aplicativo na pasta 
deAplicativos do seu Mac.
4. Abrir o aplicativo PhoneGap Desktop.
http://PhoneGap.com/products/
http://PhoneGap.com/products/
http://PhoneGap.com/products/
http://PhoneGap.com/products/
Unidade 2 • Instalação PhoneGap e Cordova37/196
Além da instalação do PhoneGap CLI ou do 
PhoneGap Desktop, você deverá instalar o 
PhoneGap Developer App.
Instalação do PhoneGap 
Developer App
O PhoneGap Developer App é um aplicativo 
móvel que funciona em dispositivos 
e permite-lhe visualizar e testar os 
aplicativos móveis PhoneGap através das 
plataformas de maneira rápida e com 
configuração mínima. Fornece acesso às 
APIs do núcleo PhoneGap, proporcionando 
o acesso imediato aos recursos nativos do 
dispositivo sem a necessidade de instalar 
qualquer plugin ou compilação local.
1. Localizar o aplicativo gratuito 
PhoneGap Developer App e instalá-lo 
em seu dispositivo móvel.
2. Toque no ícone do aplicativo 
PhoneGap Developer de sua tela para 
abri-lo.
Unidade 2 • Instalação PhoneGap e Cordova38/196
Glossário
Sudo: É um comando que permite a usuários comuns obter privilégios de outro usuário, em 
geral do superusuário.
Shell script: É uma linguagem de script utilizada por vários sistemas operacionais, possuindo 
diversos dialetos, que dependem do interpretador de comandos utilizado. 
Command Line Interface (CLI): É uma interface do usuário para um sistema operacional ou 
para uma aplicação, que permite que você insira comandos em uma determinada linha para ser 
executada.
Questão
reflexão
?
para
39/196
Em relação à plataforma iOS, será que é possível 
desenvolver aplicações sem um computador Mac?
40/196
Considerações Finais
• Tivemos a conceituação desenvolvimento multiplataforma e 
centrado na plataforma.
• Tivemos uma visão básica dos requisitos mínimos necessários para 
desenvolver aplicações para as plataformas Android, iOS e Windows.
• Tivemos uma visão básica do processo de instalação do Apache 
Cordova.
• Tivemos uma visão básica do processo de instalação do Adobe 
PhoneGap.
Unidade 2 • Instalação PhoneGap e Cordova41/196
Referências 
ADOBE PhoneGap. Disponível em: <http://PhoneGap.com/>. Acesso em: 14 jul. 2016.
APACHE Cordova. Disponível em: <https://cordova.apache.org/>. Acesso em: 14 jul. 2016.
GATOL, R.; PATEL, Y. Beginning PhoneGap: Mobile Web Framework for JavaScript and HTML5. 
Editora Apress, 2012.
LOPES, S. Aplicações Mobile Híbridas com Cordova e PhoneGap. Editora Casa do Código, 
2016. (Série Caelum).
LUNNY, A. PhoneGap Beginner’s Guide. Editora Packt Publishing, 2011.
MYER, T. Beginning PhoneGap. Editora John Wesley & Sons, 2012.
WARGO, J. M. Apache Cordova 3 Programming. Editora Addison-Wesley, 2013. (Mobile 
Programming Series).
http://PhoneGap.com
https://cordova.apache.org/
42/196
1. O que é desenvolvimento multiplataforma?
a) É o desenvolvimento de aplicações que podem ser instaladas em diversas plataformas.
b) É o desenvolvimento de aplicações que só podem ser utilizadas em uma única plataforma.
c) É o desenvolvimento de aplicações que dependem da linguagem Java.
d) É o desenvolvimento de aplicações que dependem da linguagem Objective-C.
e) É o desenvolvimento de aplicações que dependem do Visual Studio.
Questão 1
43/196
2. O que é desenvolvimento centrado em plataforma?
Questão 2
a) É o desenvolvimento de aplicações que podem ser instaladas em diversas plataformas.
b) É o desenvolvimento de aplicações que podem ser instaladas em uma única plataforma 
específica.
c) É o desenvolvimento de aplicações que dependem da linguagem Java.
d) É o desenvolvimento de aplicações que dependem da linguagem Objective-C.
e) É o desenvolvimento de aplicações que dependem do Visual Studio.
44/196
3. Qual o ambiente integrado de desenvolvimento utilizado para 
desenvolver aplicações para a plataforma iOS?
Questão 3
a) Visual Studio.
b) Notepad++.
c) Android SDK.
d) Xcode.
e) Android Studio.
45/196
4. Para instalar o PhoneGap CLI no Windows, qual é o comando necessário?
Questão 4
a) npm -g PhoneGap@latest <enter>.
b) npm PhoneGap@latest <enter>.
c) npm install -g PhoneGap@latest <enter>.
d) install -g PhoneGap@latest <enter>.
e) npm install -g cordova@latest <enter>.
46/196
5. Para instalar o Cordova CLI no Windows, qual é o comando necessário?
Questão 5
a) install –g cordova <enter>.
b) npm –g cordova <enter>.
c) npm install –g cordova <enter>.
d) npm install –g PhoneGap <enter>.
e) npm install -g PhoneGap@latest <enter>.
47/196
Gabarito
1. Resposta: A.
É uma forma de desenvolvimento que 
possibilita a construção de projetos para 
diversas plataformas de uma vez.
2. Resposta: B.
É uma forma de desenvolvimento que 
possibilita a construção de projetos para 
uma plataforma específica.
3. Resposta: D.
O IDE oficial para desenvolvimento para 
iOS é o Xcode.
4. Resposta: C.
Este comando instala a versão mais recente 
do PhoneGap CLI.
5. Resposta: C.
Este comando instala a versão do cordova 
CLI.
48/196
Unidade 3
Estrutura do Projeto e Configurações
Objetivos
1. Compreender a instalação e 
configuração de SDKs para cada 
plataforma.
2. Compreender a estrutura de 
projeto para o desenvolvimento 
de aplicações utilizando Adobe 
PhoneGap e Apache Cordova.
3. Compreender as semelhanças e 
diferenças entre o Adobe PhoneGap e 
o Apache Cordova.
Unidade 3 • Estrutura do Projeto e Configurações49/196
Introdução
Como você pode se lembrar, no Tema 02 
– Instalação PhoneGap e Cordova, havia 
uma pequena introdução em relação 
aos requisitos de hardware e software 
necessários para a instalação do Adobe 
PhoneGap e do Apache Cordova.
Para criar e executar aplicativos usando o 
Adobe PhoneGap e/ou Apache Cordova, 
você precisará instalar SDKs para cada 
plataforma que deseja utilizar. Uma 
maneira alternativa é o uso do navegador 
(browser), que não requer qualquer 
plataforma SDK.
Para verificar se você dispõe de condições 
que satisfaçam os requisitos para a 
construção de um projeto na plataforma, 
abra um terminal e digite:
cordova requirements <enter>
Este comando confirmará se todos os 
requisitos necessários estão instalados 
para o desenvolvimento. Caso não 
tenhamos os devidos requisitos, você 
deverá seguir os próximos itens para a 
devida instalação e configuração do SDKs 
para cada plataforma, antes de pensar na 
estrutura do projeto.
1. Plataforma Android
Independentemente se você for 
desenvolver de forma centrada na 
plataforma ou de forma multiplataforma, a 
instalação do Android SDK é obrigatória.
O Android SDK pode ser instalado nos 
sistemas operacionais Linux, OS X e 
Unidade 3 • Estrutura do Projeto e Configurações50/196
Windows. Caso você esteja realizando um 
desenvolvimento centrado na plataforma, 
existe um pacote Android para o Apache 
Cordova (cordova-android) que deverá ser 
instalado em seu projeto. 
Para determinar qual versão do pacote 
cordova-android está instalado em seu 
projeto de Cordova, abra um terminal no 
diretório que contém o seu projeto e digite 
o comando:
cordova platform ls <enter>
Instalação dos requisitos
a) Kit de desenvolvimento Java (JDK): 
• Instalar o kit de desenvolvimento 
Java (JDK) 7 ou posterior.
b) Android SDK: 
• Instalar o Android SDK stand-
alone ou o Android Studio, que 
possui, dentro de seu pacote de 
instalação, o Android SDK. Esta 
última opção pode ser útil caso 
você pretenda executar e depurar 
na plataforma Android.
c) Adicionar pacotes ao SDK:
• Depois de instalar o Android SDK, 
abra o Android SDK Manager e 
verifique se estão instalados os 
seguintes itens:
• Android Platform SDK para a 
sua versão de Android.
Unidade 3 • Estrutura do Projeto e Configurações51/196
• Android SDK build-tools versão 
19.1.0 ou superior.
• Android Support Repository 
(encontrado no item “Extras”).
d) Definir as variáveis de ambiente:
Esta etapa é necessária, pois o 
Cordova CLI e o PhoneGap CLI 
fazem uso de algumas variáveis de 
ambiente para poderem funcionar 
corretamente, sendo assim, devem 
ser atualizadas as seguintesvariáveis:
• Definir a variável de ambiente 
JAVA_HOME para o local de 
instalação do JDK.
• Definir ANDROID_HOME para o 
local de instalação do Android 
SDK.
• Adicionar na variável de ambiente 
PATH o local de instalação dos 
diretórios tools e platform-tools 
presentes no Android SDK. 
As formas de definição e adição de 
variáveis de ambiente diferem nos 
sistemas operacionais Mac/Linux e 
Windows.
e) Criar um emulador Android:
• Será necessário utilizar o 
AVD Manager, para criar um 
Dispositivo Virtual Android (AVD) 
para executar o seu aplicativo 
Cordova para a plataforma 
Android.
Unidade 3 • Estrutura do Projeto e Configurações52/196
Caso você esteja em um desenvolvimento 
centrado na plataforma, será necessário 
baixar o pacote cordova-android e, para 
adicionar plugins ao seu projeto, será 
necessário o uso do utilitário Plugman.
2. Plataforma iOS
Independentemente se você for 
desenvolver de forma centrada na 
plataforma ou de forma multiplataforma, 
a instalação do iOS 8 SDK ou superior é 
obrigatória.
Para começar a desenvolver, será 
necessário um computador Mac baseado 
em Intel com sistema operacional OS X 
versão 10.9 ou superior. Para testar, você 
pode utilizar o simulador de iOS instalado 
no iOS SDK e Xcode, mas também 
precisará de um dispositivo real, para 
verificar e validar todas as características 
do aplicativo antes de submetê-lo à 
Apple App Store. O dispositivo deve ter 
no mínimo o iOS 8 instalado, que é a 
versão mínima suportada pelo Cordova 
4.0.0; neste caso, entram nesta categoria 
os seguintes dispositivos: iPhone 4S, 
iPhone 5, iPhone 5C, iPhone 5S, iPhone 6, 
iPhone 6 Plus, iPhone 6S, iPhone 6S Plus, 
iPhone SE, iPad 2, iPad 3, iPad 4, iPad Air, 
iPad Air 2, iPad Pro, iPad Mini, iPad Mini 2, 
iPad Mini 3, iPod Touch 5ª geração e iPod 
Touch 6ª geração ou superior.
Unidade 3 • Estrutura do Projeto e Configurações53/196
Instalação dos requisitos
a) Xcode:
• Existem duas maneiras de baixar o 
Xcode:
• Procurar por Xcode no Mac App 
Store, realizar o download e a 
instalação.
• Procurar na Apple Developer, 
mas exige um registro (Apple 
ID) como desenvolvedor 
Apple. Realizar o download e a 
instalação.
Uma vez instalado o Xcode, 
várias ferramentas de linha 
de comando precisam estar 
habilitadas para poder executar 
o cordova. Dessa forma, abra 
um terminal e digite:
xcode-select –install
b) Ferramentas de implantação:
• A ferramenta ios-sim permite 
executar aplicativos iOS no 
simulador iOS. Para instalar, abra 
um terminal e digite:
npm install -g ios-sim
• A ferramenta ios-deploy permite 
executar aplicativos iOS no 
dispositivo iOS pela linha de 
comando. Para instalar, abra um 
terminal e digite:
npm install -g ios-deploy
Unidade 3 • Estrutura do Projeto e Configurações54/196
Caso você esteja em um desenvolvimento 
centrado na plataforma, será necessário 
baixar o pacote cordova-ios, e para 
adicionar plugins ao seu projeto, será 
necessário o uso do utilitário Plugman.
3. Plataforma Windows
Independentemente se você for 
desenvolver de forma centrada na 
plataforma ou de forma multiplataforma, 
a instalação do SDK é obrigatória para a 
construção e implantação de aplicativos 
cordova para Windows 8.1, Windows 
Phone 8.1 e Windows 10 Universal App 
Platform. 
A configuração do ambiente para a 
construção e implantação de aplicativos 
Cordova para o Windows Phone 8 será vista 
mais à frente.
Cordova WebViews podem ser executados 
no Windows utilizando o Internet Explorer 
11 (Windows 8.1 e Windows Phone 8.1) 
Para saber mais
O Windows 10 apresentou a Universal Windows 
Platform (UWP), que evoluiu o modelo do 
Windows Runtime e levou para o núcleo 
unificado do Windows 10. Como parte do 
núcleo, o UWP agora oferece uma plataforma de 
aplicativo comum disponível em cada dispositivo 
que executa o Windows 10.
Unidade 3 • Estrutura do Projeto e Configurações55/196
como seu mecanismo de renderização, e 
podem utilizar o seu depurador para testar 
qualquer conteúdo web, desde que não 
haja a invocação de APIs Cordova.
Requisitos
a) Para desenvolver aplicativos para a 
plataforma Windows, você precisa de:
• Um computador com Windows 
8.1, 32 ou 64 bits (Home, Pro ou 
Enterprise) com 4 GB de RAM no 
mínimo, junto com Visual Studio 
2015 ou Visual Studio 2013; 
• Para os emuladores do Windows 
Phone, um Windows 8.1 64 bits 
Professional ou superior e um 
processador que suporte Client 
Hiper-V e Second Level Address 
Translation (SLAT). 
b) Para desenvolver aplicativos para 
Windows 10:
• Um computador com Windows 8.1 
ou Windows 10, 32 bits ou 64 bits, 
junto com Visual Studio 2015 ou 
superior.
http://www.microsofttranslator.com/bv.aspx?from=en&to=pt&a=http%3A%2F%2Fwww.visualstudio.com%2Fdownloads
http://www.microsofttranslator.com/bv.aspx?from=en&to=pt&a=http%3A%2F%2Fwww.visualstudio.com%2Fdownloads
http://www.microsofttranslator.com/bv.aspx?from=en&to=pt&a=http%3A%2F%2Fwww.visualstudio.com%2Fdownloads
Unidade 3 • Estrutura do Projeto e Configurações56/196
Você deverá prestar atenção às versões do 
Windows, pois aplicativos Cordova para 
Windows possuem compatibilidade da 
versão menor para a maior, não ocorrendo 
Para saber mais
O Client Hiper-V é a mesma tecnologia de 
virtualização de computador que estava 
anteriormente disponível no Windows Server, 
fornecendo os mesmos recursos de virtualização 
como o Hyper-V no Windows Server 2012.
O Second Level Address Translation (SLAT) é 
uma tecnologia de virtualização assistida por 
hardware que torna possível evitar a sobrecarga 
associada a shadow page tables controladas por 
software.
o inverso. Dessa forma, aplicativos para 
Windows 10 não podem ser executados no 
Windows 8.1, mas o contrário é possível.
Caso você tenha um computador Mac e 
queira desenvolver aplicativos cordova 
para a plataforma Windows, existem 
duas opções: executar o Windows em um 
ambiente de máquina virtual (VMWare 
Fusion, por exemplo) ou criar um dual-
boot com uma partição Windows 8.1 (Boot 
Camp, por exemplo). 
Instalação dos requisitos
a) Instalar o Visual Studio:
• Pode ser qualquer edição do 
Visual Studio, desde que seja 
correspondente ao solicitado 
Unidade 3 • Estrutura do Projeto e Configurações57/196
no item Requisitos, descrito 
anteriormente. 
• Durante a instalação, selecionar 
todas as ferramentas e SDKs para 
as plataformas de Windows de 
destino (Windows 8.1, Windows 
Phone 8.1 e Windows 10 Universal 
App Platform).
Caso você esteja em um desenvolvimento 
centrado na plataforma, será necessário 
baixar o pacote cordova-windows e 
expandi-lo em um diretório vazio. Todos os 
arquivos batch importantes estão dentro 
do diretório package\bin.
4. Plataforma Windows Phone 8
Neste item, você verá como configurar 
seu ambiente de desenvolvimento SDK 
para implantar aplicativos cordova 
para dispositivos Windows Phone 
8. Independentemente se você for 
desenvolver de forma centrada na 
plataforma ou de forma multiplataforma, 
a instalação do Windows Phone SDK é 
obrigatória.
Para a plataforma Windows Phone 8, o 
Cordova WebView baseia-se no Internet 
Explorer 10 como seu mecanismo de 
renderização, e podem utilizar o seu 
depurador para testar qualquer conteúdo 
web, desde que não haja a invocação de 
APIs Cordova.
Unidade 3 • Estrutura do Projeto e Configurações58/196
Requisitos
a) Para desenvolver aplicativos para a 
plataforma Windows, você precisa:
• De um computador com Windows 
8 Pro, 64 bits, e um processador 
que suporte virtualização (habilitar 
na configuração da BIOS) e Second 
Level Address Translation (SLAT), 
com 6,5 GB de espaço livre em 
disco, no mínimo, e 4 GB de 
RAM, no mínimo. A versão Pro é 
necessária para rodar o emulador 
de dispositivo. 
• Instalar a versão mais recente do 
Windows Phone SDK.
• Instalar o Visual Studio 2012 
Update 2, para habilitar a 
implantação através da linha de 
comando com o Windows Phone 
8.0 SDK de 8.0.
Da mesma forma que no item anterior, caso 
você tenha um computador Mac e queiradesenvolver aplicativos cordova para a 
plataforma Windows, existem duas opções: 
executar o Windows em um ambiente 
de máquina virtual (VMWare Fusion, por 
exemplo) ou criar um dual-boot com uma 
partição Windows 8.1 (Boot Camp, por 
exemplo). 
Caso você esteja em um desenvolvimento 
centrado na plataforma, será necessário 
baixar o pacote cordova-wp8 e expandi-lo 
em um diretório vazio. Todos os arquivos 
Unidade 3 • Estrutura do Projeto e Configurações59/196
batch importantes estão dentro do 
diretório package\bin. Para gerenciar a 
adição ou remoção de plugins utilizar o 
Plugman.
5. Estrutura Básica de um 
Projeto 
Basicamente a estrutura de um projeto, 
independentemente de ter sido criado pelo 
Cordova CLI, pelo PhoneGap CLI ou pelo 
PhoneGap Desktop, conterá os seguintes 
arquivos e diretórios principais:
a) Arquivo config.xml: fica sempre 
na raiz do projeto e é o arquivo de 
configurações de sua aplicação 
e permite que você personalize o 
comportamento do seu projeto.
b) Diretório \hooks: este diretório 
pode conter scripts utilizados para 
customizar comandos Cordova CLI e 
PhoneGap CLI.
c) Diretório \platforms: este diretório 
conterá todo o código-fonte e scripts 
de construção para as plataformas 
que você adicionar ao seu projeto.
d) Diretório \plugins: qualquer plugin 
adicionado será extraído ou copiado 
para este diretório.
e) Diretório \www: neste diretório 
colocamos todo o código HTML, 
CSS e JavaScript. Também incluímos 
todas as imagens e demais recursos 
estáticos.
Unidade 3 • Estrutura do Projeto e Configurações60/196
Glossário
Batch: É um arquivo em lote utilizado para automatizar tarefas por técnicos e programadores. 
Basicamente é um arquivo de script que é executado sequencialmente pelo Prompt de 
comando.
BIOS: É uma sigla para Basic Input/Output System ou Sistema Básico de Entrada e Saída, 
sendo responsável por realizar a inicialização do hardware durante o processo de boot de um 
computador baseado no IBM PC. 
Dual-boot: É um sistema que permite a escolha de um entre dois sistemas operacionais 
instalados num mesmo microcomputador ao ser ligado.
Questão
reflexão
?
para
61/196
Reflita sobre a forma de desenvolvimento centrado na 
plataforma e de desenvolvimento multiplataforma. 
Quando você deverá se preocupar com esta questão, 
durante o projeto de um aplicativo híbrido?
62/196
Considerações Finais
• Tivemos uma pequena introdução sobre a instalação e configuração para a 
plataforma Android.
• Tivemos uma pequena introdução sobre a instalação e configuração para a 
plataforma iOS.
• Tivemos uma pequena introdução sobre a instalação e configuração para a 
plataforma Windows e Windows Phone.
• Tivemos uma primeira visão da estrutura de projeto utilizada pelo Apache 
Cordova e pelo Adobe PhoneGap.
Unidade 3 • Estrutura do Projeto e Configurações63/196
Referências 
ADOBE PhoneGap. Disponível em: <http://PhoneGap.com/>. Acesso em: 14 jul. 2016.
APACHE Cordova. Disponível em: <https://cordova.apache.org/>. Acesso em: 14 jul. 2016.
GATOL, R.; PATEL, Y. Beginning PhoneGap: Mobile Web Framework for JavaScript and HTML5. 
Editora Apress, 2012.
LOPES, S. Aplicações Mobile Híbridas com Cordova e PhoneGap. Editora Casa do Código, 
2016. (Série Caelum).
LUNNY, A. PhoneGap Beginner’s Guide. Editora Packt Publishing, 2011.
MYER, T. Beginning PhoneGap. Editora John Wesley & Sons, 2012.
WARGO, J. M. Apache Cordova 3 Programming. Editora Addison-Wesley, 2013. (Mobile 
Programming Series).
http://PhoneGap.com
https://cordova.apache.org/
64/196
1. Para utilizarmos a plataforma Android, devemos obrigatoriamente 
instalar o:
a) iOS SDK.
b) Android SDK.
c) Windows Phone SDK.
d) Mac OS SDK.
e) Dalvik SDK.
Questão 1
65/196
2. Na plataforma Windows, o Cordova WebViews utiliza-se de qual 
ferramenta como mecanismo de renderização?
a) Safari.
b) Opera.
c) Internet Explorer.
d) Ariadne.
e) Java.
Questão 2
66/196
3. Para utilizarmos a plataforma Windows Phone 8, precisamos de um 
computador com sistema operacional:
a) Windows 7 Home.
b) Windows XP.
c) Windows 95.
d) Windows 8 Pro de 64 bits.
e) Windows Vista.
Questão 3
67/196
4. Na plataforma iOS, além da instalação do iOS SDK e do Xcode, também 
devemos instalar:
a) Java e Swift.
b) Java e Objective-C.
c) HTML5, CSS3, JavaScript.
d) JavaScript, Java, Swift
e) ios-sim e ios-deploy.
Questão 4
68/196
5. Para a plataforma Android, além da instalação do JDK 7 ou superior, do 
Android SDK e de alguns pacotes do Android SDK, deve-se também:
a) configurar a BIOS.
b) configurar os AVDs.
c) instalar o Node.js.
d) adicionar as variáveis de ambiente JAVA_HOME, ANDROID_HOME e editar a variável PATH, 
incluindo o caminho para a pasta tools e platform-tools presente no Android SDK.
e) adicionar as variáveis de ambiente JAVASCRIPT_HOME, ANDROID_HOME e editar a variável 
PATH, incluindo o caminho para a pasta tools e platform-tools presente no Android SDK.
Questão 5
69/196
Gabarito
1. Resposta: B.
O Android SDK é o SDK oficial para o 
desenvolvimento Android.
2. Resposta: C. 
O Cordova WebViews utiliza o Internet 
Explorer 11 (Windows 8.1 e Windows Phone 
8.1) e Internet Explorer 10 (Windows Phone 
8) como seu mecanismo de renderização e 
para testar e depurar todo código web.
3. Resposta: D.
A versão Windows 8 Pro de 64 bits é 
necessária para rodar o emulador de 
dispositivo.
4. Resposta: E.
A ferramenta ios-sim permite executar 
aplicativos iOS no simulador iOS e a 
ferramenta ios-deploy permite executar 
aplicativos iOS no dispositivo iOS pela linha 
de comando.
5. Resposta: D.
É necessário configurar estas variáveis de 
ambiente, pois o Cordova CLI e o PhoneGap 
CLI, para poderem funcionar corretamente, 
fazem uso destas variáveis.
70/196
Unidade 4
Criando o Primeiro Aplicativo
Objetivos
1. Compreender o processo e os 
comandos necessários para a criação 
de aplicativo utilizando Cordova CLI.
2. Compreender o processo e os 
comandos necessários para a criação 
de aplicativo utilizando PhoneGap 
CLI.
3. Compreender o processo necessário 
para a criação de aplicativo utilizando 
PhoneGap Desktop.
Unidade 4 • Criando o Primeiro Aplicativo71/196
Introdução
Em todo desenvolvimento de aplicações, 
alguns fatores devem ser conhecidos e 
compreendidos por todos os profissionais 
que participam do projeto. Nos projetos de 
aplicações utilizando Apache Cordova ou 
Adobe PhoneGap não é diferente.
Nesses projetos, nossas aplicações não 
são meramente um conjunto de códigos 
em HTML5, CSS3 e JavaScript, como em 
um projeto Web. Nossas aplicações devem 
ter o design, o comportamento, o acesso 
a recursos nativos e bom desempenho, 
semelhantes ao encontrado nas aplicações 
nativas de suas respectivas plataformas.
Portanto, ao pensarmos em desenvolver 
utilizando Apache Cordova ou Adobe 
PhoneGap, nossas aplicações devem seguir 
o conceito de Single Page Applications, 
ou seja, um único arquivo HTML carrega 
todo o conteúdo e todas as telas, sem 
a necessidade de navegação externa 
(para realizarmos isso, temos diversos 
frameworks, como AngularJS, Ionic, 
Backbone.js, entre outros). Utilizar 
adequadamente os diversos plugins, para 
que o usuário tenha o acesso adequado 
aos recursos nativos, ou seja, uma boa 
integração aos recursos da plataforma. Em 
relação ao desempenho, devemos atentar 
à resposta ao toque, ao uso de animações, 
ao processamento pesado de dados e ao 
conceito de Offline-First.
Unidade 4 • Criando o Primeiro Aplicativo72/196
Para saber mais
Single Page Application (SPA) é um modelo de 
desenvolvimento de aplicações Web e móvel que 
tem como ponto importante codificar menos no 
lado servidor e mais no lado cliente, ou seja, a 
aplicação estará contida toda ou quase toda no 
lado cliente sob o navegador. 
O conceito de Offline-First é utilizado quando 
temos que considerar que as conexões com a 
internet podem ser falhas ou inexistentes, e 
nosso aplicativo terá que funcionar off-line. 
Dessa maneira, escrevemos nossoaplicativo 
como se ele não tivesse conexão com a internet 
e, uma vez funcionando off-line, adicionamos 
funcionalidades de rede para que o aplicativo 
possa realizar mais quando estiver on-line.
Feito isso, podemos passar ao processo 
de construção propriamente dito, de 
nossas aplicações utilizando os comandos 
fornecidos pelo Cordova CLI, PhoneGap CLI 
ou pelo PhoneGap Desktop, dependendo 
de nossas necessidades de projeto.
1. Criando Aplicação Usando 
Cordova CLI
Neste item, você conhecerá o processo e 
os comandos necessários para criar seu 
primeiro aplicativo híbrido multiplataforma 
(HTML5, CSS3 e JavaScript) utilizando o 
Cordova CLI.
Unidade 4 • Criando o Primeiro Aplicativo73/196
A. Criar o projeto
• Abra um terminal e vá para o 
diretório onde você deseja criar seu 
projeto e manter o seu código-fonte. 
• Digite o comando: 
cordova create ola com.examplo.ola 
OlaMundo <enter>
O comando cordova create irá criar 
a estrutura de diretórios necessária 
para seu aplicativo cordova. Por 
padrão, este comando também 
gerará o esqueleto de um aplicativo 
baseado na web (Hello World) cuja 
página inicial encontra-se em \www\
index.html.
Este comando possui três 
argumentos básicos importantes:
a) Pasta da aplicação
b) Identificador – nome do pacote 
(deve ser único)
c) Título da aplicação
Todos os comandos subsequentes devem 
ser executados dentro do diretório do 
projeto, ou de todas as subpastas.
B. Adicionar plataformas
Por padrão, não existe nenhuma 
plataforma instalada; dessa forma, 
devemos adicionar suporte para todas as 
plataformas que desejamos utilizar para o 
projeto.
• No terminal, digite:
Unidade 4 • Criando o Primeiro Aplicativo74/196
cd Ola <enter>
• Adicionar as plataformas que 
você deseja. Vamos adicionar as 
plataformas “browser” e “android”. 
No terminal, digite:
cordova platform add browser –save 
<enter>
cordova platform add android –save 
<enter>
• Para verificar o seu atual conjunto de 
plataformas, digite no terminal:
cordova platform ls <enter>
Uma observação importante em relação ao 
\platforms\diretórios: não editar qualquer 
arquivo. Esses arquivos são normalmente 
sobrescritos quando solicitada a 
construção ou plugins são reinstalados. 
C. Executar o aplicativo
Pela plataforma Browser
• No terminal, digite:
cordova run browser <enter>
Este comando irá abrir uma instância 
do seu navegador Google Chrome 
e mostrará o aplicativo cordova, 
conforme a Figura 1.
Unidade 4 • Criando o Primeiro Aplicativo75/196
Figura 1 – Executando cordova no browser
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo76/196
Pela plataforma Android
Para que você possa executar o seu aplicativo 
no Android, será necessário ter um emulador 
de dispositivo Android ou um dispositivo real. 
Executando pelo emulador
Para emular um dispositivo Android, utilizar o 
AVD Manager, localizado na pasta onde está 
instalado o seu Android SDK, ou utilizar um 
emulador de terceiros, como o Genymotion.
• Abra o AVD Manager (ou outra 
ferramenta) e inicie um emulador.
• No terminal, digite o comando:
cordova emulate android <enter>
Este comando irá gerar uma versão 
debug do arquivo .apk, instalá-lo e 
executá-lo dentro do dispositivo virtual 
Android, conforme a Figura 2.
Figura 2 – Executando cordova no emulador Android
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo77/196
Executando pelo dispositivo real
Para utilizar um dispositivo real com 
Android, será necessário realizar duas 
operações no aparelho: habilitar a opção 
Fontes Desconhecidas, na Seção Segurança, 
e habilitar a opção Depuração de USB, na 
Seção Desenvolvedor.
• Com o dispositivo Android conectado 
ao seu computador via USB,
• No terminal, digite o comando:
cordova run android <enter>
Este comando irá gerar uma versão debug 
do arquivo .apk, instalá-lo e executá-
lo dentro do dispositivo real Android, 
conforme a Figura 3.
Figura 3 – Executando cordova no dispositivo Android
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo78/196
D. Construir o Aplicativo
• No terminal, para construir para 
todas as plataformas, digite o 
comando:
cordova build <enter> 
• No terminal, para construir para 
uma plataforma específica, digite o 
comando:
cordova build android<enter> 
Por padrão, ao executar o comando cordova 
build ou cordova build <nomedaplataforma>, 
os scripts do Cordova CLI geram uma 
versão debug do arquivo .apk; sendo 
assim, este arquivo é utilizado pelo 
desenvolvedores e não pelo usuário 
final. Para gerar uma versão final de seu 
aplicativo, deve-se seguir o seguinte passo:
• No terminal, digite o comando:
cordova build android --release<enter> 
Um ponto importante a observar é que 
todos os comandos realizados para 
criar um projeto, adicionar plataformas, 
executar e construir vistos são os mesmos 
para qualquer plataforma.
2. Criando Aplicação Usando 
PhoneGap CLI
Neste item, você conhecerá o processo e 
os comandos necessários para criar seu 
primeiro aplicativo híbrido multiplataforma 
(HTML5, CSS3 e JavaScript) utilizando o 
PhoneGap CLI. Basicamente, o processo de 
criação do projeto, adição de plataformas e 
execução é semelhante ao do Cordova CLI, 
Unidade 4 • Criando o Primeiro Aplicativo79/196
tendo como principal diferença a execução 
em aparelhos reais, pois nestes aparelhos 
é necessária a instalação do PhoneGap 
Developer App, como veremos mais 
adiante.
A. Criar o projeto
• Abra um terminal e vá para o 
diretório onde você deseja criar seu 
projeto e manter o seu código-fonte. 
• Digite o comando: 
PhoneGap create ola1 com.examplo.
ola1 OlaMundo <enter>
O comando PhoneGap create irá criar 
a estrutura de diretórios necessários 
para seu aplicativo PhoneGap. Por 
padrão, este comando também 
gerará o esqueleto de um aplicativo 
baseado na web (Hello World) cuja 
página inicial encontra-se em \www\
index.html.
Este comando possui três 
argumentos básicos importantes:
a) Pasta da aplicação
b) Identificador – nome do pacote 
(deve ser único)
c) Título da aplicação
Todos os comandos subsequentes devem 
ser executados dentro do diretório do 
projeto, ou de todas as subpastas.
Unidade 4 • Criando o Primeiro Aplicativo80/196
B. Adicionar plataformas
Por padrão, não existe nenhuma 
plataforma instalada; dessa forma, 
devemos adicionar suporte para todas as 
plataformas que desejamos utilizar para o 
projeto.
• No terminal, digite:
cd Ola1 <enter>
• Adicionar as plataformas que 
você deseja. Vamos adicionar as 
plataformas “browser” e “android”. 
No terminal, digite:
PhoneGap platform add browser –save 
<enter>
PhoneGap platform add android –save 
<enter>
• Para verificar o seu atual conjunto de 
plataformas, digite no terminal:
PhoneGap platform ls <enter>
Uma observação importante em relação ao 
\platforms\diretórios: não editar qualquer 
arquivo. Esses arquivos são normalmente 
sobrescritos quando solicitada a 
construção ou plugins são reinstalados. 
C. Executar o aplicativo
Pela plataforma Browser
• No terminal, digite:
PhoneGap run browser <enter>
Este comando irá abrir uma instância 
do seu navegador Google Chrome 
e mostrará o aplicativo PhoneGap, 
conforme a Figura 4.
Unidade 4 • Criando o Primeiro Aplicativo81/196
Figura 4 – Executando PhoneGap no browser
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo82/196
Pela plataforma Android
Para que você possa executar o seu aplicativo 
no Android, será necessário ter um emulador 
de dispositivo Android ou um dispositivo real. 
Executando pelo emulador
Para emular um dispositivo Android, utilizar o 
AVD Manager, localizado na pasta onde está 
instalado o seu Android SDK, ou utilizar um 
emulador de terceiros, como o Genymotion.
• Abra o AVD Manager (ou outra 
ferramenta) e inicie um emulador.
• No terminal, digite o comando:
PhoneGap emulate android <enter>
Este comando irá gerar uma versão 
debug do arquivo .apk, instalá-lo e 
executá-lo dentro do dispositivo virtual 
Android, conforme a Figura 5.
Figura5 – Executando PhoneGap no emulador Android
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo83/196
Executando pelo dispositivo real
Para utilizar um dispositivo real com 
Android, será necessário realizar duas 
operações no aparelho: habilitar a opção 
Fontes Desconhecidas, na Seção Segurança, 
e habilitar a opção Depuração de USB, na 
Seção Desenvolvedor.
Para que você possa visualizar o seu 
aplicativo em um dispositivo móvel, 
primeiro deve instalar o PhoneGap 
Developer App no dispositivo, para 
que dessa forma seja possível o 
emparelhamento deste com o PhoneGap 
CLI, sem a necessidade de instalar 
plataforma SDK, registrar dispositivos ou 
compilar código. 
Isso é possível utilizando o comando 
PhoneGap serve, que inicia um pequeno 
servidor web para hospedar seu projeto e 
retorna o endereço do servidor para você 
emparelhar com o PhoneGap Developer 
App em execução no seu dispositivo móvel. 
• Verifique se o seu dispositivo e o 
computador estão na mesma rede, 
antes de continuar. 
• No diretório do projeto, digite o 
comando PhoneGap serve. Você 
receberá o endereço de servidor, 
informando que o aplicativo 
está sendo hospedado na saída 
recebida no console (por exemplo: 
192.168.1.11:3000):
Unidade 4 • Criando o Primeiro Aplicativo84/196
 PhoneGap serve
[PhoneGap] starting app server...
[PhoneGap] listening on 
192.168.1.11:3000
[PhoneGap]
[PhoneGap] ctrl-c to stop the server
[PhoneGap]
• Com o PhoneGap Developer App em 
execução no seu dispositivo móvel, 
digite o endereço do servidor na tela 
principal e toque em Conectar-se. 
Uma vez conectado, ele carrega o seu 
aplicativo na tela principal, conforme 
a Figura 6.
Figura 6 – Executando PhoneGap no dispositivo Android
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo85/196
D. Construir o Aplicativo
• No terminal, para construir para 
todas as plataformas, digite o 
comando:
PhoneGap build <enter> 
• No terminal, para construir para 
uma plataforma específica, digite o 
comando:
PhoneGap build android<enter> 
Por padrão, ao executar o comando 
PhoneGap build ou PhoneGap build 
<nomedaplataforma>, os scripts do 
PhoneGap CLI geram uma versão debug 
do arquivo .apk; sendo assim, este arquivo 
é utilizado pelos desenvolvedores e não 
pelo usuário final, como já informado 
anteriormente. Para gerar uma versão final 
de seu aplicativo, deve-se seguir o seguinte 
passo:
• No terminal, digite o comando:
PhoneGap build android 
--release<enter> 
Um ponto importante a observar é que 
todos os comandos realizados para 
criar um projeto, adicionar plataformas, 
executar e construir vistos são os mesmos 
para qualquer plataforma suportada pelo 
PhoneGap CLI.
3. Criando Aplicação Usando 
PhoneGap Desktop
Com a utilização do PhoneGap Desktop, 
Unidade 4 • Criando o Primeiro Aplicativo86/196
você está pronto para criar seu primeiro 
projeto PhoneGap com a capacidade 
de executá-lo em vários dispositivos e 
sistemas operacionais em apenas algumas 
etapas.
A. Criar o projeto
A ferramenta PhoneGap Desktop inclui um 
projeto do Hello World. E com este projeto 
que iremos mostrar os passos necessários 
para criar um projeto nesta ferramenta.
• Iniciar o PhoneGap Desktop, que 
ficará conforme a Figura 7.
Figura 7 – Tela inicial do PhoneGap Desktop
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo87/196
• Clicar no sinal de mais (+) e selecionar 
Criar novo projeto PhoneGap, 
conforme a Figura 8.
Figura 8 – Criar novo projeto no PhoneGap Desktop
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo88/196
• Na tela que vai aparecer (Figura 
9), inserir informações sobre o seu 
projeto. Escolha o caminho, no seu 
disco rígido, onde você deseja criar 
o projeto, um nome designado e um 
identificador (opcional). Uma vez 
que as informações tenham sido 
inseridas, clicar no botão verde Create 
Project.
Figura 9 – Informações de configuração do 
novo projeto no PhoneGap Desktop
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo89/196
Lembre-se que o campo ID também é 
conhecido como o identificador de pacote 
para o Android e para o iOS.
• Aparecerá uma tela (Figura 10) 
indicando que o projeto foi criado. 
Ao clicar no botão de play (verde), 
o projeto será ativado e colocado 
em execução, conforme mostra a 
Figura 11. Você verá um endereço do 
servidor.
Apenas um projeto será ativo e em 
execução a qualquer momento.
Figura 10 – Tela mostrando que o novo projeto 
no PhoneGap Desktop foi criado
Fonte: O autor.
Unidade 4 • Criando o Primeiro Aplicativo90/196
Figura 11 – Tela mostrando que o servidor está sendo executado
Fonte: O autor.
B. Executar o aplicativo
Pela plataforma Browser
• Na plataforma browser, somente pelo 
PhoneGap CLI. No terminal, dentro 
do diretório de sua aplicação, digite o 
comando:
PhoneGap run browser <enter>
Pela plataforma Android
Para utilizar um dispositivo real com 
Android, será necessário realizar duas 
operações no aparelho: habilitar a opção 
Fontes Desconhecidas, na Seção Segurança, 
e habilitar a opção Depuração de USB, na 
Seção Desenvolvedor.
Para que você possa visualizar o seu 
aplicativo em um dispositivo móvel, 
Unidade 4 • Criando o Primeiro Aplicativo91/196
primeiro deve instalar o PhoneGap 
Developer App no dispositivo. 
• Na etapa anterior, criamos um 
projeto e o colocamos em execução, 
conforme visto na Figura 11.
• Com o PhoneGap Developer App em 
execução no seu dispositivo móvel, 
digite o endereço do servidor na tela 
principal e toque em Conectar-se. 
Uma vez conectado, ele carrega o seu 
aplicativo na tela principal.
C. Construir o Aplicativo
Quando se utiliza o PhoneGap Desktop, há 
duas opções disponíveis para construir e 
empacotar as suas aplicações:
• Construir o pacote localmente 
usando o PhoneGap CLI;
ou
• Usar o Adobe PhoneGap Build.
Com isso, concluímos uma visão básica de 
como criar, executar e visualizar aplicações 
desenvolvidas pelo Cordova CLI, pelo 
PhoneGap CLI e pelo PhoneGap Desktop.
http://www.microsofttranslator.com/bv.aspx?from=en&to=pt&a=http%3A%2F%2Fbuild.phonegap.com%2F
Unidade 4 • Criando o Primeiro Aplicativo92/196
Glossário
Desempenho: Modo como o aplicativo se comporta tendo em conta sua eficiência (tempo de 
execução e recursos envolvidos).
Servidor Web: É um software responsável pela publicação de documentos, imagens e outros 
componentes que sejam acessados por um cliente através de um navegador. 
Debug: É o processo de depuração de um software, ou seja, de encontrar e reduzir defeitos num 
aplicativo de software.
Questão
reflexão
?
para
93/196
Reflita sobre o desenvolvimento de aplicações híbridas 
utilizando a ferramenta Adobe PhoneGap Desktop 
e sugira uma ou mais situações em que este tipo de 
abordagem pode ser utilizado e ser útil para projetos de 
aplicações.
94/196
Considerações Finais
• Tivemos uma visão básica dos principais comandos para criação, execução 
e visualização de aplicativos utilizando o Cordova CLI.
• Tivemos uma visão básica dos principais comandos para criação, execução 
e visualização de aplicativos utilizando o PhoneGap CLI.
• Tivemos uma visão básica dos principais comandos para criação, execução 
e visualização de aplicativos utilizando o PhoneGap Desktop.
• Tivemos uma visão de conceitos básicos e importantes que devem ser 
levados em consideração quando da construção de aplicativos móveis 
híbridos multiplataforma.
Unidade 4 • Criando o Primeiro Aplicativo95/196
Referências
ADOBE PhoneGap. Disponível em: <http://PhoneGap.com/>. Acesso em: 14 jul. 2016.
APACHE Cordova. Disponível em: <https://cordova.apache.org/>. Acesso em: 14 jul. 2016.
GATOL, R.; PATEL, Y. Beginning PhoneGap: Mobile Web Framework for JavaScript and HTML5. 
Editora Apress, 2012.
LOPES, S. Aplicações Mobile Híbridas com Cordova e PhoneGap. Editora Casa do Código, 
2016. (Série Caelum).
LUNNY, A. PhoneGap Beginner’s Guide. Editora Packt Publishing, 2011.
MYER, T. Beginning PhoneGap. Editora John Wesley & Sons, 2012.
WARGO,J. M. Apache Cordova 3 Programming. Editora Addison-Wesley, 2013. (Mobile 
Programming Series).
http://PhoneGap.com
https://cordova.apache.org/
96/196
1. Para criamos um projeto utilizando Cordova CLI, utilizamos o seguinte 
comando:
a) PhoneGap create <pasta> <identificador> <titulodaaplicação>.
b) cordova create <pasta> <identificador> <titulodaaplicação>.
c) PhoneGap run <pasta> <identificador> <titulodaaplicação>.
d) cordova run <pasta> <identificador> <titulodaaplicação>.
e) cordova platform add create <pasta> <identificador> <titulodaaplicação>.
Questão 1
97/196
2. Para executar um aplicativo utilizando PhoneGap CLI em um 
dispositivo real, devemos utilizar o comando:
a) PhoneGap run.
b) cordova run.
c) PhoneGap serve.
d) PhoneGap list.
e) PhoneGap emulate.
Questão 2
98/196
3. Uma condição necessária para que um aplicativo utilizando PhoneGap 
CLI ou PhoneGap Desktop possa executar em um dispositivo real é a de 
que este dispositivo esteja:
a) conectado ao computador por um cabo USB.
b) na mesma rede de computadores que o computador da aplicação.
c) desligado.
d) sem conexão.
e) sem cartão de memória.
Questão 3
99/196
4. Para desenvolver aplicações mobile multiplataforma utilizando 
Cordova CLI, é suficiente e necessário conhecer as linguagens:
a) HTML, Java e CSS.
b) HTML5, CSS3 e Java.
c) HTML5, CSS3 e JavaScript.
d) JavaScript, Java e Swift.
e) Java, CSS3 e HTML5.
Questão 4
100/196
5. Quando crio um projeto utilizando PhoneGap Desktop, qual é o 
comando para executá-lo na plataforma Browser?
a) PhoneGap browser.
b) cordova browser.
c) PhoneGap emulate.
d) cordova emulate.
e) PhoneGap run browser.
Questão 5
101/196
Gabarito
1. Resposta: B.
Este é o comando correto para a criação 
de projetos utilizando Cordova CLI: 
cordova create <pasta> <identificador> 
<titulodaaplicação>.
2. Resposta: C.
Este é o comando correto para a criação 
de projetos utilizando PhoneGap CLI: 
PhoneGap serve.
3. Resposta: B.
O dispositivo real deve pertencer à mesma 
rede de computadores que o computador 
da aplicação.
4. Resposta: C.
Para o desenvolvimento de aplicações 
multiplataforma utilizando Cordova CLI, é 
suficiente o conhecimento da linguagem 
de marcação HTML5, da linguagem de 
folha de estilos CSS3 e da linguagem de 
programação interpretada JavaScript.
5. Resposta: E.
Este é o comando correto para a criação 
de projetos utilizando PhoneGap CLI: 
PhoneGap run browser.
102/196
Unidade 5
Funcionalidades dos Plugins
Objetivos
1. Compreender o conceito de plugins 
no Cordova.
2. Compreender o processo instalação 
dos plugins.
3. Compreender as diferenças e 
peculiaridades dos plugins em 
relação às plataformas.
Unidade 5 • Funcionalidades dos Plugins103/196
Introdução
Plugins são parte integrante do Cordova, 
fornecem uma interface para Cordova e 
componentes nativos se comunicarem 
uns com os outros, permitindo que código 
nativo possa ser invocado utilizando 
JavaScript.
O projeto Apache Cordova mantém um 
conjunto de plugins Core (Núcleo) Plugins. 
Esses plugins fornecem ao seu aplicativo 
a capacidade de acessar os recursos 
do dispositivo, como bateria, câmera, 
contatos, etc.
Existem também vários plugins de terceiros 
que fornecem funcionalidades adicionais 
para características não necessariamente 
disponíveis em todas as plataformas.
Veremos a seguir os principais plugins do 
Apache Cordova, que também podem ser 
utilizados em projetos desenvolvidos em 
Adobe PhoneGap.
1. Plugin cordova-plugin-
battery-status
Este plugin fornece uma implementação 
de uma versão antiga da API Battery Status 
Events. Fornece três eventos para o objeto 
window: 
• batterystatus
• batterycritical
• batterylow
Unidade 5 • Funcionalidades dos Plugins104/196
Instalação 
cordova plugin add cordova-plugin-battery-
status 
Status 
Todos os eventos deste plugin devem 
retornar um objeto com as seguintes 
propriedades: 
• level: A porcentagem de carga da 
bateria (0-100) (Number);
• isPlugged: Um booleano que indica 
se o dispositivo está conectado 
(Boolean). 
Evento batterystatus: Retorna um objeto 
que contém o estado da bateria. As 
plataformas suportadas são: 
• Amazon Fire OS;
• iOS;
• Android;
• BlackBerry 10;
• Windows Phone 7 e 8;
• Windows (Windows Phone 8.1 
somente);
• Firefox OS;
• Browser (Chrome, Firefox, Opera).
Evento batterylow: Dispara quando a 
porcentagem de carga da bateria atingir 
o limite de carga baixa. Este valor limite 
é específico do dispositivo. Retorna um 
objeto que contém o estado da bateria. As 
plataformas suportadas são:
Unidade 5 • Funcionalidades dos Plugins105/196
• Amazon Fire OS;
• iOS;
• Android;
• BlackBerry 10;
• Firefox OS;
• Windows (Windows Phone 8.1 
somente);
• Browser (Chrome, Firefox, Opera).
Evento batterycritical: inicia quando a 
porcentagem de carga da bateria atingir 
o limite de carga crítica. Este valor limite 
é específico do dispositivo. Retorna um 
objeto que contém o estado da bateria. As 
plataformas suportadas são: 
• Amazon Fire OS;
• iOS;
• Android;
• BlackBerry 10;
• Firefox OS;
• Windows (Windows Phone 8.1 
somente);
• Browser (Chrome, Firefox, Opera).
2. Plugin cordova-plugin-
camera 
Este plugin define um objeto global 
navigator.camera, que fornece uma API 
para tirar fotografias e para a escolha 
de imagens da biblioteca de imagens do 
Unidade 5 • Funcionalidades dos Plugins106/196
3. Plugin cordova-plugin-
console
Este plugin define um objeto de console 
global. Embora o objeto esteja no 
escopo global, seus recursos não estarão 
disponíveis até a ocorrência do evento 
deviceready.
Instalação 
cordova plugin add cordova-plugin-console
4. Plugin cordova-plugin-
contacts
Este plugin define um objeto global 
navigator.contacts, que fornece acesso ao 
banco de dados de contatos do dispositivo. 
Embora o objeto esteja ligado ao navigator, 
sistema. Embora o objeto esteja ligado 
ao navigator, ele não está disponível até a 
ocorrência do evento deviceready.
Instalação
Requer Cordova 5.0 ou superior:
cordova plugin add cordova-plugin-camera
Versões anteriores podem ser instaladas 
usando:
cordova plugin add org.apache.cordova.
camera
Também podem ser instaladas diretamente 
do repositório:
cordova plugin add https://github.com/
apache/cordova-plugin-camera.git
Unidade 5 • Funcionalidades dos Plugins107/196
ele não está disponível até a ocorrência do 
evento deviceready.
Instalação 
Requer Cordova 5.0 ou superior:
cordova plugin add cordova-plugin-contacts
Versões anteriores podem ser instaladas 
usando:
cordova plugin add org.apache.cordova.
contacts
Também podem ser instaladas diretamente 
do repositório:
cordova plugin add https://github.com/
apache/cordova-plugin-contacts.git
5. Plugin cordova-plugin-device 
Este plugin define um objeto global device, 
que descreve o hardware e software do 
dispositivo. Embora o objeto esteja em um 
escopo global, ele não está disponível até a 
ocorrência do evento deviceready. 
Instalação 
cordova plugin add cordova-plugin-device
Propriedades
• device.cordova
• device.model
• device.platform
• device.uuid
• device.version
Unidade 5 • Funcionalidades dos Plugins108/196
Instalação 
cordova plugin add cordova-plugin-device-
motion 
Plataformas suportadas 
• Amazon Fire OS;
• Android;
• BlackBerry 10;
• Browser;
• Firefox OS;
• iOS;
• Tizen;
• Windows Phone 8;
• Windows.
• device.manufacturer
• device.isVirtual
• device.serial
6. Plugin cordova-plugin-
device-motion 
Este plugin fornece acesso ao acelerômetro 
do dispositivo. É um sensor de movimento 
que detecta a alteração de movimento em 
relação à orientação do dispositivo atual, 
em três dimensões ao longo dos eixos x, y 
e z. O acesso é através de um objeto global 
navigator.accelerometer. 
Embora o objeto esteja ligado ao navigator, 
ele não está disponível até a ocorrência do 
evento deviceready. 
Unidade 5 • Funcionalidades dos Plugins109/196
7. Plugin cordova-plugin-
device-orientation