SlideShare uma empresa Scribd logo
1 de 18
“Todo mundo tem cliente. 
Só traficante e analista de 
sistemas é que tem 
usuário.” (Bill Gates) 
1 
ESTRUTURA E FUNCIONAMENTO 
DO PHONEGAP
O QUE É O APACHE CORDOVA? 
• No processo de aprendizado do PhoneGap 
encontramos o nome Cordova; 
• O Cordova pode ser considerado o “motor” do 
PhoneGap e desde 2011 seu código é mantido pela 
Apache Software Foundation; 
• Encontramos também o PhoneGap Build; 
• O PhoneGap Build permite o upload do arquivos 
HTML, JavaScript e CSS para a nuvem de serviços 
da Adobe. 
2
OPÇÕES DE COMANDO 
create <path> create a phonegap project 
build <platform> build a specific platform 
install <platform> install a specific platform 
run <platform> build and install a specific platform 
local [command] development on local system 
remote [command] development in cloud with phonegap/build 
platform [command] update a platform version 
plugin [command] add, remove, and list plugins 
help [command] output usage information 
version output version number 
3 
• Opções de linha de comando do PhoneGap:
OPÇÕES DE COMANDO(2) 
4 
• Opções de plataforma: 
Platforms: 
keyword | local environment | remote environment 
-------------------|---------------------|------------------- 
android | Yes | Yes 
blackberry | Yes (BlackBerry 10) | Yes (BlackBerry 6) 
ios | Yes | Yes 
symbian | No | Yes 
webos | No | Yes 
wp7 | Yes | Yes 
wp8 | Yes | Coming Soon
PROJETO PHONEGAP 
Diretório com as plataformas geradas 
5 
• Projeto ListaContatos Diretório com configurações do 
Apache Cordova. 
Permite introduzir modificações 
específicas para uma determinada 
plataforma. 
para o projeto. 
Diretório com os plugins instalados 
no projeto. 
Diretório com a estrutura web geral 
do projeto.
PROJETO PHONEGAP(2) 
6 
• Diretório ListaContatos/www 
Arquivos web como JS, CSS e 
imagens. 
Arquivo de configuração do projeto 
necessário para o PhoneGap. 
Página inicial.
PROJETO PHONEGAP(3) 
7 
• Diretório ListaContatos/platforms/android 
O que tem a mais: cordova, 
CordovaLib, platform_www, 
local.properties e o assets 
muda. 
Estrutura padrão de um projeto 
Android.
PROJETO PHONEGAP(4) 
8 
• Diretório ListaContatos/platforms/android/assets/www 
Arquivos web como JS, CSS e 
imagens. 
Diversos arquivos incluindo JS e o 
arquivo de configuração para o 
PhoneGap Build.
CONFIGURAÇÃO PHONEGAP 
• Arquivo assets/www/config.xml 
• O arquivo possui elementos de configuração global para o 
PhoneGap Build 
9
CONFIGURAÇÃO PHONEGAP(2) 
10 
• Principais elementos de configuração 
Elemento Função 
widget Possui os atributos id e versão da aplicação. 
name Nome da aplicação na tela Home. 
description Descrição geral da aplicação. 
author Dados de autoria da aplicação 
content Elemento opcional que define a página inicial. Padrão: index.html. 
access Controle de acesso a domínios externos. 
preference Permite setar preferências utilizando o padrão chave = valor.
CONFIGURAÇÃO PHONEGAP(3) 
• Elementos globais de configuração 
Elemento Função 
Fullscreen Permite ocultar a barra de status e o topo da tela. Padrão é false. 
Orientation Permite fixar a direção da tela. Não responderá as mudanças percebidas pelos 
11 
sensores.
CONFIGURAÇÃO PHONEGAP(4) 
12 
• Elementos multiplataforma 
Elemento Função 
DisallowOverscroll Apresentar feedback de rolagem no conteúdo. Padrão é 
false. 
BackgroundColor Setar cor de fundo. 4 bytes hexadecimais. 
HideKeyboardFormAccessoryBar Esconder barra sobre teclado virtual. Padrão false.
CONFIGURAÇÃO PHONEGAP(5) 
13 
• Elemento <feature> 
• Utilizado para ativar/configurar plug-ins 
• Permite mapear acessos a API Nativa
CONFIGURAÇÃO PHONEGAP(5) 
14 
• Mudanças no AndroidManifest.xml 
<supports-screens 
android:largeScreens="true" 
android:normalScreens="true" 
android:smallScreens="true" 
android:resizeable="true" 
android:anyDensity="true" /> 
<uses-permission android:name="android.permission.CAMERA" /> 
<uses-permission android:name="android.permission.VIBRATE" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission. 
ACCESS_LOCATION_EXTRA_COMMANDS"/> 
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.RECEIVE_SMS" /> 
<uses-permission android:name="android.permission.RECORD_AUDIO" /> 
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 
<uses-permission android:name="android.permission.READ_CONTACTS" /> 
<uses-permission android:name="android.permission.WRITE_CONTACTS" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
PROJETO CONTATOS 
15 
• Classe de atividade estende CordovaActivity 
• Tem suporte embarcado a uma WebView
PROJETO CONTATOS(1) 
16 
• Estendendo as funcionalidades do projeto
PROJETO CONTATOS(2) 
17 
• Implementando pesquisa/filtro de contatos 
function onDeviceReady() { 
var filtro = document.getElementById("nome").value; 
console.log("Filtro:::::: " + filtro); 
var options = new ContactFindOptions(); 
options.filter=filtro; 
options.multiple=true; 
var fields = ["displayName", "name"]; 
navigator.contacts.find(fields, onSuccess, onError, options); 
} function onSuccess(contacts) { 
var lista = document.getElementById("lista"); 
lista.innerHTML = ""; 
console.log("Qde::::" + contacts.length); 
for (var i = 0; i < contacts.length; i++) { 
var item = document.createElement('li'); 
item.innerHTML = contacts[i].displayName; 
lista.appendChild(item); 
console.log("Display Name = " + contacts[i].displayName); 
} 
} 
function onError(contactError) { 
alert(“Error”); 
}
PROJETO CONTATOS(3) 
18 
• Cadastro de Contatos 
–Adicionar link de “Novo” na lista de 
contatos; 
–Adicionar uma nova página HTML para 
cadastro de contatos com: foto, nome, e-mail 
e celular; 
–Adicionar os botões Salvar e Voltar ao 
cadastro de contatos.

Mais conteúdo relacionado

Semelhante a Aula Aula03 estrutura phone_gap

PhoneGap - Criando aplicações Android e iOS com HTML5
PhoneGap - Criando aplicações Android e iOS com HTML5PhoneGap - Criando aplicações Android e iOS com HTML5
PhoneGap - Criando aplicações Android e iOS com HTML5
Rodrigo Cascarrolho
 
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e IonicCurso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
Felipe Blini
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
Natanael Fonseca
 

Semelhante a Aula Aula03 estrutura phone_gap (20)

Conhecendo o PhoneGap
Conhecendo o PhoneGapConhecendo o PhoneGap
Conhecendo o PhoneGap
 
PhoneGap
PhoneGapPhoneGap
PhoneGap
 
PhoneGap - criando aplicações Android e iOS com HTML5
PhoneGap - criando aplicações Android e iOS com HTML5PhoneGap - criando aplicações Android e iOS com HTML5
PhoneGap - criando aplicações Android e iOS com HTML5
 
PhoneGap - Criando aplicações Android e iOS com HTML5
PhoneGap - Criando aplicações Android e iOS com HTML5PhoneGap - Criando aplicações Android e iOS com HTML5
PhoneGap - Criando aplicações Android e iOS com HTML5
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework Mobile
 
Seminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec CafelândiaSeminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec Cafelândia
 
Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_Desenvolvendo aplicacoes mobile_com_html_css_
Desenvolvendo aplicacoes mobile_com_html_css_
 
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e IonicCurso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
 
Introdução ao desenvolvimento de apps com Phonegap
Introdução ao desenvolvimento de apps com PhonegapIntrodução ao desenvolvimento de apps com Phonegap
Introdução ao desenvolvimento de apps com Phonegap
 
Curso: Desenvolvimento de aplicativos híbridos (dia 1)
Curso: Desenvolvimento de aplicativos híbridos (dia 1)Curso: Desenvolvimento de aplicativos híbridos (dia 1)
Curso: Desenvolvimento de aplicativos híbridos (dia 1)
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
 
Phonegap 120118153629-phpapp01
Phonegap 120118153629-phpapp01Phonegap 120118153629-phpapp01
Phonegap 120118153629-phpapp01
 
JQuery Mobile
JQuery MobileJQuery Mobile
JQuery Mobile
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
 
Workshop - Cordova e Ionic
Workshop - Cordova e IonicWorkshop - Cordova e Ionic
Workshop - Cordova e Ionic
 
Hands-on Cordova / Phonegap - GDG JF
Hands-on Cordova / Phonegap - GDG JFHands-on Cordova / Phonegap - GDG JF
Hands-on Cordova / Phonegap - GDG JF
 
Html5
Html5Html5
Html5
 
Criando uma grid para execução de testes paralelo com Appium
Criando uma grid para execução de testes paralelo com AppiumCriando uma grid para execução de testes paralelo com Appium
Criando uma grid para execução de testes paralelo com Appium
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma Android
 
Vcl For The Web - Palestra sobre desenvolvimento web em Delphi
Vcl For The Web - Palestra sobre desenvolvimento web em DelphiVcl For The Web - Palestra sobre desenvolvimento web em Delphi
Vcl For The Web - Palestra sobre desenvolvimento web em Delphi
 

Mais de Roberson Alves

Mais de Roberson Alves (17)

Apresentação da Dissertação
Apresentação da DissertaçãoApresentação da Dissertação
Apresentação da Dissertação
 
Apressentação SBIAGRO 2015
Apressentação SBIAGRO 2015Apressentação SBIAGRO 2015
Apressentação SBIAGRO 2015
 
Aula09 phonegap storage_connection
Aula09 phonegap storage_connectionAula09 phonegap storage_connection
Aula09 phonegap storage_connection
 
eduAula08 phonegap arquivos
eduAula08 phonegap arquivoseduAula08 phonegap arquivos
eduAula08 phonegap arquivos
 
Aula07 phonegap bussola_eventos
Aula07 phonegap bussola_eventosAula07 phonegap bussola_eventos
Aula07 phonegap bussola_eventos
 
Aula06 phonegap camera_acelerometro
Aula06 phonegap camera_acelerometroAula06 phonegap camera_acelerometro
Aula06 phonegap camera_acelerometro
 
Aula05 phonegap cadastro_contatos
Aula05 phonegap cadastro_contatosAula05 phonegap cadastro_contatos
Aula05 phonegap cadastro_contatos
 
Aula04 phonegap componentes
Aula04 phonegap componentesAula04 phonegap componentes
Aula04 phonegap componentes
 
la 02Aula02 introdução phone_gap
la 02Aula02 introdução phone_gapla 02Aula02 introdução phone_gap
la 02Aula02 introdução phone_gap
 
Aula08 android outros_recursos
Aula08 android outros_recursosAula08 android outros_recursos
Aula08 android outros_recursos
 
Aula07 android conectividade
Aula07 android conectividadeAula07 android conectividade
Aula07 android conectividade
 
Aula06 android localizacao
Aula06 android localizacaoAula06 android localizacao
Aula06 android localizacao
 
Aula05 android persistencia
Aula05 android persistenciaAula05 android persistencia
Aula05 android persistencia
 
Aula04 android intents
Aula04 android intentsAula04 android intents
Aula04 android intents
 
Aula03 android layouts_views
Aula03 android layouts_viewsAula03 android layouts_views
Aula03 android layouts_views
 
Aula02 android hands_on
Aula02 android hands_onAula02 android hands_on
Aula02 android hands_on
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade android
 

Último

PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
HELENO FAVACHO
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
NarlaAquino
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
TailsonSantos1
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
AntonioVieira539017
 

Último (20)

PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptx
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptxSlides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
Slides Lição 6, Betel, Ordenança para uma vida de obediência e submissão.pptx
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
migração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenosmigração e trabalho 2º ano.pptx fenomenos
migração e trabalho 2º ano.pptx fenomenos
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Aula de jornada de trabalho - reforma.ppt
Aula de jornada de trabalho - reforma.pptAula de jornada de trabalho - reforma.ppt
Aula de jornada de trabalho - reforma.ppt
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Projeto de Extensão - DESENVOLVIMENTO BACK-END.pdf
Projeto de Extensão - DESENVOLVIMENTO BACK-END.pdfProjeto de Extensão - DESENVOLVIMENTO BACK-END.pdf
Projeto de Extensão - DESENVOLVIMENTO BACK-END.pdf
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 

Aula Aula03 estrutura phone_gap

  • 1. “Todo mundo tem cliente. Só traficante e analista de sistemas é que tem usuário.” (Bill Gates) 1 ESTRUTURA E FUNCIONAMENTO DO PHONEGAP
  • 2. O QUE É O APACHE CORDOVA? • No processo de aprendizado do PhoneGap encontramos o nome Cordova; • O Cordova pode ser considerado o “motor” do PhoneGap e desde 2011 seu código é mantido pela Apache Software Foundation; • Encontramos também o PhoneGap Build; • O PhoneGap Build permite o upload do arquivos HTML, JavaScript e CSS para a nuvem de serviços da Adobe. 2
  • 3. OPÇÕES DE COMANDO create <path> create a phonegap project build <platform> build a specific platform install <platform> install a specific platform run <platform> build and install a specific platform local [command] development on local system remote [command] development in cloud with phonegap/build platform [command] update a platform version plugin [command] add, remove, and list plugins help [command] output usage information version output version number 3 • Opções de linha de comando do PhoneGap:
  • 4. OPÇÕES DE COMANDO(2) 4 • Opções de plataforma: Platforms: keyword | local environment | remote environment -------------------|---------------------|------------------- android | Yes | Yes blackberry | Yes (BlackBerry 10) | Yes (BlackBerry 6) ios | Yes | Yes symbian | No | Yes webos | No | Yes wp7 | Yes | Yes wp8 | Yes | Coming Soon
  • 5. PROJETO PHONEGAP Diretório com as plataformas geradas 5 • Projeto ListaContatos Diretório com configurações do Apache Cordova. Permite introduzir modificações específicas para uma determinada plataforma. para o projeto. Diretório com os plugins instalados no projeto. Diretório com a estrutura web geral do projeto.
  • 6. PROJETO PHONEGAP(2) 6 • Diretório ListaContatos/www Arquivos web como JS, CSS e imagens. Arquivo de configuração do projeto necessário para o PhoneGap. Página inicial.
  • 7. PROJETO PHONEGAP(3) 7 • Diretório ListaContatos/platforms/android O que tem a mais: cordova, CordovaLib, platform_www, local.properties e o assets muda. Estrutura padrão de um projeto Android.
  • 8. PROJETO PHONEGAP(4) 8 • Diretório ListaContatos/platforms/android/assets/www Arquivos web como JS, CSS e imagens. Diversos arquivos incluindo JS e o arquivo de configuração para o PhoneGap Build.
  • 9. CONFIGURAÇÃO PHONEGAP • Arquivo assets/www/config.xml • O arquivo possui elementos de configuração global para o PhoneGap Build 9
  • 10. CONFIGURAÇÃO PHONEGAP(2) 10 • Principais elementos de configuração Elemento Função widget Possui os atributos id e versão da aplicação. name Nome da aplicação na tela Home. description Descrição geral da aplicação. author Dados de autoria da aplicação content Elemento opcional que define a página inicial. Padrão: index.html. access Controle de acesso a domínios externos. preference Permite setar preferências utilizando o padrão chave = valor.
  • 11. CONFIGURAÇÃO PHONEGAP(3) • Elementos globais de configuração Elemento Função Fullscreen Permite ocultar a barra de status e o topo da tela. Padrão é false. Orientation Permite fixar a direção da tela. Não responderá as mudanças percebidas pelos 11 sensores.
  • 12. CONFIGURAÇÃO PHONEGAP(4) 12 • Elementos multiplataforma Elemento Função DisallowOverscroll Apresentar feedback de rolagem no conteúdo. Padrão é false. BackgroundColor Setar cor de fundo. 4 bytes hexadecimais. HideKeyboardFormAccessoryBar Esconder barra sobre teclado virtual. Padrão false.
  • 13. CONFIGURAÇÃO PHONEGAP(5) 13 • Elemento <feature> • Utilizado para ativar/configurar plug-ins • Permite mapear acessos a API Nativa
  • 14. CONFIGURAÇÃO PHONEGAP(5) 14 • Mudanças no AndroidManifest.xml <supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:resizeable="true" android:anyDensity="true" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission. ACCESS_LOCATION_EXTRA_COMMANDS"/> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.RECEIVE_SMS" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> <uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.BROADCAST_STICKY" />
  • 15. PROJETO CONTATOS 15 • Classe de atividade estende CordovaActivity • Tem suporte embarcado a uma WebView
  • 16. PROJETO CONTATOS(1) 16 • Estendendo as funcionalidades do projeto
  • 17. PROJETO CONTATOS(2) 17 • Implementando pesquisa/filtro de contatos function onDeviceReady() { var filtro = document.getElementById("nome").value; console.log("Filtro:::::: " + filtro); var options = new ContactFindOptions(); options.filter=filtro; options.multiple=true; var fields = ["displayName", "name"]; navigator.contacts.find(fields, onSuccess, onError, options); } function onSuccess(contacts) { var lista = document.getElementById("lista"); lista.innerHTML = ""; console.log("Qde::::" + contacts.length); for (var i = 0; i < contacts.length; i++) { var item = document.createElement('li'); item.innerHTML = contacts[i].displayName; lista.appendChild(item); console.log("Display Name = " + contacts[i].displayName); } } function onError(contactError) { alert(“Error”); }
  • 18. PROJETO CONTATOS(3) 18 • Cadastro de Contatos –Adicionar link de “Novo” na lista de contatos; –Adicionar uma nova página HTML para cadastro de contatos com: foto, nome, e-mail e celular; –Adicionar os botões Salvar e Voltar ao cadastro de contatos.