Escolar Documentos
Profissional Documentos
Cultura Documentos
Douglas Drumond
douglas@eee19.com
Por que Android?
Crescimento
2010
2009
6% 4% 4%
9%
16%
38%
14% 47%
16%
20%
4%
23%
400000
350000
300000
250000
200000
150000
100000
50000
Source: Techcrunch
Android Market (apps)
• Aproximadamente 300.000
• 30.000 novos aplicativos por mês
• Estimativa de download: 3,8 bilhões de apps
O que é?
Aplicações
Framework
Bibliotecas Dalvik
Linux Kernel
Livre
• Acesso ao código-fonte
Livre
Framework
Bibliotecas Dalvik
Linux Kernel
Arquitetura
Aplicações
Framework
Bibliotecas Dalvik
Linux Kernel
Arquitetura
Linux Kernel
Display Driver Flash Memory Driver
Framework
Bibliotecas Dalvik
Linux Kernel
Arquitetura
Dalvik
• Baseada em registradores
• .dex
Arquitetura
Aplicações
Framework
Bibliotecas Dalvik
Linux Kernel
Arquitetura
Bibliotecas
Surface Manager SSL
OpenGL ES SQLite
Tipicamente C/C++
Arquitetura
Aplicações
Framework
Bibliotecas Dalvik
Linux Kernel
Arquitetura
Application Framework
Activity Manager Location Manager
Tipicamente Java
Arquitetura
Aplicações
Framework
Bibliotecas Dalvik
Linux Kernel
Arquitetura
Aplicações
Home Email
Contacts SMS
Phone Maps
Browser Music
• Interface
• Um objetivo
• Várias por aplicativo
• Pode iniciar outras activities
• Herda de Activity
Activity
Activity
Visível
onStart() onRestart()
Primeiro plano
onResume()
em execução
onPause()
onStop()
onDestroy()
shutdown
Service
• Sem interface
• Roda em segundo plano
• Executa na thread principal
• Herda de Service
Service
Service
• Ativo ou parado
• Roda em segundo plano
• Pouco provável de ser morto
Service
Ciclo de vida completo
onCreate()
em execução
onDestroy()
shutdown
Content Provider
em execução
Fim
Intent
• Possui um alvo facultativo
• Se não tiver especificado alvo, o sistema
encontra um
• Pode executar uma Activity ou Service
específico
• IntentFilters
• JDK
• Android SDK
Ambiente
• Linux
• Mac OS X (Intel)
• Windows XP ou superior
Ferramentas
Motodev Studio
Ferramentas
Emulador
Ferramentas
• Remote debugger
• logcat
• DDMS
Ferramentas
DDMS
Ferramentas
hierarchyviewer
Ferramentas
traceview
Google Chrome
• developer.android.com
Obrigado
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