Leonardo Marcelino




Wednesday, June 1, 2011
Sobre mim
                    @leonardom

                      leomar@br.ibm.com
                      leonardo.marcelino@gmail.com


Wednesday, June 1, 2011
Wednesday, June 1, 2011
Wednesday, June 1, 2011
Sistema operacional desenvolvido
         para dispositivos móveis



Wednesday, June 1, 2011
• Gratuito
          • Código aberto (Open Source)
          • Não está preso a um hardware específico
          • Kernel Linux
          • Aplicativos em Java
          • Comunidade crescente
Wednesday, June 1, 2011
Open Handset Alliance
                                             Operadoras Telefonia Móvel
                    Fabricantes de Handset


                                     Fabricantes de semicondutores


                            Empresas de Software



                          http://www.openhandsetalliance.com
Wednesday, June 1, 2011
Open Handset Alliance




              http://www.openhandsetalliance.com/oha_members.html
Wednesday, June 1, 2011
Open Handset Alliance


                          Colaboram para evolução e
                          disseminação do Android




                           http://www.openhandsetalliance.com
Wednesday, June 1, 2011
Características
         • Framework de aplicações (reuso e substituíção)
         • Máquina Virtual Dalvik (otimizada)
         • Navegador Web integrado (baseado WebKit)
         • Otimizador gráfico (2D, 3D, OpenGL)
         • SQLite (database estruturado)
Wednesday, June 1, 2011
Características
         • FormatosH.264, MP3, AAC, AMR,imagem GIF)
           (MPEG4,
                    de mídia: audio, video e
                                             JPG, PNG,

         • Telefonia GSM
         • Bluetooth, EDGE, 3G e WiFi
         • Câmera, GPS, bússula e acelerômetro
         • Rico ambiente desenvolvimento
Wednesday, June 1, 2011
Arquitetura




Wednesday, June 1, 2011
Aplicativos

        Navegador Web, Cliente de e-mail,
        Programa de SMS, Calendário,
        Agenda, Mapas e Outros.

        Todos desenvolvidos em Java


Wednesday, June 1, 2011
Framework de
      aplicações
          Projetada para simplificar   reuso de
          componentes.

          Componentes podem ser substituídos
          por componentes customizados


Wednesday, June 1, 2011
Framework de
      aplicações

             Rico e extensível conjunto de
             componentes visuais.

             Incluindo: Lists, Grids, Text boxes,
             buttons, and embedded web broswer


Wednesday, June 1, 2011
Content Provider

          Possibilita que aplicações acessem
          dados de outras aplicações ou
          compartilhem dados com outras
          aplicações.



Wednesday, June 1, 2011
Resource Manager

          Provê acesso a recursos externos
          ao código como Strings
          localizadas, Imagens e arquivos
          de layout.


Wednesday, June 1, 2011
Notification
          Manager

          Permite que todas aplicações mostrem
          alertas customizados na barra de
          status.




Wednesday, June 1, 2011
Activity
          Manager

                          Gerencia o ciclo   de vida das
                          aplicações.




Wednesday, June 1, 2011
Bibliotecas
         • System C library (libc tuned for embedded
           Linux-based devices)

         • Media libraries (MPEG4, H.264, MP3, ACC,
           AMR,JPG, PNG)

         • Surfacecomposites 2D and access to the
           display,
                    Manager (manages
                                     3D graphic
                layers)

         • LibWebCore (modern web browser engine)
Wednesday, June 1, 2011
Bibliotecas

         • SGL (2D graphic engine)
         • 3D libraries (based on OpenGL)
         • FreeType (bitmap and vector font
           rendering)

         • SQLite (powerful and lightweight relational
           database)

Wednesday, June 1, 2011
Runtime


          Máquina Virtual Dalvik otimizada para
          execução em dispositivos móveis




Wednesday, June 1, 2011
Runtime

          Inclui um conjunto de bibliotecas que
          prove a maioria das funcionalidades
          disponíveis para o Java




Wednesday, June 1, 2011
Runtime

          Cada aplicação roda em um processo
          separado em uma instância da
          máquina virtual.




Wednesday, June 1, 2011
Runtime

          A máquina virtual executa arquivos no
          formato Dalvik Executable (.dex) o
          qual são otimizados para baixo consumo
          memória.



Wednesday, June 1, 2011
Kernel Linux


                O sistema operacional do Android foi
                baseado no kernel 2.6 do Linux



Wednesday, June 1, 2011
Kernel Linux

          O kernel é responsável por gerenciar a
          memória, os processos, segurança de
          arquivos, redes e drivers.




Wednesday, June 1, 2011
Código
          aberto e livre

          O Android é a primeira plataforma para
          aplicações móveis completamente livre e
          de código aberto.




Wednesday, June 1, 2011
Software
       Development Kit
      Android SDK é o software utilizado para
      desenvolver aplicações para Android.

      SDK = Emulador + ferramentas + API Java

      Disponível para Windows, Linux e Mac OS

      http://developer.android.com/sdk/
Wednesday, June 1, 2011
Plugin
       Eclipse IDE
      Android Development Tool (ADT) é um
      plugin para o Eclipse IDE que provê um
      ambiente de desenvolvimento poderoso e
      integrado.

      http://developer.android.com/sdk/eclipse-adt.html


Wednesday, June 1, 2011
Plataformas


                   No Android uma versão do sistema
                   operacional é conhecida como
                   plataforma.



Wednesday, June 1, 2011
Plataformas
         Cada plataforma tem um código
         identificador, chamado de API Level.

         API Level 1: Android 1.0
         API Level 7: Android 2.1
         API Level 8: Android 2.2
         API Level 10: Android 2.3.4
         API Level 12: Android 3.1

Wednesday, June 1, 2011
Instalando
       Plataformas




Wednesday, June 1, 2011
Android
       Virtual Device

        Android Virtual Device (ADV) permite que o
        emulador possa simular exatamente a
        configuração de um dispositivo móvel.




Wednesday, June 1, 2011
Android
       Virtual Device




Wednesday, June 1, 2011
Emulador




Wednesday, June 1, 2011
Emulador




Wednesday, June 1, 2011
Emulador




Wednesday, June 1, 2011
Android Market

                          http://android.com/market

        Fornece aos desenvolvedores um lugar
        comum para disponibilizar aplicações.

        Funciona parecido com o YouTube.

Wednesday, June 1, 2011
Android Market




Wednesday, June 1, 2011
Android
      pelo mundo

              Android assume liderança do
              mercado de sistemas móveis no EUA



    Fonte: http://idgnow.uol.com.br/mercado/2011/03/04/android-assume-a-
    lideranca-do-mercado-de-sistemas-moveis-nos-eua/

Wednesday, June 1, 2011
Android
      pelo mundo

                          Android lidera enquanto Nokia
                          e Microsoft perdem mercado



    Fonte: http://exame.abril.com.br/tecnologia/android/noticias/android-
    lidera-enquanto-nokia-e-microsoft-perdem-mercado

Wednesday, June 1, 2011
Market Share




    Fonte: http://www.pcworld.com/article/226339/
    android_market_share_growth_accelerating_nielsen_finds.html
Wednesday, June 1, 2011
For Tablets...




Wednesday, June 1, 2011
Morotola Atrix




Wednesday, June 1, 2011
Samsung
    Galaxy S2




Wednesday, June 1, 2011
Tablet
    Motorola XOOM




Wednesday, June 1, 2011
Perguntas




Wednesday, June 1, 2011
Obrigado!!!




Wednesday, June 1, 2011

Android

  • 1.
  • 2.
    Sobre mim @leonardom leomar@br.ibm.com leonardo.marcelino@gmail.com Wednesday, June 1, 2011
  • 3.
  • 4.
  • 5.
    Sistema operacional desenvolvido para dispositivos móveis Wednesday, June 1, 2011
  • 6.
    • Gratuito • Código aberto (Open Source) • Não está preso a um hardware específico • Kernel Linux • Aplicativos em Java • Comunidade crescente Wednesday, June 1, 2011
  • 7.
    Open Handset Alliance Operadoras Telefonia Móvel Fabricantes de Handset Fabricantes de semicondutores Empresas de Software http://www.openhandsetalliance.com Wednesday, June 1, 2011
  • 8.
    Open Handset Alliance http://www.openhandsetalliance.com/oha_members.html Wednesday, June 1, 2011
  • 9.
    Open Handset Alliance Colaboram para evolução e disseminação do Android http://www.openhandsetalliance.com Wednesday, June 1, 2011
  • 10.
    Características • Framework de aplicações (reuso e substituíção) • Máquina Virtual Dalvik (otimizada) • Navegador Web integrado (baseado WebKit) • Otimizador gráfico (2D, 3D, OpenGL) • SQLite (database estruturado) Wednesday, June 1, 2011
  • 11.
    Características • FormatosH.264, MP3, AAC, AMR,imagem GIF) (MPEG4, de mídia: audio, video e JPG, PNG, • Telefonia GSM • Bluetooth, EDGE, 3G e WiFi • Câmera, GPS, bússula e acelerômetro • Rico ambiente desenvolvimento Wednesday, June 1, 2011
  • 12.
  • 13.
    Aplicativos Navegador Web, Cliente de e-mail, Programa de SMS, Calendário, Agenda, Mapas e Outros. Todos desenvolvidos em Java Wednesday, June 1, 2011
  • 14.
    Framework de aplicações Projetada para simplificar reuso de componentes. Componentes podem ser substituídos por componentes customizados Wednesday, June 1, 2011
  • 15.
    Framework de aplicações Rico e extensível conjunto de componentes visuais. Incluindo: Lists, Grids, Text boxes, buttons, and embedded web broswer Wednesday, June 1, 2011
  • 16.
    Content Provider Possibilita que aplicações acessem dados de outras aplicações ou compartilhem dados com outras aplicações. Wednesday, June 1, 2011
  • 17.
    Resource Manager Provê acesso a recursos externos ao código como Strings localizadas, Imagens e arquivos de layout. Wednesday, June 1, 2011
  • 18.
    Notification Manager Permite que todas aplicações mostrem alertas customizados na barra de status. Wednesday, June 1, 2011
  • 19.
    Activity Manager Gerencia o ciclo de vida das aplicações. Wednesday, June 1, 2011
  • 20.
    Bibliotecas • System C library (libc tuned for embedded Linux-based devices) • Media libraries (MPEG4, H.264, MP3, ACC, AMR,JPG, PNG) • Surfacecomposites 2D and access to the display, Manager (manages 3D graphic layers) • LibWebCore (modern web browser engine) Wednesday, June 1, 2011
  • 21.
    Bibliotecas • SGL (2D graphic engine) • 3D libraries (based on OpenGL) • FreeType (bitmap and vector font rendering) • SQLite (powerful and lightweight relational database) Wednesday, June 1, 2011
  • 22.
    Runtime Máquina Virtual Dalvik otimizada para execução em dispositivos móveis Wednesday, June 1, 2011
  • 23.
    Runtime Inclui um conjunto de bibliotecas que prove a maioria das funcionalidades disponíveis para o Java Wednesday, June 1, 2011
  • 24.
    Runtime Cada aplicação roda em um processo separado em uma instância da máquina virtual. Wednesday, June 1, 2011
  • 25.
    Runtime A máquina virtual executa arquivos no formato Dalvik Executable (.dex) o qual são otimizados para baixo consumo memória. Wednesday, June 1, 2011
  • 26.
    Kernel Linux O sistema operacional do Android foi baseado no kernel 2.6 do Linux Wednesday, June 1, 2011
  • 27.
    Kernel Linux O kernel é responsável por gerenciar a memória, os processos, segurança de arquivos, redes e drivers. Wednesday, June 1, 2011
  • 28.
    Código aberto e livre O Android é a primeira plataforma para aplicações móveis completamente livre e de código aberto. Wednesday, June 1, 2011
  • 29.
    Software Development Kit Android SDK é o software utilizado para desenvolver aplicações para Android. SDK = Emulador + ferramentas + API Java Disponível para Windows, Linux e Mac OS http://developer.android.com/sdk/ Wednesday, June 1, 2011
  • 30.
    Plugin Eclipse IDE Android Development Tool (ADT) é um plugin para o Eclipse IDE que provê um ambiente de desenvolvimento poderoso e integrado. http://developer.android.com/sdk/eclipse-adt.html Wednesday, June 1, 2011
  • 31.
    Plataformas No Android uma versão do sistema operacional é conhecida como plataforma. Wednesday, June 1, 2011
  • 32.
    Plataformas Cada plataforma tem um código identificador, chamado de API Level. API Level 1: Android 1.0 API Level 7: Android 2.1 API Level 8: Android 2.2 API Level 10: Android 2.3.4 API Level 12: Android 3.1 Wednesday, June 1, 2011
  • 33.
    Instalando Plataformas Wednesday, June 1, 2011
  • 34.
    Android Virtual Device Android Virtual Device (ADV) permite que o emulador possa simular exatamente a configuração de um dispositivo móvel. Wednesday, June 1, 2011
  • 35.
    Android Virtual Device Wednesday, June 1, 2011
  • 36.
  • 37.
  • 38.
  • 39.
    Android Market http://android.com/market Fornece aos desenvolvedores um lugar comum para disponibilizar aplicações. Funciona parecido com o YouTube. Wednesday, June 1, 2011
  • 40.
  • 41.
    Android pelo mundo Android assume liderança do mercado de sistemas móveis no EUA Fonte: http://idgnow.uol.com.br/mercado/2011/03/04/android-assume-a- lideranca-do-mercado-de-sistemas-moveis-nos-eua/ Wednesday, June 1, 2011
  • 42.
    Android pelo mundo Android lidera enquanto Nokia e Microsoft perdem mercado Fonte: http://exame.abril.com.br/tecnologia/android/noticias/android- lidera-enquanto-nokia-e-microsoft-perdem-mercado Wednesday, June 1, 2011
  • 43.
    Market Share Fonte: http://www.pcworld.com/article/226339/ android_market_share_growth_accelerating_nielsen_finds.html Wednesday, June 1, 2011
  • 44.
  • 45.
  • 46.
    Samsung Galaxy S2 Wednesday, June 1, 2011
  • 47.
    Tablet Motorola XOOM Wednesday, June 1, 2011
  • 48.
  • 49.