Desenvolvendo Software para
       Dispositivos Móveis com




Felipe Silveira                           EMSL 09
felipe@motorola.com   Encontro Mineiro de Software Livre
Agenda

      •    O que é Android
      •    Principais Funcionalidades
      •    Arquitetura
      •    Aplicações Android
      •    Ferramentas
      •    Exemplo
      •    Mercado

Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
O que é Android

      • Sistema Operacional +
        Plataforma de desenvolvimento +
        Aplicações Padrão (SMS, Maps, Calendar...)
      • Código aberto
      • Desenvolvido pelo Google e posteriormente
        pela Open Handset Alliance




Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
O que é Android

      • Open Handset Alliance:
        Consórcio formado por mais de 50 empresas




Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Principais funcionalidades

      • Ambiente multitask
      • Suporte nativo a GSM/3G, WI-FI, Bluetooth
      • Biblioteca Multimídia
        (Formatos MPEG4, MP3, JPG, ...)
      • Suporte a Acelerômetro/GPS/Touchscreen...




Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Arquitetura




Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Aplicações Android

      • Escritas em JAVA ou C/C++ usando a NDK –
        Native Development Kit
      • Executadas sobre a DALVIK VM
      • Cada aplicação é executada em um diferente
        processo linux
      • Formadas por Activitys e/ou Services



Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Aplicações Android

      • API’s Disponíveis:

        J2SE                           java.lang.*
                                       java.util.*
                                       ...
        UI                             android.widget.*
                                       android.view.*
                                       ...
        Telephony                      Android.telephony.IPhone
                                       android.telephony.gsm.SmsManager
Desenvolvendo software para dispositivos móveis com Android               Felipe Silveira
Aplicações Android

      Camera                                     android.hardware.CameraDevice
      Web client                                 android.webkit.WebView
      HTTP                                       org.apache.http.client.*
      Database (SQLite) android.database.*
      Google Maps                                com.google.android.maps.MapView
      Location                                   android.location.*
      Multimedia                                 android.media.*
Desenvolvendo software para dispositivos móveis com Android                      Felipe Silveira
Ferramentas
      Android SDK

            •    aapt – Android Asset Packaging Tool
            •    adb – Android Debug Bridge
            •    ddms – Dalvik Debug Monitor Service
            •    Emulador

      Eclipse IDE + ADT (Android Development Tools)

            • Ambiente de desenvolvimento com debug integrado


Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Exemplo
   package org.softwarelivre.emsl;

   import android.app.Activity;
   import android.os.Bundle;
   import android.widget.TextView;

   public class HelloAndroid extends Activity {

       @Override
       public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         TextView tv = new TextView(this);
         tv.setText(“EMSL 2009”);
         setContentView(tv);
       }
   }

Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Mercado

     • Telefones já anunciados
       pela Motorola, HTC,
       Samsung, LG, Sony
       Ericsson...
     • Netbooks anunciados
       pela Acer
     • Android Market: Loja                                   Motorola DEXT, com Android.
       virtual de aplicações
       android
Desenvolvendo software para dispositivos móveis com Android                         Felipe Silveira
Links
      • Android Project
        http://code.google.com/android/
      • Android Developers
        http://developer.android.com
      • Open Handset Alliance
        http://www.openhandsetalliance.com/
      • Android Market
        http://www.android.com/market/
      • Material desta palestra
        http://www.felipesilveira.com.br/emsl

Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira
Obrigado




      Felipe Silveira
      felipesilveira.com.br
      felipe@motorola.com

Desenvolvendo software para dispositivos móveis com Android   Felipe Silveira

Desenvolvimento Android

  • 1.
    Desenvolvendo Software para Dispositivos Móveis com Felipe Silveira EMSL 09 felipe@motorola.com Encontro Mineiro de Software Livre
  • 2.
    Agenda • O que é Android • Principais Funcionalidades • Arquitetura • Aplicações Android • Ferramentas • Exemplo • Mercado Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 3.
    O que éAndroid • Sistema Operacional + Plataforma de desenvolvimento + Aplicações Padrão (SMS, Maps, Calendar...) • Código aberto • Desenvolvido pelo Google e posteriormente pela Open Handset Alliance Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 4.
    O que éAndroid • Open Handset Alliance: Consórcio formado por mais de 50 empresas Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 5.
    Principais funcionalidades • Ambiente multitask • Suporte nativo a GSM/3G, WI-FI, Bluetooth • Biblioteca Multimídia (Formatos MPEG4, MP3, JPG, ...) • Suporte a Acelerômetro/GPS/Touchscreen... Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 6.
    Arquitetura Desenvolvendo software paradispositivos móveis com Android Felipe Silveira
  • 7.
    Aplicações Android • Escritas em JAVA ou C/C++ usando a NDK – Native Development Kit • Executadas sobre a DALVIK VM • Cada aplicação é executada em um diferente processo linux • Formadas por Activitys e/ou Services Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 8.
    Aplicações Android • API’s Disponíveis: J2SE java.lang.* java.util.* ... UI android.widget.* android.view.* ... Telephony Android.telephony.IPhone android.telephony.gsm.SmsManager Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 9.
    Aplicações Android Camera android.hardware.CameraDevice Web client android.webkit.WebView HTTP org.apache.http.client.* Database (SQLite) android.database.* Google Maps com.google.android.maps.MapView Location android.location.* Multimedia android.media.* Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 10.
    Ferramentas Android SDK • aapt – Android Asset Packaging Tool • adb – Android Debug Bridge • ddms – Dalvik Debug Monitor Service • Emulador Eclipse IDE + ADT (Android Development Tools) • Ambiente de desenvolvimento com debug integrado Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 11.
    Exemplo package org.softwarelivre.emsl; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloAndroid extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText(“EMSL 2009”); setContentView(tv); } } Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 12.
    Mercado • Telefones já anunciados pela Motorola, HTC, Samsung, LG, Sony Ericsson... • Netbooks anunciados pela Acer • Android Market: Loja Motorola DEXT, com Android. virtual de aplicações android Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 13.
    Links • Android Project http://code.google.com/android/ • Android Developers http://developer.android.com • Open Handset Alliance http://www.openhandsetalliance.com/ • Android Market http://www.android.com/market/ • Material desta palestra http://www.felipesilveira.com.br/emsl Desenvolvendo software para dispositivos móveis com Android Felipe Silveira
  • 14.
    Obrigado Felipe Silveira felipesilveira.com.br felipe@motorola.com Desenvolvendo software para dispositivos móveis com Android Felipe Silveira