• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
[MO901] Android 下忍 – 2011
 

[MO901] Android 下忍 – 2011

on

  • 179 views

Pa

Pa

Statistics

Views

Total Views
179
Views on SlideShare
166
Embed Views
13

Actions

Likes
0
Downloads
3
Comments
0

2 Embeds 13

http://www.robotodojo.com 10
http://www.douglasdrumond.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    [MO901] Android 下忍 – 2011 [MO901] Android 下忍 – 2011 Presentation Transcript

    • Android 下忍 Douglas Drumond drumond.douglas@gmail.com
    • Por que Android?
    • Crescimento Source: Gartner (Feb 2011)
    • Crescimento Symbian RIM Microsoft Android iOS Other OS Source: Gartner (Feb 2011)
    • Crescimento Symbian RIM Microsoft Android iOS Other OS Symbian iOS Android Microsoft RIM Other OS Source: Gartner (Feb 2011)
    • Crescimento Symbian RIM Microsoft Android iOS Other OS Symbian iOS Android Microsoft RIM Other OS Source: Gartner (Feb 2011)
    • Crescimento Symbian RIM Microsoft Android iOS Other OS Symbian iOS Android Microsoft RIM Other OS Source: Gartner (Feb 2011)
    • Android Market share Source: Techcrunch
    • Android Market share Source: Techcrunch
    • Android Market (apps)
    • Android Market (apps) • Aproximadamente 300.000
    • Android Market (apps) • Aproximadamente 300.000 • 30.000 novos aplicativos por mês
    • Android Market (apps) • Aproximadamente 300.000 • 30.000 novos aplicativos por mês • Estimativa de download: 3,8 bilhões de apps
    • O que é?
    • O que é? Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Livre
    • Livre
    • Livre
    • Livre • Acesso ao código-fonte
    • 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
    • Versões
    • Arquitetura
    • Arquitetura Linux Kernel
    • Arquitetura Bibliotecas Linux Kernel Dalvik
    • Arquitetura Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura
    • Arquitetura Linux Kernel
    • Arquitetura Linux Kernel Display Driver Flash Memory Driver Keypad Driver Audio Driver Camera Driver IPC WiFi Driver Gerenciamento de energia
    • Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura
    • Arquitetura Dalvik
    • Arquitetura Dalvik • Baseada em registradores • .dex
    • Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura
    • Arquitetura Bibliotecas
    • Arquitetura Bibliotecas Surface Manager SSL OpenGL ES SQLite Media Framework WebKit FreeType libc (bionic)
    • Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura
    • Arquitetura Application Framework
    • Arquitetura Application Framework Activity Manager Location Manager Window Manager Resource Manager Content Providers Notification Manager Telephony Manager View System
    • Arquitetura Aplicações Framework Bibliotecas Linux Kernel Dalvik
    • Arquitetura
    • Arquitetura Aplicações
    • Arquitetura Aplicações Home Email Contacts SMS Phone Maps Browser Music
    • Dissecando as Aplicações
    • Activity
    • Activity • Interface
    • Activity • Interface • Um objetivo
    • Activity • Interface • Um objetivo • Várias por aplicativo
    • Activity • Interface • Um objetivo • Várias por aplicativo • Pode iniciar outras activities
    • Activity • Interface • Um objetivo • Várias por aplicativo • Pode iniciar outras activities • Herda de Activity
    • Activity
    • Activity
    • Activity • 3 estados: ativa, em pausa e parada
    • Activity • 3 estados: ativa, em pausa e parada • 3 ciclos de vida
    • Activity • 3 estados: ativa, em pausa e parada • 3 ciclos de vida • pode morrer a qualquer momento se não estiver ativa
    • Activity
    • Activity onCreate()
    • Activity onCreate() onStart()
    • Activity onCreate() onStart() onResume()
    • Activity onCreate() onStart() onResume() em execução
    • Activity onCreate() onStart() onResume() em execução onPause()
    • Activity onCreate() onStart() onResume() em execução onPause()
    • Activity onCreate() onStart() Primeiro plano onResume() em execução onPause()
    • Activity onCreate() onStart() Primeiro plano onResume() em execução onPause() onStop()
    • Activity onCreate() onStart() Primeiro plano onResume() em execução onPause() onStop() onRestart()
    • Activity onCreate() onStart() Primeiro plano onResume() em execução onPause() onStop() onRestart()
    • Activity onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onRestart()
    • Activity onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onDestroy() onRestart()
    • Activity onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onDestroy() shutdown onRestart()
    • Activity Ciclo de vida completo onCreate() Visível onStart() Primeiro plano onResume() em execução onPause() onStop() onDestroy() shutdown onRestart()
    • Service
    • Service • Sem interface
    • Service • Sem interface • Roda em segundo plano
    • Service • Sem interface • Roda em segundo plano • Executa na thread principal
    • Service • Sem interface • Roda em segundo plano • Executa na thread principal • Herda de Service
    • Service
    • Service
    • Service • Ativo ou parado
    • Service • Ativo ou parado • Roda em segundo plano
    • Service • Ativo ou parado • Roda em segundo plano • Pouco provável de ser morto
    • Service
    • Service onCreate()
    • Service onCreate() onStart()
    • Service onCreate() onStart() em execução
    • Service onCreate() onStart() em execução onDestroy()
    • Service onCreate() Ciclo de vida em atividade onStart() em execução onDestroy()
    • Service onCreate() Ciclo de vida em atividade onStart() em execução onDestroy() shutdown
    • Service Ciclo de vida completo Ciclo de vida em atividade onCreate() onStart() em execução onDestroy() shutdown
    • Content Provider
    • Content Provider • Disponibiliza dados para outros aplicativos
    • Content Provider • Disponibiliza dados para outros aplicativos • Sistema de arquivos ou SQLite
    • Content Provider • Disponibiliza dados para outros aplicativos • Sistema de arquivos ou SQLite • Herda de ContentProvider
    • Content Provider
    • Broadcast Receiver
    • Broadcast Receiver • Não possui interface (com usuário)
    • Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano
    • Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano • Reage a mensagens de broadcast
    • Broadcast Receiver • Não possui interface (com usuário) • Roda em segundo plano • Reage a mensagens de broadcast • Exemplo: carga de bateria
    • 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
    • Broadcast Receiver
    • Broadcast Receiver onReceive()
    • Broadcast Receiver onReceive() em execução
    • Broadcast Receiver onReceive() em execução Fim
    • Broadcast Receiver Ciclo de vida em atividade onReceive() em execução Fim
    • Intent
    • Intent • Possui um alvo facultativo
    • Intent • Possui um alvo facultativo • Se não tiver especificado alvo, o sistema encontra um
    • Intent • Possui um alvo facultativo • Se não tiver especificado alvo, o sistema encontra um • Pode executar uma Activity ou Service específico
    • Intent • Possui um alvo facultativo • Se não tiver especificado alvo, o sistema encontra um • Pode executar uma Activity ou Service específico • IntentFilters
    • Intent
    • Intent
    • Intent
    • Intent
    • Intent
    • Ferramentas
    • Pré-requisitos
    • Pré-requisitos • JDK
    • Pré-requisitos • JDK • Android SDK
    • Ambiente
    • Ambiente • Linux
    • Ambiente • Linux • Mac OS X (Intel)
    • Ambiente • Linux • Mac OS X (Intel) • Windows XP ou superior
    • Ferramentas
    • Ferramentas
    • Ferramentas
    • Ferramentas
    • Ferramentas
    • Ferramentas
    • Ferramentas • Remote debugger • logcat • DDMS
    • Ferramentas
    • Ferramentas
    • Ferramentas
    • Google Chrome
    • Google Chrome
    • Android Market
    • Android Market Desenvolvedor escolhe o preço
    • Android Market Desenvolvedor escolhe o preço 30/70
    • Android Market Desenvolvedor escolhe o preço 30/70 US$ 99,00/ano
    • Android Market Desenvolvedor escolhe o preço 30/70
    • Android Market
    • Android Market Desenvolvedor escolhe o preço
    • Android Market Desenvolvedor escolhe o preço 30/70
    • Android Market Desenvolvedor escolhe o preço 30/70 US$ 25,00 uma única vez
    • O que estão esperando? • 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/debuggingtracing.html