SlideShare una empresa de Scribd logo
1 de 28
Desenvolvimento para Android Aula 01 ,[object Object],[object Object],[object Object],[object Object]
Introdução
Introdução ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introdução O mercado corporativo também está crescendo muito.
Introdução mercado_mundi@l:  E então Google,  o mundo agora é móvel ! mercado_mundi@l:  O que você tem para me oferecer ?!
Introdução ,[object Object],[object Object]
Introdução ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conhecendo um pouco mais sobre o Android
Conhecendo um pouco mais sobre o Android ,[object Object],[object Object],Com  Android  tudo é possível.
Conhecendo um pouco mais sobre o Android ,[object Object],[object Object],[object Object],[object Object]
Conhecendo um pouco mais sobre o Android Seu sistema operacional não possui uma  Maquina Virtual Java (JVM) Máquina Virtual Dalvik .java .class .dex ( Dalvik Executable ) .apk ( Android Package File )
Conhecendo um pouco mais sobre o Android ,[object Object],[object Object],Quem sai ganhando ? ,[object Object],[object Object],[object Object],[object Object]
Conhecendo um pouco mais sobre o Android Prêmios Para cada uma das 10 categorias: 1 º prêmio:  100.000 dólares 2 º prêmio:  50.000 dólares 3 º prêmio:  25.000 dólares Geral (em todas as categorias) 1 º prêmio:  150.000 dólares 2 º prêmio:  50.000 dólares 3 º prêmio:  25.000 dólares
Conhecendo um pouco mais sobre o Android Mercado de aplicações para Android
Conhecendo um pouco mais sobre o Android
Conhecendo um pouco mais sobre o Android
Configurando o ambiente de desenvolvimento
Configurando o ambiente de desenvolvimento Android SDK
Configurando o ambiente de desenvolvimento Requisitos de Software e Sistema ,[object Object],[object Object],[object Object],[object Object],[object Object],Apenas a JRE não é suficiente.
LABORATÓRIO - 1
Conceitos Básicos
Conceitos Básicos android.app.Activity
Conceitos Básicos android.view.View Elementos visuais que compõem uma  Activity
Conceitos Básicos A classe R
Conceitos Básicos AndroidManifest Semelhante ao  web.xml  utilizado pela plataforma Java EE em conjunto com o container Apache Tomcat.
Conceitos Básicos ../res/ drawable-hdpi ../res/ drawable-ldpi ../res/ drawable-mdpi ../res/ layout ../res/ values ../ assets
Conceitos Básicos LogCat System.out.println() ?? Vermelho E Error – erro Laranja W Warn – Alerta Verde I Info – Informação Preto V Verbose Azul D Debug Cor Sigla Nível
LABORATÓRIO - 2

Más contenido relacionado

Destacado

Desenvolvimento android
Desenvolvimento androidDesenvolvimento android
Desenvolvimento androidDiego Keller
 
Meu primeiro app nativo para Android - Minicurso SCTI UENF
Meu primeiro app nativo para Android - Minicurso SCTI UENFMeu primeiro app nativo para Android - Minicurso SCTI UENF
Meu primeiro app nativo para Android - Minicurso SCTI UENFRaphael Ramos
 
Android case: 5 perguntas + 1 sobre desenvolvimento para Android
Android case: 5 perguntas + 1 sobre desenvolvimento para AndroidAndroid case: 5 perguntas + 1 sobre desenvolvimento para Android
Android case: 5 perguntas + 1 sobre desenvolvimento para AndroidDouglas Frari
 
Criando app mobile com Google Android - Software Freedom Day 2015
Criando app mobile com Google Android - Software Freedom Day 2015 Criando app mobile com Google Android - Software Freedom Day 2015
Criando app mobile com Google Android - Software Freedom Day 2015 Lucas Aquiles
 
Pie.157055.ioc grupo 3 - android e i os
Pie.157055.ioc grupo 3 - android e i osPie.157055.ioc grupo 3 - android e i os
Pie.157055.ioc grupo 3 - android e i osPatricia Cruz
 
Aula teste ETEC - Analise de Programacao
Aula teste ETEC - Analise de ProgramacaoAula teste ETEC - Analise de Programacao
Aula teste ETEC - Analise de ProgramacaoAlcides Duarte
 
02 programmation mobile - android - (activity, view, fragment)
02 programmation mobile - android - (activity, view, fragment)02 programmation mobile - android - (activity, view, fragment)
02 programmation mobile - android - (activity, view, fragment)TECOS
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidJosé Alexandre Macedo
 
Programando Android - Aula 5
Programando Android - Aula 5Programando Android - Aula 5
Programando Android - Aula 5Kalil Maciel
 
Programando Android - Aula 1
Programando Android - Aula 1Programando Android - Aula 1
Programando Android - Aula 1Kalil Maciel
 
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...Bruno Vasconcellos
 
Iniciando no mundo mobile - Programando para android
Iniciando no mundo mobile - Programando para androidIniciando no mundo mobile - Programando para android
Iniciando no mundo mobile - Programando para androidDiemesleno Souza Carvalho
 
Android | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo SilvaAndroid | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo SilvaJAX London
 
Desenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certaDesenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certaNelson Glauber Leal
 

Destacado (17)

Desenvolvimento android
Desenvolvimento androidDesenvolvimento android
Desenvolvimento android
 
Meu primeiro app nativo para Android - Minicurso SCTI UENF
Meu primeiro app nativo para Android - Minicurso SCTI UENFMeu primeiro app nativo para Android - Minicurso SCTI UENF
Meu primeiro app nativo para Android - Minicurso SCTI UENF
 
Android case: 5 perguntas + 1 sobre desenvolvimento para Android
Android case: 5 perguntas + 1 sobre desenvolvimento para AndroidAndroid case: 5 perguntas + 1 sobre desenvolvimento para Android
Android case: 5 perguntas + 1 sobre desenvolvimento para Android
 
1ª aula - Teste
1ª aula   - Teste1ª aula   - Teste
1ª aula - Teste
 
Criando app mobile com Google Android - Software Freedom Day 2015
Criando app mobile com Google Android - Software Freedom Day 2015 Criando app mobile com Google Android - Software Freedom Day 2015
Criando app mobile com Google Android - Software Freedom Day 2015
 
Pie.157055.ioc grupo 3 - android e i os
Pie.157055.ioc grupo 3 - android e i osPie.157055.ioc grupo 3 - android e i os
Pie.157055.ioc grupo 3 - android e i os
 
Aula teste ETEC - Analise de Programacao
Aula teste ETEC - Analise de ProgramacaoAula teste ETEC - Analise de Programacao
Aula teste ETEC - Analise de Programacao
 
02 programmation mobile - android - (activity, view, fragment)
02 programmation mobile - android - (activity, view, fragment)02 programmation mobile - android - (activity, view, fragment)
02 programmation mobile - android - (activity, view, fragment)
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento Android
 
Programando Android - Aula 5
Programando Android - Aula 5Programando Android - Aula 5
Programando Android - Aula 5
 
Programando Android - Aula 1
Programando Android - Aula 1Programando Android - Aula 1
Programando Android - Aula 1
 
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em A...
 
Iniciando no mundo mobile - Programando para android
Iniciando no mundo mobile - Programando para androidIniciando no mundo mobile - Programando para android
Iniciando no mundo mobile - Programando para android
 
Android - Conceito e Arquitetura
Android - Conceito e ArquiteturaAndroid - Conceito e Arquitetura
Android - Conceito e Arquitetura
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional Android
 
Android | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo SilvaAndroid | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo Silva
 
Desenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certaDesenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certa
 

Similar a Desenvolvimento para Android

Android Palestra
Android PalestraAndroid Palestra
Android PalestraRenato
 
E tertulia paol-rq
E tertulia paol-rqE tertulia paol-rq
E tertulia paol-rqKMILT
 
Desenvolvimento para Android - Bento Gonçalves (08/2011)
Desenvolvimento para Android - Bento Gonçalves (08/2011)Desenvolvimento para Android - Bento Gonçalves (08/2011)
Desenvolvimento para Android - Bento Gonçalves (08/2011)Gustavo Ciello
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - BásicoHugoDalevedove
 
Introdução a dispositivos móveis.
Introdução a dispositivos móveis.Introdução a dispositivos móveis.
Introdução a dispositivos móveis.Eduardo Lagares
 
Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013guisester
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade androidRoberson Alves
 
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação Thiago Marinho
 
Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)Ricardo Longa
 
Android: Conheça o Futuro Inevitável
Android: Conheça o Futuro InevitávelAndroid: Conheça o Futuro Inevitável
Android: Conheça o Futuro InevitávelCampus Party Brasil
 
Introdução à plataforma android.
Introdução à plataforma android.Introdução à plataforma android.
Introdução à plataforma android.Everton Dewes
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012guisester
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Androidilegra
 
Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1Afonso Machado
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisRogério Moraes de Carvalho
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Jose Berardo
 
Palestra sobre Android - Faculdade Hélio Rocha
Palestra sobre Android  - Faculdade Hélio RochaPalestra sobre Android  - Faculdade Hélio Rocha
Palestra sobre Android - Faculdade Hélio RochaUbiracy Santos
 

Similar a Desenvolvimento para Android (20)

Android Palestra
Android PalestraAndroid Palestra
Android Palestra
 
E tertulia paol-rq
E tertulia paol-rqE tertulia paol-rq
E tertulia paol-rq
 
Show Day Droid x
Show Day Droid xShow Day Droid x
Show Day Droid x
 
Desenvolvimento para Android - Bento Gonçalves (08/2011)
Desenvolvimento para Android - Bento Gonçalves (08/2011)Desenvolvimento para Android - Bento Gonçalves (08/2011)
Desenvolvimento para Android - Bento Gonçalves (08/2011)
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - Básico
 
Introdução a dispositivos móveis.
Introdução a dispositivos móveis.Introdução a dispositivos móveis.
Introdução a dispositivos móveis.
 
Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013
 
Android
AndroidAndroid
Android
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade android
 
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
 
Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)
 
Android: Conheça o Futuro Inevitável
Android: Conheça o Futuro InevitávelAndroid: Conheça o Futuro Inevitável
Android: Conheça o Futuro Inevitável
 
Introdução à plataforma android.
Introdução à plataforma android.Introdução à plataforma android.
Introdução à plataforma android.
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Android
 
Android
AndroidAndroid
Android
 
Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
 
Palestra sobre Android - Faculdade Hélio Rocha
Palestra sobre Android  - Faculdade Hélio RochaPalestra sobre Android  - Faculdade Hélio Rocha
Palestra sobre Android - Faculdade Hélio Rocha
 

Desenvolvimento para Android

Notas del editor

  1. Desenvolvimento para Android Aula 01 Após esta aula o aluno será capaz de Configurar um ambiente de desenvolvimento de aplicações móveis para a plataforma Android utilizando a IDE Eclipse, além de compreender os principais conceitos e recursos utilizados pelo ambiente montado. Tópicos abordados: Introdução Conhecendo um pouco mais sobre o Android Configurando o ambiente de desenvolvimento Conceitos Básicos Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  2. Faça aqui suas anotações a respeito deste tópico. _________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  3. O mercado de celulares atualmente, está tendo um crescimento notável. Estudos mostram que mais da metade da população mundial possui um aparelho celular. A procura por aparelhos com funcionalidades como câmeras, músicas, bluetooth , GPS, acesso a internet e TV digital, está sendo motivo para grandes empresas do ramo de TI investirem neste novo nicho de mercado em crescimento. O mercado de software para celulares é promissor, mas ainda restam muitas questões a responder. Uma das mais importantes é sobre a variedade de sistemas existentes e o poder que os donos destas plataformas tem sobre os desenvolvedores. A empresa de Steve Jobs, por exemplo, cobra 30% do valor da venda dos aplicativos a título de prestação de serviço. Mas nenhuma dessas incertezas deve barrar o desenvolvimento da nascente indústria de software móvel. O mundo caminha cada vez mais para a realidade móvel. A franca expansão do mercado mobile  é a grande oportunidade das empresas se fazerem presente na vida dos consumidores de maneira cotidiana, interativa e personalizada. O importante é entender que mobile tem dois caminhos. Ou ele é o centro das atenções, onde as empresas criam produtos exclusivamente para funcionarem no celular, ou ele é um meio para levar ao principal objetivo da empresa, que é o caso mais comum atualmente, onde a empresa possui diversos produtos e serviços, e utiliza o mobile como mais um canal de vendas, publicidade ou divulgação. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  4. O mercado corporativo está crescendo muito, e diversas empresas estão buscando incorporar aplicações móveis a seu dia-a-dia para agilizar seus negócios e integrá-las com seus sistemas de back-end. Países mais desenvolvidos permitem que celulares sejam utilizados em produtos, para ler seu código de barras e efetuar sua compra, como se fossem cartões de crédito. É isso: os celulares não são mais apenas usados para atender ligações, sendo agora verdadeiras máquinas repletas de tecnologia. Para acompanhar esta evolução e satisfazer os usuários, os fabricantes e operadores de celulares investem altos valores monetários para o desenvolvimento de produtos que atinjam estes objetivos. Assim como no mundo dos PCs , onde plataformas que estão em destaque virão alvos de programas maliciosos, o mobile também despertou interesse nestes invasores, o que acarretou na aparição de fabricantes de software de segurança para dispositivos móveis, criando uma nova vertente neste mercado. Segundo pesquisas realizadas, atualmente apenas um em cada 20 smartphones e tablets têm software de segurança instalado. Ou seja, somente 4% são protegidos contra ataques. E ainda observa que apenas 227 milhões de dispositivos móveis terão algum tipo de solução instalada até 2016.  O estudo mostra por fim, que o mercado corporativo de software de segurança para dispositivos móveis irá responder por 69% das vendas de soluções de segurança dentro de cinco anos. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  5. Muito mais do que uma revolução cultural, dados divulgados por pesquisas e estudos realizados na área, indicam a grande revolução do mercado mobile. De olho em previsões de crescimento como estas, que vêm se confirmando por todo o mundo, que a oferta de novos serviços e aplicativos móveis tem crescido em passos largos. Estamos vivendo tempos de grandes mudanças no mercado de dispositivos móveis. As empresas especializadas no desenvolvimento destas tecnologias estão travando uma verdadeira guerra tecnológica, cujo objetivo, é o reconhecimento de seus produtos como a melhor ferramenta existente no mercado. Foi o que fez Steve Jobs em junho de 2007 quando lançou o iPhone OS . Ele não só saiu na frente da concorrência como também viu o seu produto se tornar objeto de desejo de muita gente. Diante do sucesso claro do iPhone OS, a Google, com seu objetivo de dominar o mundo, não poderia ficar de fora desta disputa, uma vez que o inovador iPhone da Apple começava a monopolizar o promissor mercado da computação móvel. Esta nova vertente então passou a virar realidade para as mais variadas empresas do ramo da tecnologia da informação, fazendo com que estas fossem obrigadas a investirem e se prepararem para esse novo alvo – dispositivos móveis. Notada esta tendência do mercado, a Google então começou a anunciar um novo lançamento em resposta ao crescente sucesso da concorrência no ambiente mobile . Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  6. Tudo começou em 2005 quando a gigante Google resolveu adquirir a Android Inc., uma empresa da Califórnia. A promessa do Android foi levar às empresas uma alternativa mais barata e mais flexível de sistema operacional para smartphones . Curiosamente, as versões do Android têm nomes de doces e seguem uma ordem alfabética: Cupcake ( 1.5 – Bolinho ) Donut ( 1.6 – Rosquinha ) Eclair ( 2.1 – Bomba ) Froyo ( 2.2. – Yogurt ) Gingerbread ( 2.3 – Pão de Mel ) Apesar dos vários concorrentes ( Apple – IOS, RIM – BlackBerry, Nokia – Symbian, Microsoft – Windows Phone 7 ), ao que tudo indica, apenas um, em conjunto com o Android, tem reais chances de brigar pela liderança. O iPhone , da Apple. O iPhone já conquistou sua legião de adeptos com sua interface fácil, design diferenciado e uma grande disponibilidade de aplicativos na loja da Apple . Do outro lado, o sistema operacional Android alcançou com menos de dois anos de mercado o que outros sistemas não conseguiram em muitos anos de existência. Um ponto importante na aceitação do Android é a sua flexibilidade na utilização do sistema em diversos celulares de diferentes fabricantes. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  7. O Android consiste em uma nova plataforma de desenvolvimento para aplicativos móveis, baseada em um sistema operacional Linux, com diversas aplicações já instaladas e, ainda, um ambiente de desenvolvimento bastante poderoso, ousado e flexível. O Android causou um grande impacto quando foi anunciado, atraindo a atenção de muita gente. Podemos dizer que isso aconteceu porque por trás desta incrível plataforma está nada mais nada menos do que a Google, a empresa que está revolucionando a internet no mundo atual. Entretanto, não é apenas a Google que está nesta jogada, e sim um grupo formado por empresas líderes do mercado de telefonia. Esse grupo, chamado de Open Handset Alliance (OHA), é um grupo formado por gigantes do mercado de telefonia de celulares liderados pela Google, com a intenção de padronizar uma plataforma de código aberto e livre para celulares, deixando assim os consumidores mais satisfeitos com o produto final, além de criar uma plataforma moderna e flexível para o desenvolvimento de aplicações coorporativas. Esta flexibilidade da plataforma permite que cada fabricante possa realizar alterações no código-fonte para customizar seus produtos, e o melhor de tudo, sem a necessidade de compartilhar essas alterações com ninguém. O Android também é free , e os fabricantes podem usar sem precisar pagar por isso. A licença do Android lhes dão esta possibilidade, o que do ponto de vista de empresas de telefonia móvel é uma característica relevante no momento de decidir o sistema operacional de seus aparelhos. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  8. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com Faça aqui suas anotações a respeito deste tópico. ______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
  9. Todo celular tem uma tela inicial com alguns ícones e um menu, certo? Agora, você já pensou em trocar algumas dessas telas por uma tela customizada desenvolvida por você ? Com Android, tudo é possível. Sua arquitetura é muito flexível e você pode integrar aplicações nativas com sua aplicação, ou até mesmo substituir qualquer aplicação nativa existente por uma que você mesmo criou. Por exemplo, imagine que sua aplicação precise consultar a agenda de contatos para selecionar determinado amigo, e logo depois visualizar o endereço dele em um mapa. Bom, que existe a agenda de contatos e o Google Maps no Android todo mundo sabe, mas será que é possível utilizá-los e integrá-los em nossas aplicações? A resposta é sim. Outro ponto forte do Android é que seu sistema operacional é baseado no Linux, e ele mesmo se encarrega de gerenciar a memória e os processos. Isso permite que diversas aplicações possam ser executadas ao mesmo tempo, permitindo que aplicações em segundo plano consigam executar sem que o usuário perceba, enquanto ele está acessando a internet ou atendendo uma ligação, por exemplo. É claro que não podemos esquecer dos recursos visuais e aquelas funcionalidades que impressionam um usuário comum. Nesse quesito o Android certamente atende as expectativas. O Android tem suporte a gráficos 3D baseados na especificação 1.0 da OpenGL ES e, dessa forma é possível criar jogos com uma qualidade excelente de resolução. O Android tem muitos diferenciais interessantes e uma arquitetura realmente flexível focada na integração de aplicações. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  10. Outra boa notícia é que podemos utilizar a consagrada linguagem Java para desenvolver as aplicações, usufruindo de todos os recursos a que temos direito. O sistema operacional do Android foi baseado no Kernet 2.6 do Linux, e é responsável por gerenciar a memória, os processos, threads e a segurança dos arquivos e pastas, além de redes e drivers. Cada aplicativo no Android dispara um novo processo no sistema operacional. Alguns deles podem exibir uma tela para o usuário, enquanto outros podem ficar em execução em segundo plano por tempo indeterminado. Diversos processos e aplicativos podem ser executados simultaneamente, e o Kernel do sistema operacional é o responsável por realizar todo controle de memória. Caso necessário, o próprio sistema operacional pode decidir encerrar alguns processos para liberar memória e recursos, e talvez até reiniciar o mesmo processo posteriormente quando a situação estiver controlada. Toda segurança do Android é baseada na segurança do Linux. No Android cada aplicação é executada em um único processo e cada processo por sua vez possui uma thread dedicada. Para cada aplicação instalada no celular é criado um usuário no sistema operacional para ter acesso a sua estrutura de diretórios. Desta forma nenhum outro usuário pode ter acesso a esta aplicação. E para alegria geral da nação é possível desenvolver uma aplicação para Android utilizando a linguagem Java em seu ambiente de desenvolvimento preferido, como o Eclipse, Netbeans ou IntelliJ IDEA. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  11. Você já sabe que a linguagem Java é utilizada para construir aplicações para o Android. O fato é que em seu sistema operacional não existe uma máquina virtual Java (JVM). Na verdade, o que temos é uma máquina virtual chamada Dalvik que é otimizada para execução em dispositivos móveis. Ao desenvolver as aplicações para o Android você vai utilizar a linguagem Java e todos os seus recursos normalmente, mas depois que o bytecode ( .class ) é compilado ele é convertido para o formato .dex ( Dalvik Executable ), que representa a aplicação do Android compilada. Depois disso, os arquivos .dex e outros recursos como imagens, são compactados em um único arquivo com a extensão .apk (Android Package File), que representa a aplicação final, pronta para ser distribuída e instalada. Ao utilizar o ambiente de desenvolvimento do Eclipse, todo este fluxo de criação do Android Package File é realizado automaticamente. Ao contrário das máquinas virtuais Java, que são máquinas de pilha, a máquina virtual Dalvik possui uma arquitetura baseada em registradores, reduzida para utilizar menos espaço na memória, que nestes dispositivos são recursos escassos. A partir da versão 2.2 do Android, a máquina virtual Dalvik possui um compilador just-in-time. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  12. O Android é a primeira plataforma para aplicações móveis completamente livre e de código aberto ( open-source ), o que representa uma grande vantagem para sua evolução, uma vez que diversos programadores do mundo inteiro poderão contribuir para melhorar a plataforma, adicionando novas funcionalidades ou simplesmente corrigindo falhas. Já os desenvolvedores de aplicações podem desfrutar de uma plataforma de desenvolvimento moderna com diversos recursos incríveis. Para os fabricantes de celulares, isso também é uma grande vantagem, uma vez que é possível utilizar o sistema operacional do Android em seus celulares sem ter que pagar por isso. Além disso, como foi dito anteriormente, a licença do Android, a Apache Software Foundation (ASF) permite que alterações sejam feitas no código-fonte para criar aplicações customizadas sem precisar compartilhar estas alterações com ninguem. Todos saem ganhando com essa abordagem do código-fonte aberto. Os consumidores, com dispositivos mais baratos e mais inovadores; as operadoras, com o baixo custo de dispositivos e a maior flexibilidade para customização; os fabricantes de dispositivos, com o baixo custo de softwares, e flexibilidade para prover tipos de produtos diferentes; as empresas de software, com a facilidade de integração entre aplicações; e os desenvolvedores, que tem acesso a API do sistema, e possui um custo reduzido na distribuição e comercialização de serviços criados. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  13. Para promover o Android a Google começou investindo pesado, e assim que a primeira versão do SDK foi lançada, também foi anunciado o famoso concurso Android Developer Challenge (ADC), com mais de US$ 10 milhões em prêmios. O prazo para enviar as aplicações era até 14 de abril de 2008, e o concurso foi dividido em duas fases. Na primeira fase, as 50 melhores aplicações recebiam US$ 25.000 e, na segunda, mais 20 das melhores aplicações seriam selecionadas para receber US$ 275.000, e algumas US$ 100.000. Na primeira etapa as aplicações foram testadas no próprio emulador do Android, porque na época nenhum celular com o Android tinha sido lançado. Isso foi uma grande sacada da Google para melhorar a plataforma e ajudar e testá-la, sendo que desenvolvedores de todo o mundo estavam interessados em desenvolver as aplicações para talvez faturar a bolada. Esse concurso literalmente agitou o mundo todo, e com isso o Google conseguiu testar o SDK e consolidar seu produto. A segunda parte foi anunciada para acontecer somente depois que o primeiro celular com o Android fosse lançado, e dessa vez as aplicações seriam testadas em um aparelho real, e não mais em um emulador. Nesta competição, foram aceitos todos os tipos de aplicativos, sendo que os mais inovadores tinham maior relevância, pois exploravam as funcionalidades da plataforma. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  14. Para auxiliar a distribuição das aplicações do Android, além da divulgação de sua nova plataforma, foi criado o site Android Market: http://www.android.com/market/. O objetivo do site é fornecer aos desenvolvedores de aplicativos um tipo de repositório para disponibilizar suas aplicações. Basta cadastrar-se e enviar sua aplicação. Para publicar uma aplicação no Android Market, o desenvolvedor precisa pagar a taxa de US$ 25 e concordar com os termos de uso da ferramenta. Depois disso, o aplicativo já pode ser instalado por outros usuários. O site também contêm comentários e classificações a respeito da sua aplicação, com o objetivo de avaliar o produto lançado. Uma boa notícia para os desenvolvedores é que 70% dos lucros com os aplicativos vendidos serão repassados para quem os desenvolveu. Se você deseja ver na prática como o Android Market funciona e não possui um aparelho para testar, procure pelos vídeos no YouTube, que contém ótimas recomendações. Uma das grandes vantagens do Android Market, é que ele filtra a lista de aplicações disponíveis, deixando apenas aquelas compatíveis com o dispositivo do usuário. É importante ressaltar que a ferramenta Android Market não é open-source. Apenas dispositivos Android que atendem aos requisitos de compatibilidade da Google que podem instalar e utilzar a aplicação. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  15. Em recente pesquisa realizada pela AdMob – empresa especializada em publicidade para dispositivos móveis – pode-se perceber o crescimento mês a mês da plataforma Android no mercado mundial dos smartphones. E surpreendentemente o sistema vem ganhando espaço frente aos principais sistemas operacionais. O tráfego gerado pela plataforma Android já ultrapassa o tráfego gerado pelo iPhone, batendo números que pareciam inalcançáveis. Antenados no assunto já previam esse rápido crescimento do Android, que é distribuído livremente às dezenas de fabricantes espalhados pelo mundo, frente á hegemonia da Apple e do poderoso iPhone. O mais importante deste cenário é pensar nos desdobramentos que esta guerra trará para as empresas que desenvolvem aplicativos para esses dispositivos e no processo de adaptação diante de tantas mudanças. Um ponto que merece atenção é que o publico tem aumentado não apenas em número, mas também em diversidade, tendo em vista que existem smartphones que custam menos de R$ 300,00 (trezentos reais). Com isso, podemos encontrar dispositivos como esses na mão de estudantes, profissionais liberais e comerciantes dos mais variados ramos, deixando de ser realidade apenas para empresários de grande porte. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  16. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com Android está : APROVADO! Após esta introdução sobre a plataforma e o contexto em que ela se encontra no mercado mobile , vamos agora preparar nosso ambiente de desenvolvimento para começarmos a utilizá-la.
  17. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com Faça aqui suas anotações a respeito deste tópico. _________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
  18. Para iniciar o desenvolvimento de aplicações para o Android, é necessário instalar o Android SDK, que contém o emulador do dispositivo e todas as ferramentas necessárias para a configuração do ambiente. O Android SDK é o software utilizado para desenvolver aplicações para a plataforma Android que oferece uma API completa para a linguagem Java, com todas as classes necessárias para o desenvolvimento de sistemas no ambiente mobile . No SDK existe um emulador que pode ser executado como um aplicativo comum, porém no Eclipse existe um plugin que visa justamente integrá~lo ao ambiente de desenvolvimento da IDE para facilitar a atividade de execução da aplicação desenvolvida para testá-la. O nome deste plugin é ADT (Android Development Tools), e pode ser baixado a partir do endereço: http://developer.android.com/sdk/eclipse-adt.html. Com o plugin é possível iniciar o emulador de dentro do Eclipse, instalando a aplicação no emulador automaticamente e, com o mecanismo de debug da IDE integrado, sendo possível depurar seu código-fonte como qualquer outro código-fonte desenvolvido em Java. Também é possível plugar um celular real na porta USB do computador e executar as aplicações desenvolvidas diretamente no dispositivo. Isso sem dúvida facilita muito os testes em aparelhos reais e torna o desenvolvimento mais produtivo. O único pré-requisito é instalar o driver USB do celular no computador. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  19. O Android SDK é suportado nos seguintes sistemas operacionais: Windows XP (32 bits), Vista (32 ou 64 bits) ou Windows 7 (32 ou 64 bits) Mac OS X 10.5.8 ou superior (somente x86) Linux (testado no Linux Ubuntu) A seguir, veja as informações sobre os ambientes de desenvolvimento suportados: Eclipse 3.5 (Galileo), Eclipse 3.6 (Helios) ou superior. JDK 5 ou JDK 6 (apenas a JRE não é suficiente) Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  20. LABORATÓRIO 1 É hora de colocar em prática tudo o que foi falado até o momento. Não se esqueça de tirar dúvidas com o professor. Aproveite !! Mãos à obra ! Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  21. Faça aqui suas anotações a respeito deste tópico. _________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  22. Uma tela no Android pode ser criada de duas maneiras: utilizando um arquivo XML que define os elementos e o layout da tela, ou utilizando diretamente as classes da API Java fornecida pelo Android SDK, de forma similar ao Swing. A classe android.app.Activity é similar à classe JFrame do Swing e representa basicamente uma tela de uma aplicação. Uma Activity define uma tela, controla seu estado, a passagem de parâmetros de uma tela para a outra além dos métodos que serão invocados quando o usuário realizar alguma ação. Para criarmos nossa própria Activity, basta criarmos uma subclasse de android.app.Activity. Cada aplicação nativa do Android, como o browser, a tela inicial (Home), a agenda e a própria tela para discar para um número de telefone é definida por uma Activity. Portanto podemos considerar esta classe como uma das classes mais importantes do Android. Uma Activity além das funções já descritas acima, precisa exibir elementos visuais na tela, os quais no Android são representados pela classe android.view.View. Esta classe tem por finalidade desenhar algo na tela, ou seja, compor uma Activity. Estas duas classes, View e Activity, sempre andam juntas. Sendo assim, vamos conhecer um pouco mais sobre estes elementos visuais e a classe que os representa. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  23. A classe View, vem do pacote android.view.View. Uma View pode ser um simples componente gráfico (botão, checkbox, imagem) ou uma view complexa, que atua como um gerenciador de layout, no qual pode conter várias views-filhas com a função de organizar as mesmas na tela (Activity). Esta classe é essencial na construção de componentes gráficos para compor uma interface com o usuário. Além de representar vários objetos de desenho para uma interface gráfica, a classe View é também responsável pela manipulação de eventos gerados através de uma Activity. É importante destacar que a View pode se referir a um grupo de elementos gráficos que compõem uma tela, ou à um único elemento desta tela, como por exemplo um botão dentro de um menu. Uma visão pode ser criada de duas maneiras. A primeira é através de arquivos XML, o que provê uma grande facilidade na divisão entre as camadas de visão e negócio, definidas pelo padrão MVC (Model-View-Controller). E a segunda, através da extensão de classes providas pelo Android SDK, semelhante a API Swing ou AWT do desenvolvimento Desktop em Java. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  24. Junto as demais classes de uma aplicação Android, existe uma classe chamada R.java. Fique tranqüilo, ela está aí para ajudar. A classe R é criada automaticamente pelo plugin do Eclipse e nunca deve ser alterada manualmente. A classe R contém constantes para acessar os diversos recursos do projeto. Um recurso pode ser simplesmente uma imagem ou um arquivo XML que define alguma tela da aplicação. Sempre que um novo arquivo for adicionado ao projeto, uma nova constante será criada na classe R para representá-lo. Esses arquivos, independentemente do seu tipo, são chamados de recursos ( resources ). Por exemplo, se um arquivo chamado smile.png for inserido na pasta drawable , a classe R será automaticamente atualizada para refletir esse novo recurso. Nesse caso uma constante chamada R.drawable.smile será criada automaticamente na classe R. Como padrão cada constante é criada com o nome da pasta onde o recurso foi inserido e com o mesmo nome do arquivo, sem sua extensão. Cada uma destas constantes é do tipo int e possui um valor único dentro do projeto. É importante destacar que independentemente do tipo do arquivo e da pasta onde ele for adicionado, seu nome deve ser minúsculo e não deve conter espaços. Caso um arquivo de nome inválido for fornecido, a classe R não será compilada corretamente. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  25. O arquivo AndroidManifest.xml é a base de uma aplicação Android. Ele é obrigatório e deve estar sempre na pasta raiz do projeto, contendo todas as configurações necessárias para executar a aplicação, como por exemplo, o nome das classes que representam cada Activity, e várias outras configurações que seráo apresentadas ao longo do curso. Ex: Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  26. A pasta drawable contém as imagens utilizadas no projeto. Atualmente existem diversos celulares Android com resoluções de tela diferentes. Para organizar estas imagens de acordo com a resolução do dispositivo, existem três pastas abaixo do diretório res , a pasta drawable-hdpi , para armazenar imagens de alta resolução, drawable-ldpi , para armazenar imagens de baixa resolução, e por fim a pasta drawable-mdpi , para armazenar imagens de média resolução. A pasta layout contém os arquivos XML que definem os layouts de construção das telas da aplicação. O diretório values contém os arquivos XML utilizados para a internacionalização da aplicação e outras configurações. Os arquivos deste diretório é composto por um layout simples com chave=valor. E por fim, o diretório assets armazenará os recursos opcionais ao projeto, como por exemplo, uma fonte customizada. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  27. Em Java, para imprimir uma mensagem no console usa-se o comando System.out.println() , mas se em uma aplicação Android você executar esta instrução esperando que algo seja escrito, irá se decepcionar, pois nada irá acontecer. Isso ocorre porque na máquina virtual Dalvik o stdout e stderr (System.out e System.err) redirecionam sua saída para a pasta dev/null. Por esta razão, é recomendável que em aplicações Android seja utilizada a classe android.util.Log , que contém métodos utilitários para imprimir informações com os níveis de detalhes desejados. Ao utilizar a classe android.util.Log , é possível criar logs de informação, debug, alertas e erros, de forma similar ao popular framework Log4J da Jakarta. Cada log pode ser escrito em uma determinada categoria, para que posteriormente apenas as mensagens desejadas seja recuperadas. Utilizando esta classe, o Android irá gerar um log na ferramenta LogCat, a qual tem por finalidade gerenciar todos os logs do sistema operacional. Os métodos da classe Log são bem simples, e começam com a primeira letra do nível de severidade (informação, debug, alerta, erro) escolhido. Por exemplo, para imprimir um log com nível de alerta é utilizado o método Log.w( Categoria, mensagem) . O w é da palavra warning (alerta) em inglês. É importante lembrar de informar a Categoria do log, representada por uma String, para que seja possível filtrar os logs gerados. Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com
  28. LABORATÓRIO 2 É hora de colocar em prática tudo o que foi falado até o momento. Não se esqueça de tirar dúvidas com o professor. Aproveite !! Mãos à obra ! Desenvolvida por Bruno Zafalão – brunomzafalao@gmail.com