Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Android Palestra

2,018 views

Published on

Published in: Technology
  • Be the first to comment

Android Palestra

  1. 1. Android Renato Molina [email_address]
  2. 2. Agenda
  3. 3. Agenda <ul><li>Um pouco sobre o mercado móvel </li></ul><ul><li>O que é o android? </li></ul><ul><li>A plataforma android </li></ul><ul><li>Arquitetura do android </li></ul><ul><li>Ambiente de desenvolvimento </li></ul><ul><li>Conceitos básicos do android </li></ul><ul><li>Um Hello world no android </li></ul><ul><li>Preparando o ambiente </li></ul><ul><li>Conceitos básicos </li></ul><ul><li>Activity </li></ul><ul><li>Intent </li></ul>
  4. 4. Objetivos <ul><li>Dar uma visão geral os congressitas da plataforma android para o desenvolvimento de aplicações. </li></ul><ul><li>Criação de um projeto básico demo, demonstrando os conceitos vistos. </li></ul><ul><li>Apresentar uma visão do mercado. </li></ul>
  5. 5. Introdução
  6. 6. Alguns dados estatísticos <ul><li>Para cada 1,5 bilhões de televisores existem 3 bilhões celulares no mundo. </li></ul><ul><li>Mais de 3 bilhões de pessoas no mundo possuem um celular, cerca de metade da população mundial. </li></ul><ul><li>Um mercado em expansão. </li></ul><ul><li>Mercado de android subiu 10% em 2010 e tende a dobrar em 2010. </li></ul>
  7. 7. O mundo da mobilidade <ul><li>Os usuários estão cada vez mais conectados e exigentes. </li></ul><ul><li>Celulares deixaram de ser simples telefones. </li></ul><ul><li>O Hardware está cada vez mais poderoso. </li></ul><ul><li>Grandes sistemas estão cada vez mais tendo a necessidade de convergir para essa realidade. </li></ul>
  8. 8. Plataformas móveis <ul><li>Várias são as plataformas hoje para desenvolvimento de aplicações para dispositivos móveis. Symbian, Brew, JavaME, .NET Compact Framework e Flash Lite. </li></ul><ul><li>O android é a resposta do Google para esse ramo. </li></ul>
  9. 9. Open Headset Aliance <ul><li>Grupo formados por gigantes do mercado de telefonia liderados pelo Google. </li></ul><ul><li>O objetivo principal do grupo é transformar a experiência móvel dos usuários ao redor do mundo. </li></ul><ul><li>Alguns membros: Motorola, HTC, LG, Samsung, Sony Ericson, Toshiba, Intel, Asus, entre outros. </li></ul><ul><li>http://www.openhandsetalliance.com/ </li></ul>
  10. 10. O que é o android? <ul><li>O Android é a nova plataforma do Google voltada para dispositivos móveis. </li></ul><ul><li>Baseada na plataforma Java com sistema operacional Linux. </li></ul><ul><li>Busca inovar e acelerar o desenvolvimento de aplicações e serviços, trazendo aos usuários uma experiência mais rica em termos de recursos. </li></ul><ul><li>Android é a primeira plataforma móvel completa, aberta e livre. </li></ul>
  11. 11. O que é o android? <ul><li>Sistema Operacional Multitarefa. </li></ul><ul><li>Fácil integração com as Aplicações nativas e serviços do google. </li></ul><ul><li>Código aberto e livre. </li></ul><ul><li>Poderoso ambiente de desenvolvimento. </li></ul>
  12. 12. Android Market <ul><li>Local onde os desenvolvedores podem postar suas aplicações. </li></ul><ul><li>70% dos lucros são repassados aos desenvolvedores. </li></ul><ul><li>Angry birds </li></ul>
  13. 13. Plataforma <ul><li>Framework de Aplicação permitindo reuso de componentes; </li></ul><ul><li>Navegador Web Integrado baseado na engine open source WebKit; </li></ul><ul><li>Gráficos Otimizados por meio de uma biblioteca de gráficos 2D; e gráficos 3D baseados na especificação OpenGL ES 1.0; </li></ul><ul><li>SQLite para armazenamento de dados em formato de estruturas relacionais; </li></ul><ul><li>Audio (formatos MP3, AAC, AMR), vídeo (MPEG4 e H.264) e imagens (formatos JPG, PNG, GIF) e suporte a Flash </li></ul><ul><li>Bluetooth, EDGE, 3G, WiFi (dependente de hardware) e Tethering. </li></ul><ul><li>Câmera, GPS, bússola, e acelerômetro (dependente de hardware) </li></ul>
  14. 14. Alguns Aparelhos
  15. 15. <ul><li>Android OS, v2.1 (Eclair) </li></ul><ul><li>ARM Cortex A8 600 MHz, PowerVR SGX530 graphics </li></ul><ul><li>384 MB RAM </li></ul><ul><li>microSD, up to 32GB, 16GB included </li></ul><ul><li>480 x 854 pixels, 3.7” </li></ul><ul><li>Accelerometer sensor </li></ul>Motorola Droid (Milestone)
  16. 16. <ul><li>Android OS, v2.2 (Froyo) </li></ul><ul><li>Qualcomm Snapdragon QSD8250 1 GHz processor </li></ul><ul><li>512MB RAM </li></ul><ul><li>AMOLED capacitive touchscreen </li></ul><ul><li>480 x 800 pixels, 3.7 inches </li></ul><ul><li>O.S. Flash support. </li></ul>Nexus One
  17. 17. <ul><li>Android OS, v2.1 (Eclair) </li></ul><ul><li>ARM Cortex A8 1GHz processor </li></ul><ul><li>512MB RAM </li></ul><ul><li>Super AMOLED capacitive touchscreen </li></ul><ul><li>480 x 800 pixels, 4.0 inches </li></ul><ul><li>O.S. Flash support. </li></ul>Samsung Galaxy S
  18. 18. <ul><li>Android OS, v2.1 (Eclair) </li></ul><ul><li>ARM Cortex A8 1GHz processor </li></ul><ul><li>512MB RAM </li></ul><ul><li>Super AMOLED capacitive touchscreen </li></ul><ul><li>480 x 800 pixels, 4.0 inches </li></ul><ul><li>O.S. Flash support. </li></ul>Motorola Shadow
  19. 19. <ul><li>iPhone OS (based on Mac OS) </li></ul><ul><li>1 GHz Apple A4 processor </li></ul><ul><li>512 MB RAM </li></ul><ul><li>32 GB storage </li></ul>Iphone 4
  20. 20. Exemplos <ul><li>Vídeos demonstrativos do android. </li></ul>
  21. 21. O que vem por ai? <ul><li>Com telas LCD com backlight de LEDs, full HD e tudo que se espera de uma TV de ponta, o grande diferencial é trazer o sistema operacional Android instalado, onde o usuário encontrará aplicações como o YouTube, Google Maps, previsão do tempo, calendário e navegador Web. </li></ul><ul><li>A aplicação permite o download e a instalação de novos aplicativos, através do Android Market. </li></ul>
  22. 22. Arquitetura
  23. 23. Arquitetura do Android
  24. 24. Camada de aplicação <ul><li>Na camada de aplicação está localizada uma lista de aplicações que incluem um cliente de e-mail, programa de SMS/MMS, calendário, mapas, navegador,gerenciador de contatos, entre outros. </li></ul><ul><li>Aplicações escritas na linguagem Java. </li></ul>
  25. 25. Aplication Framework <ul><li>Componentes que permitirão com que novas estruturas sejam utilizadas para futuras aplicações. </li></ul><ul><li>Um rico e extensível conjunto de componentes gráficos que pode ser utilizado para construir uma aplicação, bem como listas, grids, caixas de textos, botões, etc. </li></ul><ul><li>Provedores de conteúdo que habilitam às aplicações acessar dados de outras aplicações. </li></ul>
  26. 26. Dalvik VM <ul><li>Máquina Virtual do Android. </li></ul><ul><li>Toda aplicação roda dentro do seu próprio processo. </li></ul><ul><li>Executa arquivos .dex, bytecodes de java otimizados para o android. </li></ul>
  27. 27. Preparando o ambiente
  28. 28. Ambiente de desenvolvimento <ul><li>Poderoso Ambiente de Desenvolvimento, totalmente integrado ao Eclipse. </li></ul><ul><li>Um Emulador completo. </li></ul><ul><li>Ferramentas para Debug e análise de código. </li></ul><ul><li>Analisador de memória e performance. </li></ul><ul><li>Ferramenta para análise de hieraquia de Layouts. </li></ul>
  29. 29. Ambiente de desenvolvimento <ul><li>Vamos montar o nosso ambiente e fazer um programa exemplo. </li></ul>
  30. 30. Conceitos básicos
  31. 31. Activity <ul><li>Representa uma tela da aplicação composta por elementos visuais (android.view.view) </li></ul><ul><li>Similar a JFrame do Swing </li></ul><ul><li>O método setContentView(view) define qual a view principal da tela e deve sempre ser chamado no onCreate() </li></ul>
  32. 32. A classe R <ul><li>Criada automaticamente e nunca deve ser modificada. </li></ul><ul><li>Define constantes para acesso aos recursos do projeto. </li></ul><ul><li>Ao utilizar um recurso, não precisamos colocar sua extensão. </li></ul><ul><li>O nome dos arquivos adicionados, devem ser minúsculos e sem espaços, caso contrário, a classe R não será compilada corretamente. </li></ul>
  33. 33. Android Manifest <ul><li>É a base de qualquer aplicação android, contendo as configurações necessárias para executar a aplicação. </li></ul><ul><li>Toda activity deve ser declarada no manifest. </li></ul>
  34. 34. Acessando elementos da tela <ul><li>findViewById(R.id.nome_recurso); </li></ul><ul><li>Usado para utilizar recursos da aplicação. </li></ul><ul><li>Acesso aos recurso através dos Id’s da classe R </li></ul>
  35. 35. LogCat <ul><li>Fazem parte do pacote android.util.Log </li></ul><ul><li>Podemos filtrar esses Log’s no DDMS </li></ul><ul><li>É o nosso System.out.print(“”); </li></ul>
  36. 36. Activity
  37. 37. O que é? <ul><li>Uma tela da aplicação. </li></ul><ul><li>Trata todos os eventos gerados pela tela. </li></ul><ul><li>Composta por View’s (layouts). </li></ul><ul><li>Qualquer aplicação (Dialer, browser, etc) é uma activity. </li></ul>
  38. 38. Características <ul><li>Gerenciadas pela pilha de Activity. </li></ul><ul><li>Toda activity possui um ciclo de vida. </li></ul><ul><li>Todas devem ser declaradas no Manifest </li></ul><ul><li>Toda classe activity deve herdar de Activity. </li></ul><ul><ul><li>Ex: MyActivity extends Activity </li></ul></ul>
  39. 39. Ciclo de Vida
  40. 40. Navegação entre as telas <ul><li>O método startActivity(Intent) é usado para iniciar uma nova atividade (Activity), que será colocada no topo da atividade pilha. </li></ul><ul><li>O método sempre deve receber por parâmetro a Intent da activity a ser inicializada. </li></ul><ul><li>Ao inicializar, a nova activity ficará no topo da pilha. </li></ul>
  41. 41. Recebendo parâmetros de outra activity <ul><li>Às vezes necessitamos obter um resultado de uma atividade quando ela termina sua execução. </li></ul><ul><ul><li>Ex: Por exemplo, você pode iniciar uma atividade que permite ao usuário escolher uma pessoa em uma lista de contatos, quando termina, ele retorna a pessoa que foi selecionada. </li></ul></ul><ul><li>Para isso, utilizamos o método startActivityForResult(intent, data) </li></ul><ul><li>Você receberá o retorno da execução no método onActivityResult(intent, data) </li></ul>
  42. 42. Passando parâmetros para outra activity <ul><li>Passamos parâmetros para outras telas através das Intent’s. </li></ul><ul><li>O método putExtra adiciona novos valores a intent que iniciará a nova activity. </li></ul>
  43. 43. Encerrando uma activity <ul><li>Para encerrar um activity utilizamos o método finish() </li></ul><ul><li>Ao utilizá-lo, o onDestroy() é invocado </li></ul>
  44. 44. Exemplo <ul><li>Vamos ver um exemplo prático. </li></ul>
  45. 45. Dúvidas? ?
  46. 46. Referências Bibliográficas <ul><li>Google Android </li></ul><ul><ul><li>- Autor: Lecheta, Ricardo R. </li></ul></ul><ul><ul><li>Editora: Novatec </li></ul></ul><ul><li>Desenvolvimento de Aplicações Android </li></ul><ul><li>- Autor: Mednieks, Zigurd; Meike, Blake; </li></ul><ul><li> - Editora: Novatec </li></ul><ul><li>Apresentação Android </li></ul><ul><li>Felipe Ferraz – C.E.S.A.R </li></ul>
  47. 47. Alguns Links interessantes http://developer.android.com http://forum.portalandroid.org/ http://www.androidbrasil.com/
  48. 48. Obrigado Renato Molina [email_address] @renatomolinat

×