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