Android

3,249
-1

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,249
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
199
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Android

  1. 1. Android<br />Renato Molina Tothrenatomolinat@gmail.com<br />
  2. 2. Agenda<br />
  3. 3. Agenda<br />Um poucosobre o mercadomóvel<br />O que é o android?<br />A plataforma android<br />Arquitetura do android<br />Ambiente de desenvolvimento<br />Conceitosbásicos do android<br />Um Hello world no android<br />Preparando o ambiente<br />Conceitosbásicos<br />Activity<br />Intent<br />
  4. 4. Objetivos<br /><ul><li>Dar uma visão geral os congressitas da plataforma android para o desenvolvimento de aplicações.
  5. 5. Criação de um projeto básico demo, demonstrando os conceitos vistos.
  6. 6. Apresentar uma visão do mercado.</li></li></ul><li>Introdução<br />
  7. 7. Alguns dados estatísticos<br /><ul><li>Mais de 3 bilhões de pessoas no mundopossuem um celular, cerca de metadedapopulaçãomundial.
  8. 8. Um mercadoemexpansão.
  9. 9. Mercado de android subiu 10% em 2010 e tende a dobrar em 2011.</li></li></ul><li>O mundo da mobilidade<br /><ul><li>Os usuáriosestãocadavezmaisconectados e exigentes.
  10. 10. Celularesdeixaram de ser simples telefones.
  11. 11. O Hardware estácadavezmaispoderoso.
  12. 12. Grandessistemasestãocadavezmaistendo a necessidade de convergirparaessarealidade.</li></li></ul><li>Plataformas móveis<br /><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.
  13. 13. O android é a resposta do Google paraesseramo.</li></li></ul><li>Open Headset Aliance<br /><ul><li>Grupoformadosporgigantes do mercado de telefonialideradospelo Google.
  14. 14. O objetivo principal do grupo é transformar a experiênciamóvel dos usuáriosaoredor do mundo.
  15. 15. Algunsmembros: Motorola, HTC, LG, Samsung, Sony Ericson, Toshiba, Intel, Asus, entre outros.</li></ul>http://www.openhandsetalliance.com/<br />
  16. 16. O que é o android?<br /><ul><li>O Android é a nova plataforma do Google voltada para dispositivos móveis.
  17. 17. Baseada na plataforma Java com sistema operacional Linux.
  18. 18. 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.
  19. 19. Android é a primeira plataforma móvel completa, aberta e livre.</li></li></ul><li>O que é o android?<br /><ul><li>SistemaOperacionalMultitarefa.
  20. 20. Fácilintegração com as Aplicaçõesnativas e serviços do google.
  21. 21. Códigoaberto e livre.
  22. 22. Poderosoambiente de desenvolvimento.</li></li></ul><li>Android Market<br /><ul><li>Local ondeosdesenvolvedorespodempostarsuasaplicações.
  23. 23. 70% dos lucrossãorepassadosaosdesenvolvedores.
  24. 24. Angry birds</li></li></ul><li>Plataforma<br /><ul><li>Framework de Aplicação permitindo reuso de componentes;
  25. 25. Navegador Web Integrado baseado na engine open source WebKit;
  26. 26. Gráficos Otimizados por meio de uma biblioteca de gráficos 2D; e gráficos 3D baseados na especificação OpenGL ES 1.0;
  27. 27. SQLite para armazenamento de dados em formato de estruturas relacionais;
  28. 28. Audio (formatos MP3, AAC, AMR), vídeo (MPEG4 e H.264) e imagens (formatos JPG, PNG, GIF) e suporte a Flash
  29. 29. Bluetooth, EDGE, 3G, WiFi (dependente de hardware) e Tethering.
  30. 30. Câmera, GPS, bússola, e acelerômetro (dependente de hardware)</li></li></ul><li>Alguns Aparelhos<br />
  31. 31. Android OS, v2.2 (Froyo)<br />Qualcomm Snapdragon QSD8250 1 GHz processor<br />512MB RAM<br />AMOLED capacitive touchscreen<br />480 x 800 pixels, 3.7 inches<br />O.S. Flash support.<br />15<br />Nexus One<br />
  32. 32. Android OS, v2.1 (Eclair)<br />ARM Cortex A8 1GHz processor<br />512MB RAM<br />Super AMOLED capacitive touchscreen<br />480 x 800 pixels, 4.0 inches<br />O.S. Flash support.<br />16<br />Samsung Galaxy S<br />
  33. 33. iPhone OS (based on Mac OS)<br />1 GHz Apple A4 processor <br />32 GB storage<br />Facetime<br />17<br />Iphone 4<br />
  34. 34. Alta resolução<br />Processador com dois nucleos<br />Foi feito para ser um tablet!<br />18<br />Xoom - Tablet<br />
  35. 35. Exemplos<br /><ul><li>Vídeos demonstrativos do android.</li></li></ul><li>iOS x Android<br /><ul><li>Maisaparelhos
  36. 36. Atendemelhor um determinadonicho
  37. 37. Menorcusto
  38. 38. Diversidade de dispositivosespecificos
  39. 39. PlataformaLivre
  40. 40. Maior valor parao desenvolvedor
  41. 41. Semburocraciaparamandaruma app no market</li></li></ul><li>O que vem por ai?<br /><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.
  42. 42. A aplicação permite o download e a instalação de novos aplicativos, através do AndroidMarket. </li></li></ul><li>Arquitetura<br />
  43. 43. Arquitetura do Android<br />
  44. 44. Camada de aplicação<br /><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.
  45. 45. Aplicações escritas na linguagem Java.</li></li></ul><li>Aplication Framework<br /><ul><li>Componentes que permitirão com que novas estruturas sejam utilizadas para futuras aplicações.
  46. 46. 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.
  47. 47. Provedores de conteúdo que habilitam às aplicações acessar dados de outras aplicações.</li></li></ul><li>Dalvik VM<br /><ul><li>Máquina Virtual do Android.
  48. 48. Toda aplicaçãorodadentro do seupróprioprocesso.
  49. 49. Executaarquivos .dex, bytecodes de java otimizadospara o android.</li></li></ul><li>Preparando o ambiente<br />
  50. 50. Ambiente de desenvolvimento<br /><ul><li>Poderoso Ambiente de Desenvolvimento, totalmente integrado ao Eclipse.
  51. 51. Um Emuladorcompleto.
  52. 52. Ferramentaspara Debug e análise de código.
  53. 53. Analisador de memória e performance.
  54. 54. Ferramentaparaanálise de hieraquia de Layouts.</li></li></ul><li>Ambiente de desenvolvimento<br /><ul><li>Vamos montar o nosso ambiente e fazer um programa exemplo.</li></li></ul><li>Conceitos básicos<br />
  55. 55. Activity<br /><ul><li>Representa uma tela da aplicação composta por elementos visuais (android.view.view)
  56. 56. Similar a JFrame do Swing
  57. 57. O método setContentView(view) define qual a view principal da tela e deve sempre ser chamado no onCreate()</li></li></ul><li>A classe R<br /><ul><li>Criada automaticamente e nunca deve ser modificada.
  58. 58. Define constantes para acesso aos recursos do projeto.
  59. 59. Ao utilizar um recurso, não precisamos colocar sua extensão.
  60. 60. 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></li></ul><li>Android Manifest<br /><ul><li>É a base de qualquer aplicação android, contendo as configurações necessárias para executar a aplicação.
  61. 61. Toda activity deve ser declarada no manifest.</li></li></ul><li>Acessando elementos da tela<br /><ul><li>findViewById(R.id.nome_recurso);
  62. 62. Usado para utilizar recursos da aplicação.
  63. 63. Acesso aos recurso através dos Id’s da classe R</li></li></ul><li>LogCat<br /><ul><li>Fazem parte do pacote android.util.Log
  64. 64. Podemos filtrar esses Log’s no DDMS
  65. 65. É o nosso System.out.print(“”);</li></li></ul><li>Activity<br />
  66. 66. Características<br /><ul><li>Gerenciadas pela pilha de Activity.
  67. 67. Toda activity possui um ciclo de vida.
  68. 68. Todas devem ser declaradas no Manifest
  69. 69. Toda classe activity deve herdar de Activity.</li></ul>Ex: MyActivityextendsActivity<br />
  70. 70. Ciclo de Vida<br />
  71. 71. Navegação entre as telas<br /><ul><li>O método startActivity(Intent) é usado para iniciar uma nova atividade (Activity), que será colocada no topo da atividade pilha.
  72. 72. O método sempre deve receber por parâmetro a Intent da activity a ser inicializada.
  73. 73. Ao inicializar, a nova activity ficará no topo da pilha.</li></li></ul><li>Recebendo parâmetros de outra activity<br /><ul><li>Às vezesnecessitamosobter um resultado de umaatividadequandoelaterminasuaexecução.
  74. 74. 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.
  75. 75. Para isso, utilizamos o método startActivityForResult(intent, data)
  76. 76. Você receberá o retorno da execução no método onActivityResult(intent, data)</li></li></ul><li>Passando parâmetros para outra activity<br /><ul><li>Passamos parâmetros para outras telas através das Intent’s.
  77. 77. O método putExtra adiciona novos valores a intent que iniciará a nova activity.</li></li></ul><li>Encerrando uma activity<br /><ul><li>Para encerrar um activity utilizamos o método finish()
  78. 78. Ao utilizá-lo, o onDestroy() é invocado</li></li></ul><li>Exemplo<br /><ul><li>Vamos ver um exemplo prático.</li></li></ul><li>Dúvidas?<br />
  79. 79. Referências Bibliográficas<br />Google Android<br />- Autor: Lecheta, Ricardo R.<br /><ul><li>Editora: Novatec</li></ul>Desenvolvimento de Aplicações Android<br /> - Autor: Mednieks, Zigurd; Meike, Blake; <br /> - Editora: Novatec<br />Android paradesenvolvedores<br /> - Autor: Pereira, Lucio Camilo Oliva; <br /> - Editora: Brasport<br />Baseados nos slides de Felipe Ferraz<br />
  80. 80. Alguns Links interessantes<br />http://developer.android.com<br />http://forum.portalandroid.org/<br />http://www.androidbrasil.com/<br />
  81. 81. Obrigado<br />RenatoMolina Toth<br />renatomolinat@gmail.com<br />@renatomolinat<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×