Your SlideShare is downloading. ×
0
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
[MO901] Android 下忍 – 2011
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

[MO901] Android 下忍 – 2011

148

Published on

Pa

Pa

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
148
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. Android 下忍 Douglas Drumond drumond.douglas@gmail.com
  2. Por que Android?
  3. Crescimento Source: Gartner (Feb 2011)
  4. Crescimento Symbian RIM Microsoft Android iOS Other OS Source: Gartner (Feb 2011)
  5. Crescimento Symbian RIM Microsoft Android iOS Other OS Symbian iOS Android Microsoft RIM Other OS Source: Gartner (Feb 2011)
  6. Crescimento Symbian RIM Microsoft Android iOS Other OS Symbian iOS Android Microsoft RIM Other OS Source: Gartner (Feb 2011)
  7. Crescimento Symbian RIM Microsoft Android iOS Other OS Symbian iOS Android Microsoft RIM Other OS Source: Gartner (Feb 2011)
  8. Android Market share Source: Techcrunch
  9. Android Market share Source: Techcrunch
  10. Android Market (apps)
  11. Android Market (apps) • Aproximadamente 300.000
  12. Android Market (apps) • Aproximadamente 300.000 • 30.000 novos aplicativos por mês
  13. Android Market (apps) • Aproximadamente 300.000 • 30.000 novos aplicativos por mês • Estimativa de download: 3,8 bilhões de apps
  14. O que é?
  15. O que é? Aplicações Framework Bibliotecas Linux Kernel Dalvik
  16. Livre
  17. Livre
  18. Livre
  19. Livre • Acesso ao código-fonte
  20. Livre • the definition of open: "mkdir android ; cd android ; repo init -u git:// android.git.kernel.org/platform/manifest.git ; repo sync ; make" http://twitter.com/#!/arubin/status/27808662429
  21. Versões
  22. Arquitetura
  23. Arquitetura Linux Kernel
  24. Arquitetura Bibliotecas Linux Kernel Dalvik
  25. Arquitetura Framework Bibliotecas Linux Kernel Dalvik
  26. Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
  27. Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
  28. Arquitetura
  29. Arquitetura Linux Kernel
  30. Arquitetura Linux Kernel Display Driver Flash Memory Driver Keypad Driver Audio Driver Camera Driver IPC WiFi Driver Gerenciamento de energia
  31. Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
  32. Arquitetura
  33. Arquitetura Dalvik
  34. Arquitetura Dalvik • Baseada em registradores • .dex
  35. Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
  36. Arquitetura
  37. Arquitetura Bibliotecas
  38. Arquitetura Bibliotecas Surface Manager SSL OpenGL ES SQLite Media Framework WebKit FreeType libc (bionic)
  39. Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
  40. Arquitetura
  41. Arquitetura Application Framework
  42. Arquitetura Application Framework Activity Manager Location Manager Window Manager Resource Manager Content Providers Notification Manager Telephony Manager View System
  43. Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
  44. Arquitetura
  45. Arquitetura Aplicações
  46. Arquitetura Aplicações Home Email Contacts SMS Phone Maps Browser Music
  47. Dissecando as Aplicações
  48. Activity
  49. Activity • Interface
  50. Activity • Interface • Um objetivo
  51. Activity • Interface • Um objetivo • Várias por aplicativo
  52. Activity • Interface • Um objetivo • Várias por aplicativo • Pode iniciar outras activities
  53. Activity • Interface • Um objetivo • Várias por aplicativo • Pode iniciar outras activities • Herda de Activity
  54. Activity
  55. Activity
  56. Activity • 3 estados: ativa, em pausa e parada
  57. Activity • 3 estados: ativa, em pausa e parada • 3 ciclos de vida
  58. Activity • 3 estados: ativa, em pausa e parada • 3 ciclos de vida • pode morrer a qualquer momento se não estiver ativa
  59. Activity
  60. Activity onCreate()
  61. Activity onCreate() onStart()
  62. Activity onCreate() onStart() onResume()
  63. Activity onCreate() onStart() onResume() em execução
  64. Activity onCreate() onStart() onResume() em execução onPause()
  65. Activity onCreate() onStart() onResume() em execução onPause()
  66. Activity onCreate() onStart() Primeiro plano onResume() em execução onPause()
  67. Activity onCreate() onStart() Primeiro plano onResume() em execução onPause() onStop()
  68. Activity onCreate() onStart() Primeiro plano onResume() em execução onPause() onStop() onRestart()
  69. Activity onCreate() onStart() Primeiro plano onResume() em execução onPause() onStop() onRestart()
  70. Activity onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onRestart()
  71. Activity onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onDestroy() onRestart()
  72. Activity onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onDestroy() shutdown onRestart()
  73. Activity Ciclo de vida completo onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onDestroy() shutdown onRestart()
  74. Service
  75. Service • Sem interface
  76. Service • Sem interface • Roda em segundo plano
  77. Service • Sem interface • Roda em segundo plano • Executa na thread principal
  78. Service • Sem interface • Roda em segundo plano • Executa na thread principal • Herda de Service
  79. Service
  80. Service
  81. Service • Ativo ou parado
  82. Service • Ativo ou parado • Roda em segundo plano
  83. Service • Ativo ou parado • Roda em segundo plano • Pouco provável de ser morto
  84. Service
  85. Service onCreate()
  86. Service onCreate() onStart()
  87. Service onCreate() onStart() em execução
  88. Service onCreate() onStart() em execução onDestroy()
  89. Service onCreate() Ciclo de vida em atividade onStart() em execução onDestroy()
  90. Service onCreate() Ciclo de vida em atividade onStart() em execução onDestroy() shutdown
  91. Service Ciclo de vida completo Ciclo de vida em atividade onCreate() onStart() em execução onDestroy() shutdown
  92. Content Provider
  93. Content Provider • Disponibiliza dados para outros aplicativos
  94. Content Provider • Disponibiliza dados para outros aplicativos • Sistema de arquivos ou SQLite
  95. Content Provider • Disponibiliza dados para outros aplicativos • Sistema de arquivos ou SQLite • Herda de ContentProvider
  96. Content Provider
  97. Broadcast Receiver
  98. Broadcast Receiver • Não possui interface (com usuário)
  99. Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano
  100. Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano • Reage a mensagens de broadcast
  101. Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano • Reage a mensagens de broadcast • Exemplo: carga de bateria
  102. Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano • Reage a mensagens de broadcast • Exemplo: carga de bateria • Herda de BroadcastReceiver
  103. Broadcast Receiver
  104. Broadcast Receiver onReceive()
  105. Broadcast Receiver onReceive() em execução
  106. Broadcast Receiver onReceive() em execução Fim
  107. Broadcast Receiver Ciclo de vida em atividade onReceive() em execução Fim
  108. Intent
  109. Intent • Possui um alvo facultativo
  110. Intent • Possui um alvo facultativo • Se não tiver especificado alvo, o sistema encontra um
  111. Intent • Possui um alvo facultativo • Se não tiver especificado alvo, o sistema encontra um • Pode executar uma Activity ou Service específico
  112. Intent • Possui um alvo facultativo • Se não tiver especificado alvo, o sistema encontra um • Pode executar uma Activity ou Service específico • IntentFilters
  113. Intent
  114. Intent
  115. Intent
  116. Intent
  117. Intent
  118. Ferramentas
  119. Pré-requisitos
  120. Pré-requisitos • JDK
  121. Pré-requisitos • JDK • Android SDK
  122. Ambiente
  123. Ambiente • Linux
  124. Ambiente • Linux • Mac OS X (Intel)
  125. Ambiente • Linux • Mac OS X (Intel) • Windows XP ou superior
  126. Ferramentas
  127. Ferramentas
  128. Ferramentas
  129. Ferramentas
  130. Ferramentas
  131. Ferramentas
  132. Ferramentas • Remote debugger • logcat • DDMS
  133. Ferramentas
  134. Ferramentas
  135. Ferramentas
  136. Google Chrome
  137. Google Chrome
  138. Android Market
  139. Android Market Desenvolvedor escolhe o preço
  140. Android Market Desenvolvedor escolhe o preço 30/70
  141. Android Market Desenvolvedor escolhe o preço 30/70 US$ 99,00/ano
  142. Android Market Desenvolvedor escolhe o preço 30/70
  143. Android Market
  144. Android Market Desenvolvedor escolhe o preço
  145. Android Market Desenvolvedor escolhe o preço 30/70
  146. Android Market Desenvolvedor escolhe o preço 30/70 US$ 25,00 uma única vez
  147. O que estão esperando? • developer.android.com
  148. Obrigado
  149. Créditos •http://www.flickr.com/photos/xazac/5090246138/sizes/s/in/ photostream/ •http://www.flickr.com/photos/bfishadow/4290430790/sizes/s/in/ photostream/ •http://www.flickr.com/photos/nickbutcher/5529239187/sizes/m/in/ photostream/ •http://www.flickr.com/photos/3bilder/5113921580/sizes/m/in/ photostream/ •http://www.flickr.com/photos/abulhussain/4543434080/sizes/o/in/ photostream/ •http://developer.android.com/guide/developing/debugging/debuggingtracing.html

×