[Unicamp Frum Permanente] Android Faixa Branca 2011

  • Published on
    17-May-2015

  • View
    236

  • Download
    1

DESCRIPTION

Palestra ministrada no Frum Permanente de Software Livre da Unicamp

Transcript

  • 1. Android Faixa BrancaDouglas Drumonddrumond.douglas@gmail.com

2. E a? 3. E a? Motivao 4. E a? Motivao Por dentro do Android 5. E a? Motivao Por dentro do Android Por dentro das aplicaes 6. E a? Motivao Por dentro do Android Por dentro das aplicaes Ferramentas de desenvolvimento 7. Por que Android? 8. CrescimentoSource: Gartner (Feb 2011) 9. CrescimentoSymbian RIM MicrosoftAndroid iOS Other OS Source: Gartner (Feb 2011) 10. CrescimentoSymbian RIM MicrosoftAndroid iOS Other OSSymbian iOSAndroid MicrosoftRIM Other OSSource: Gartner (Feb 2011) 11. CrescimentoSymbian RIM MicrosoftAndroid iOS Other OSSymbian iOSAndroid MicrosoftRIM Other OSSource: Gartner (Feb 2011) 12. CrescimentoSymbian RIM MicrosoftAndroid iOS Other OSSymbian iOSAndroid MicrosoftRIM Other OSSource: Gartner (Feb 2011) 13. Android Market shareSource: Techcrunch & Google 14. Android Market shareSource: Techcrunch & Google 15. 100 milhes Total de Ativaes 16. Android Market share36 215 450k OEMsoperadorasdesenvolvedores310 112 modelospases 17. Android Market (apps) 18. Android Market (apps) Aproximadamente 200.000 19. Android Market (apps) Aproximadamente 200.000 4,5 bilhes de downloads 20. Android Market (apps) Aproximadamente 200.000 4,5 bilhes de downloads 1 bilho nos ltimos 60 dias 21. O que ? 22. O que ? Aplicaes Framework Bibliotecas Linux KernelDalvik 23. Livre 24. Livre 25. Livre 26. Livre 27. Livre the denition of open: "mkdir android ; cdandroid ; repo init -u git:// android.git.kernel.org/platform/manifest.git ; repo sync ; make" http://twitter.com/#!/arubin/status/27808662429 28. Verses 29. Verses 30. Arquitetura 31. ArquiteturaLinux Kernel 32. ArquiteturaBibliotecas Linux KernelDalvik 33. Arquitetura Framework Bibliotecas Linux KernelDalvik 34. Arquitetura Aplicaes Framework Bibliotecas Linux KernelDalvik 35. Arquitetura Aplicaes Framework Bibliotecas Linux KernelDalvik 36. Arquitetura 37. Arquitetura Linux Kernel Display DriverFlash Memory DriverKeypad DriverAudio DriverCamera DriverIPCWiFi DriverGerenciamento de energia 38. Arquitetura Aplicaes Framework Bibliotecas Linux KernelDalvik 39. Arquitetura 40. Arquitetura Dalvik 41. Arquitetura Dalvik Baseada em registradores .dex 42. Arquitetura Aplicaes Framework Bibliotecas Linux KernelDalvik 43. Arquitetura 44. Arquitetura Bibliotecas Surface ManagerSSLOpenGL ESSQLiteMedia FrameworkWebKitFreeTypelibc (bionic) 45. Arquitetura Aplicaes Framework Bibliotecas Linux KernelDalvik 46. Arquitetura 47. Arquitetura Application Framework Activity ManagerLocation ManagerWindow ManagerResource ManagerContent ProvidersNotication ManagerTelephony ManagerView System 48. Arquitetura Aplicaes Framework Bibliotecas Linux KernelDalvik 49. Arquitetura 50. Arquitetura Aplicaes HomeEmailContactsSMSPhoneMapsBrowserMusic 51. Dissecando as Aplicaes 52. Activity 53. Service 54. Content Provider 55. Intent 56. Intent 57. Intent 58. Intent 59. Intent 60. Intent 61. Intent Possui um alvo facultativo 62. Intent Possui um alvo facultativo Se no tiver especicado alvo, o sistema encontra um 63. Intent Possui um alvo facultativo Se no tiver especicado alvo, o sistema encontra um Pode executar uma Activity ou Service especco 64. Intent Possui um alvo facultativo Se no tiver especicado alvo, o sistema encontra um Pode executar uma Activity ou Service especco IntentFilters 65. Broadcast Receiver 66. Broadcast Receiver No possui interface (com usurio) 67. Broadcast Receiver No possui interface (com usurio) Roda em segundo plano 68. Broadcast Receiver No possui interface (com usurio) Roda em segundo plano Reage a mensagens de broadcast 69. Broadcast Receiver No possui interface (com usurio) Roda em segundo plano Reage a mensagens de broadcast Exemplo: carga de bateria 70. Service 71. Service Ciclo de vida completoCiclo de vida em atividadeonCreate()onStart()em execuoonDestroy()shutdown 72. Activity 73. Activity Interface 74. Activity Interface Um objetivo 75. Activity Interface Um objetivo Vrias por aplicativo 76. Activity Interface Um objetivo Vrias por aplicativo Pode iniciar outras activities 77. Activity 78. Activity 3 estados: ativa, em pausa e parada 79. Activity 3 estados: ativa, em pausa e parada 3 ciclos de vida 80. Activity 3 estados: ativa, em pausa e parada 3 ciclos de vida pode morrer a qualquer momento se no estiver ativa 81. Activity 82. Activity onCreate() 83. Activity onCreate()onStart() 84. Activity onCreate()onStart()onResume() 85. Activity onCreate()onStart()onResume()em execuo 86. Activity onCreate()onStart()onResume()em execuoonPause() 87. Activity onCreate()onStart()onResume()em execuoonPause() 88. Activity onCreate()onStart() Primeiro planoonResume()em execuoonPause() 89. Activity onCreate()onStart() Primeiro planoonResume()em execuoonPause()onStop() 90. Activity onCreate()onStart() Primeiro planoonResume()em execuoonPause()onStop()onRestart() 91. Activity onCreate()onStart() Primeiro planoonResume()em execuoonPause()onStop()onRestart() 92. Activity onCreate() VisvelonStart() Primeiro planoonResume()em execuoonPause()onStop()onRestart() 93. Activity onCreate() VisvelonStart() Primeiro planoonResume()em execuoonPause()onStop()onDestroy()onRestart() 94. Activity onCreate() VisvelonStart() Primeiro planoonResume()em execuoonPause()onStop()onDestroy()shutdownonRestart() 95. Activity Ciclo de vida completoonCreate()VisvelonStart() Primeiro planoonResume()em execuoonPause()onStop()onDestroy()shutdownonRestart() 96. Multitarefa 97. Multitarefa 98. MultitarefaonCreate() 99. MultitarefaonPause() 100. Multitarefa 101. MultitarefaonResume() 102. MultitarefaonPause() 103. MultitarefaonStop() 104. MultitarefaonStop()onCreate() 105. MultitarefaonStop()onCreate() onPause() 106. MultitarefaonStop()onCreate() onPause() onStop() 107. MultitarefaonStop()onCreate() onPause() onStop() 108. MultitarefaonStop()onCreate() onPause() onStop()onCreate() 109. MultitarefaonStop()onCreate()onRestart()onPause() onStop()onCreate() 110. MultitarefaonStop()onCreate()onRestart()onPause()onStart()onStop()onCreate() 111. Ferramentas 112. Pr-requisitos 113. Pr-requisitos JDK 114. Pr-requisitos JDK Android SDK 115. Ambiente 116. Ambiente Linux 117. Ambiente Linux Mac OS X (Intel) 118. Ambiente Linux Mac OS X (Intel) Windows XP ou superior 119. Ferramentas 120. Ferramentas 121. Ferramentas 122. Ferramentas 123. Ferramentas 124. Ferramentas 125. Ferramentas Remote debugger logcat DDMS 126. Ferramentas 127. Ferramentas 128. Ferramentas 129. Google Chrome 130. Google Chrome 131. Android Market 132. Android Market Desenvolvedor escolhe o preo 133. Android Market Desenvolvedor escolhe o preo 30/70 134. Android Market Desenvolvedor escolhe o preo 30/70 US$ 99,00/ano 135. Android Market Desenvolvedor escolhe o preo 30/70 US$ 25,00 uma nica vez 136. Tarefa para casa developer.android.com 137. Obrigado 138. Crditos http://www.ickr.com/photos/xazac/5090246138/sizes/s/in/photostream/ http://www.ickr.com/photos/bshadow/4290430790/sizes/s/in/ photostream/ http://www.ickr.com/photos/nickbutcher/5529239187/sizes/m/in/ photostream/ http://www.ickr.com/photos/3bilder/5113921580/sizes/m/in/ photostream/ http://www.ickr.com/photos/abulhussain/4543434080/sizes/o/in/ photostream/ http://developer.android.com/guide/developing/debugging/debuggingtracing.html

Recommended

View more >