*
    Unisinos – UNIINFO 2011 – 26/05/2011

    Guilherme Callegaro Sesterheim
* Android e smartphones
* Fragmentação de versões do Android
* Ambiente de desenvolvimento
* Testes de aplicativos
* Publicando aplicativos
* Desenvolvimento



                                *
* O que é:
   * Sistema operacional móvel, baseado em
    Linux.
  * Adquirido pela Google em 2005 e lançado em
    2008.
  * Desenvolvimento de aplicações é baseado
    em Java / C++ / C / C# e Python.
  * Curiosidade: possui 12 milhões de linhas de
    código, divididas entre XML, C, Java e C++.



                                 *
* Hoje o Android Market
                                                               possui mais de 200 mil
                                                               aplicativos disponíveis


                                                              * Em fevereiro a Google
                                                               abriu a web store para
                                                               facilitar a procura por
                                                               aplicativos no Android
                                                               Market




* Os percentuais mostram o crescimento em comparação ao mês
 anterior à pesquisa (fevereiro)
                                                              *
Perspectivas para desenvolvedores

* O Market vende mais do que a App Store
 (maior loja de aplicativos existente)
 desde março

* Desde janeiro, é permitida a inclusão de
 pagamentos dentro de aplicativos

* Projeção de lucro para desenvolvedores
 sozinhos x empresas

* Oportunidade de trabalho com Android:
   * Sites de free-lancers
   * Projetos open source

* Empregos fixos: entre R$ 2000,00 para
 desenvolvedores e R$ 8000,00 para
                                             *
 analistas

* Visibilidade
* Smartphones
  * Marcos:
    * Nov 2009 – Lançamento do Motorola Milestone
    * Jun 2010 – Lançamento do Samsung Galaxy S

  * Melhores smartphones atualmente (09/05/2011):
    * HTC Thunderbolt 4G
    * Motorola Atrix 4G
    * HTC Inspire 4G
    * T-Mobile G2x
    * Google Nexus S 4G

                                        *
  * Curiosidade: o lucro da HTC triplicou no primeiro
   trimestre de 2011 em função da demanda por
   Androids. Já a Motorola estuda o desenvolvimento
   de um mobile OS próprio
Escolhendo smartphone para iniciar a desenvolver


* Samsung Galaxy 5 – 2.1 (R$ 400,00)*
* Motorola MB502 – 2.1 (R$ 550,00)
* Sony Ericsson Xperia X8 – 2.1 (R$ 600,00)




                                    *
Problemas do Market

* Aplicativos maliciosos – roubo de
 informações

* Em março de 2011 foram
 descobertos e removidos 52
 aplicativos virais do Android
 Market. Eles representavam
 diversas ameaças aos
 usuários, responsáveis pelos mais
 de 50 mil downloads
 (calculadora, xadrez, entre
 outros)
                                      *
* Falta de controle sobre o Market

* Iniciada a utilização do Google
 remote kill, implementado desde
* Fragmentação em smartphones
* Fragmentação em smartphones e tablets
* Tentativas de diminuição da fragmentação




                   *
* Fragmentação de versões operando em smartphones
 (15/03/2011)




                      *
Fragmentação de versões operando
    em smartphones e tablets
    (15/03/2011)




*
Tentativa de diminuição da
          fragmentação

* Há a expectativa de diminuição da
 fragmentação de Androids operando em
 smartphones e tablets através da
 liberação do 3.1 – Ice Cream
 Sandwich, que será compatível com
 ambas as plataformas


* Há uma negociação entre
                                           *
                           fabricantes e
 Google para que todos os novos
 modelos de smartphone sejam
 atualizados por pelo menos 18 meses


* Uma mudança recente da Google sobre
 o Market, fez com que a partir de então
 os aplicativos que não são compatíveis
 com o aparelho que está fazendo a
 busca, não sejam mostrados
* Baixando os SDKs
* Montando o ambiente de desenvolvimento
  * Eclipse + ADT plugin (Google)
  * Motodev studio for Android




                          *
* Baixando o SDK   *
* Escolhando os SDK que
 serão instalados
                          *
Montando o ambiente de
           desenvolvimento


* 1 – Baixar o eclipse em
 eclipse.org/downloads


* 2 – Instalar o ADT (Android development
 tools) plugin




                                *
Montando o ambiente de
                         *
   desenvolvimento
*
Montando o ambiente de desenvolvimento – alternativa

     1 – Baixar o plugin
  diretamente no site da
           Google




 2 – Mesmo procedimento
      anterior, porém
   escolhendo o arquivo
        localmente




 Após a instalação, é necessário indicar qual SDK


                                                    *
 deverá ser utilizado através do menu Window >
              Preferences > Android


    IMPORTANTE: é necessário verificar
periodicamente as atualizações, através do
menu Help > Check for Updates, ou através
            do site da Google
* Motodev studio
  * Gratuito
  * Não há restrição a aparelhos da Motorola
  * Principais diferenciais:
    * App validator (permissões, e uso de código)
    * Code snippets (adicionar facilmente códigos já
      construídos)
    * Application signing automático
    * Suporta o Android NDK (desenvolvimento em C e C++)
    * Screen capture de dispositivos emulados e físicos
    * Tradutor de aplicativos nativo

                                 *
* Construtor de interface




  *
* Emulador
* ADB




       *
* Criando dispositivos de teste




               *
* Emulador




*
* ADB – Android Debug Bridge
  * O que é
  * Localizado em <sdk-path>/platform-tools/
  * Pode receber instruções via linha de comando




       *
* Registro na Google
  * Google checkout
  * Google adsense
* Publicando um aplicativo




                             *
* Criando conta no Android Market
* Inserindo dados
 comerciais na conta do
 Google Checkout para
 poder vender
 aplicativos

* É permitido o cadastro
 de pessoas físicas




                           *
* Atrelando conta do AdSense
 ao Google Checkout
                               *
* Manage board
                 *
* Passos para publicar um aplicativo:
  * Enviando o .apk
  * Enviar recursos para divulgação
  * Descrever detalhes sobre a aplicação
  * Opções de publicação
  * Informações para contato a ser divulgada aos usuários
  * Autorização ao Google




                                      *
* Enviar
     recursos
     para
     divulgação




*
* Descrever
     detalhes sobre
     a aplicação




*
* Descrever
     detalhes sobre
     a aplicação /
     Opções de
     publicação




*
* Informações para contato a ser divulgada aos
 usuários
* Autorização ao Google
                          *
* Fundamentals / Introdução
* Manifest
* Debugging
* Activities
* Services
* UI (user interface)
* Data storage
* Security
* Widgets


               *
* Fundamentals / Introdução
  * Os aplicativos de Android são instalados através de
    um .apk
  * A partir do momento em que é instalado, cada
    aplicativo do Android tem sua sandbox (baseia-se
    no conceito de multi-usuários do Linux)
  * Cada processo recebe suas permissões específicas
  * Cada processo executa dentro de uma VM
  * Cada aplicação consegue acessar apenas o que foi
    determinado através do manifest



                *
* Manifest

             *
* Debugging
  * ADB – Android Debug Bridge
  * AVD – Android Virtual Device
  * Logcat
  * Captura de telas
  * Debug.startMethodTracing(String fileName)




               *
* Activities
   * Uma Activity é um componente da aplicação (uma
     classe), que proverá uma tela com a qual o usuário poderá
     interagir

   * Geralmente o desenho ocupa a tela inteira, mas ela pode ser
     diminuída para ser feito o efeito de flutuação sobre outras
     telas já existentes

   * Implementando métodos obrigatórios:
      *   onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy(
          )

   * Intents:
      *   ACTION_VIEW
      *   ACTION_DIAL
      *   ACTION_EDIT
      *   ACTION_MAIN




                        *
* Definindo a tela que será exibida:
     setContentView( String
     codigoArquivoXML)

    * Iniciando sub atividade:
     startActivity(Intent nova)

    * Capturando resultado de uma
     atividade startActivityForResult() /
     onActivityResult()

    * Finalizando uma atividade: finish() /
     finishActivity()

    * Guardando o estado de uma Activity
     – onSaveInstanceState() /
     onRestoreInstanceState()

    * Outros eventos importantes:
     onCreateOptionsMenu, onKeyDown, on
     MenuItemSelected, onTouchEvent, on
     WindowFocusChanged


*
* Services
  * São atividades que operam em background por
    um longo tempo e não provêem interface para o
    usuário

  * É necessário declarar os Services, que a
    aplicação poderá disparar, no manifest

  * Pode ser executado, desacoplado, e capturado
    futuramente

  * onCreate(), onStartCommand(), onBind(), onUnbi
    nd(), onRebind(), onDestroy()


               *
*
* UI – User Interface
  * ViewGroup, View
  * addView(View)
  * Listeners
                        *
* Data Storage
  * Shared Preferences – dados de usuário / internos do smartphone
  * Internal storage
    * MODE_PRIVATE
    * MODE_APPEND
    * MODE_WORLD_READABLE
    * MODE_WORLD_WRITABLE
  * External storage
    * Environment.getExternalStorageState()
    * getExternalStoragePublicDirectory() – images/music/ringtones/videos
  * SQLite databases
  * Network connection


                              *
* Security
  * Nenhuma aplicação tem permissão para interferir em outros
    processos, outras aplicações, ou informações confidenciais do
    sistema
  * Application signing
  * Permissões
    * Existem 115 diferentes tipos de permissões
    * Exemplos:
      SET_ALARM, RECORD_AUDIO, RECEIVE_SMS, REBOOT, INTERNET, FLASHLIG
      HT, DEVICE_POWER, CAMERA, CALL_PHONE, BATTERY_STATS, etc




                               *
* Widgets
  * Manifest




  * AppWidgetProviderInfo




  * onUpdate() onDeleted(), onEnabled(), onDisabled(), onReceive()

                            *
*
*   Vídeo sobre ativações do Android:                              http://www.youtube.com/watch?v=fqFpq9WXbJo&feature=player_embedded#at=118
*   Aplicativos pagos X gratuitos no Market:                       http://www.techzine.com.br/arquivo/android-market-supera-appstore-em-total-de-aplicativos-grtis/
*   Levantamento atualizado sobre aplicativos do Market:           http://www.distimo.com/appstores/app-store/19-Google_Android_Market
*   Hello world Phython para Android:                              http://www.mestreandroid.com.br/desenvolvimento-python-para-android/
*   Informações sobre o Android market:                            http://www.distimo.com/appstores/app-store/19-Google_Android_Market
*   Qual plataforma gera mais lucro:                               http://livetouch.blogspot.com/2011/03/android-x-ios-qual-plataforma-gera-mais.html
*   Início do pagamento dentro de apps:                            http://www.hardware.com.br/noticias/2011-01/app-1.html
*   Lucro da HTC triplica por causa do Android:                    http://info.abril.com.br/noticias/mercado/lucro-da-htc-triplica-com-demanda-po-androids-08042011-
    7.shl
*   Queda da fragmentação do Android:                              http://www.blogdoandroid.com/2011/02/a-fragmentacao-do-android-caiu-mesmo/
*   Ação da Google para frear a fragmentação do Android:           http://www.eletronicoblog.pop.com.br/post/7240/chega-de-fragmentacao-android-podera-ser-o-
    unico-para-todos-smartphones
*   Google remote kill:                                            http://tecnoblog.net/58868/aplicativos-maliciosos-do-android-market-serao-desativados-
    remotamente/
*   Nova web store:                                                http://www.hardware.com.br/noticias/2011-05/novidades-android-market.html
*   Tentativa de diminuição de fragmentação:                       http://www.eletronicoblog.pop.com.br/post/7240/chega-de-fragmentacao-android-podera-ser-o-
    unico-para-todos-smartphones
*   Anúncio do Ice Cream Sandwich 3.1                              http://www.engadget.com/2011/05/10/google-announces-ice-cream-sadwich-for-q4-2011-for-
    smartphones/
*   Google obriga fabricantes a atualizar androids:                http://www.gizmodo.com.br/conteudo/como-o-google-obrigara-fabricantes-a-atualizar-seus-novos-
    androids/
*   Melhora na fragmentação do Android:                            http://www.tekimobile.com/2011/03/android-ainda-e-muito-fragmentado-mas-esta-melhorando.html
*   Vantagem do froyo:                                             http://geekfiles.altervista.org/pt/android-dati-di-distribuzione-froyo-resta-in-vantaggio/


*   Instalando o ambiente:                                         http://developer.android.com/sdk/eclipse-adt.html#installing
*   Motodev Studio:                                                http://developer.motorola.com/docstools/motodevstudio/
*   ADB:                                                           http://developer.android.com/guide/developing/tools/adb.html


*   Desenvolvimento:                                               http://developer.android.com/guide/topics/fundamentals.html
*
                 http://developer.android.com/guide/topics/fundamentals/activities.html
*
                 http://developer.android.com/guide/topics/fundamentals/services.html
*                http://developer.android.com/guide/topics/ui/index.html
*                http://developer.android.com/guide/topics/data/data-storage.html
                 http://developer.android.com/guide/topics/security/security.html




                                                                                                       *
*                http://developer.android.com/guide/topics/manifest/manifest-intro.html
*                http://developer.android.com/guide/topics/appwidgets/index.html
                 http://developer.android.com/guide/developing/debugging/index.html

Android26.05

  • 1.
    * Unisinos – UNIINFO 2011 – 26/05/2011 Guilherme Callegaro Sesterheim
  • 2.
    * Android esmartphones * Fragmentação de versões do Android * Ambiente de desenvolvimento * Testes de aplicativos * Publicando aplicativos * Desenvolvimento *
  • 3.
    * O queé: * Sistema operacional móvel, baseado em Linux. * Adquirido pela Google em 2005 e lançado em 2008. * Desenvolvimento de aplicações é baseado em Java / C++ / C / C# e Python. * Curiosidade: possui 12 milhões de linhas de código, divididas entre XML, C, Java e C++. *
  • 4.
    * Hoje oAndroid Market possui mais de 200 mil aplicativos disponíveis * Em fevereiro a Google abriu a web store para facilitar a procura por aplicativos no Android Market * Os percentuais mostram o crescimento em comparação ao mês anterior à pesquisa (fevereiro) *
  • 5.
    Perspectivas para desenvolvedores *O Market vende mais do que a App Store (maior loja de aplicativos existente) desde março * Desde janeiro, é permitida a inclusão de pagamentos dentro de aplicativos * Projeção de lucro para desenvolvedores sozinhos x empresas * Oportunidade de trabalho com Android: * Sites de free-lancers * Projetos open source * Empregos fixos: entre R$ 2000,00 para desenvolvedores e R$ 8000,00 para * analistas * Visibilidade
  • 6.
    * Smartphones * Marcos: * Nov 2009 – Lançamento do Motorola Milestone * Jun 2010 – Lançamento do Samsung Galaxy S * Melhores smartphones atualmente (09/05/2011): * HTC Thunderbolt 4G * Motorola Atrix 4G * HTC Inspire 4G * T-Mobile G2x * Google Nexus S 4G * * Curiosidade: o lucro da HTC triplicou no primeiro trimestre de 2011 em função da demanda por Androids. Já a Motorola estuda o desenvolvimento de um mobile OS próprio
  • 7.
    Escolhendo smartphone parainiciar a desenvolver * Samsung Galaxy 5 – 2.1 (R$ 400,00)* * Motorola MB502 – 2.1 (R$ 550,00) * Sony Ericsson Xperia X8 – 2.1 (R$ 600,00) *
  • 8.
    Problemas do Market *Aplicativos maliciosos – roubo de informações * Em março de 2011 foram descobertos e removidos 52 aplicativos virais do Android Market. Eles representavam diversas ameaças aos usuários, responsáveis pelos mais de 50 mil downloads (calculadora, xadrez, entre outros) * * Falta de controle sobre o Market * Iniciada a utilização do Google remote kill, implementado desde
  • 9.
    * Fragmentação emsmartphones * Fragmentação em smartphones e tablets * Tentativas de diminuição da fragmentação *
  • 10.
    * Fragmentação deversões operando em smartphones (15/03/2011) *
  • 11.
    Fragmentação de versõesoperando em smartphones e tablets (15/03/2011) *
  • 12.
    Tentativa de diminuiçãoda fragmentação * Há a expectativa de diminuição da fragmentação de Androids operando em smartphones e tablets através da liberação do 3.1 – Ice Cream Sandwich, que será compatível com ambas as plataformas * Há uma negociação entre * fabricantes e Google para que todos os novos modelos de smartphone sejam atualizados por pelo menos 18 meses * Uma mudança recente da Google sobre o Market, fez com que a partir de então os aplicativos que não são compatíveis com o aparelho que está fazendo a busca, não sejam mostrados
  • 13.
    * Baixando osSDKs * Montando o ambiente de desenvolvimento * Eclipse + ADT plugin (Google) * Motodev studio for Android *
  • 14.
  • 15.
    * Escolhando osSDK que serão instalados *
  • 16.
    Montando o ambientede desenvolvimento * 1 – Baixar o eclipse em eclipse.org/downloads * 2 – Instalar o ADT (Android development tools) plugin *
  • 17.
    Montando o ambientede * desenvolvimento
  • 18.
  • 19.
    Montando o ambientede desenvolvimento – alternativa 1 – Baixar o plugin diretamente no site da Google 2 – Mesmo procedimento anterior, porém escolhendo o arquivo localmente Após a instalação, é necessário indicar qual SDK * deverá ser utilizado através do menu Window > Preferences > Android IMPORTANTE: é necessário verificar periodicamente as atualizações, através do menu Help > Check for Updates, ou através do site da Google
  • 20.
    * Motodev studio * Gratuito * Não há restrição a aparelhos da Motorola * Principais diferenciais: * App validator (permissões, e uso de código) * Code snippets (adicionar facilmente códigos já construídos) * Application signing automático * Suporta o Android NDK (desenvolvimento em C e C++) * Screen capture de dispositivos emulados e físicos * Tradutor de aplicativos nativo *
  • 21.
    * Construtor deinterface *
  • 22.
  • 23.
  • 24.
  • 25.
    * ADB –Android Debug Bridge * O que é * Localizado em <sdk-path>/platform-tools/ * Pode receber instruções via linha de comando *
  • 26.
    * Registro naGoogle * Google checkout * Google adsense * Publicando um aplicativo *
  • 27.
    * Criando contano Android Market
  • 28.
    * Inserindo dados comerciais na conta do Google Checkout para poder vender aplicativos * É permitido o cadastro de pessoas físicas *
  • 29.
    * Atrelando contado AdSense ao Google Checkout *
  • 30.
  • 31.
    * Passos parapublicar um aplicativo: * Enviando o .apk * Enviar recursos para divulgação * Descrever detalhes sobre a aplicação * Opções de publicação * Informações para contato a ser divulgada aos usuários * Autorização ao Google *
  • 32.
    * Enviar recursos para divulgação *
  • 33.
    * Descrever detalhes sobre a aplicação *
  • 34.
    * Descrever detalhes sobre a aplicação / Opções de publicação *
  • 35.
    * Informações paracontato a ser divulgada aos usuários * Autorização ao Google *
  • 36.
    * Fundamentals /Introdução * Manifest * Debugging * Activities * Services * UI (user interface) * Data storage * Security * Widgets *
  • 37.
    * Fundamentals /Introdução * Os aplicativos de Android são instalados através de um .apk * A partir do momento em que é instalado, cada aplicativo do Android tem sua sandbox (baseia-se no conceito de multi-usuários do Linux) * Cada processo recebe suas permissões específicas * Cada processo executa dentro de uma VM * Cada aplicação consegue acessar apenas o que foi determinado através do manifest *
  • 38.
  • 39.
    * Debugging * ADB – Android Debug Bridge * AVD – Android Virtual Device * Logcat * Captura de telas * Debug.startMethodTracing(String fileName) *
  • 40.
    * Activities * Uma Activity é um componente da aplicação (uma classe), que proverá uma tela com a qual o usuário poderá interagir * Geralmente o desenho ocupa a tela inteira, mas ela pode ser diminuída para ser feito o efeito de flutuação sobre outras telas já existentes * Implementando métodos obrigatórios: * onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy( ) * Intents: * ACTION_VIEW * ACTION_DIAL * ACTION_EDIT * ACTION_MAIN *
  • 41.
    * Definindo atela que será exibida: setContentView( String codigoArquivoXML) * Iniciando sub atividade: startActivity(Intent nova) * Capturando resultado de uma atividade startActivityForResult() / onActivityResult() * Finalizando uma atividade: finish() / finishActivity() * Guardando o estado de uma Activity – onSaveInstanceState() / onRestoreInstanceState() * Outros eventos importantes: onCreateOptionsMenu, onKeyDown, on MenuItemSelected, onTouchEvent, on WindowFocusChanged *
  • 42.
    * Services * São atividades que operam em background por um longo tempo e não provêem interface para o usuário * É necessário declarar os Services, que a aplicação poderá disparar, no manifest * Pode ser executado, desacoplado, e capturado futuramente * onCreate(), onStartCommand(), onBind(), onUnbi nd(), onRebind(), onDestroy() *
  • 43.
  • 44.
    * UI –User Interface * ViewGroup, View * addView(View) * Listeners *
  • 45.
    * Data Storage * Shared Preferences – dados de usuário / internos do smartphone * Internal storage * MODE_PRIVATE * MODE_APPEND * MODE_WORLD_READABLE * MODE_WORLD_WRITABLE * External storage * Environment.getExternalStorageState() * getExternalStoragePublicDirectory() – images/music/ringtones/videos * SQLite databases * Network connection *
  • 46.
    * Security * Nenhuma aplicação tem permissão para interferir em outros processos, outras aplicações, ou informações confidenciais do sistema * Application signing * Permissões * Existem 115 diferentes tipos de permissões * Exemplos: SET_ALARM, RECORD_AUDIO, RECEIVE_SMS, REBOOT, INTERNET, FLASHLIG HT, DEVICE_POWER, CAMERA, CALL_PHONE, BATTERY_STATS, etc *
  • 47.
    * Widgets * Manifest * AppWidgetProviderInfo * onUpdate() onDeleted(), onEnabled(), onDisabled(), onReceive() *
  • 48.
  • 49.
    * Vídeo sobre ativações do Android: http://www.youtube.com/watch?v=fqFpq9WXbJo&feature=player_embedded#at=118 * Aplicativos pagos X gratuitos no Market: http://www.techzine.com.br/arquivo/android-market-supera-appstore-em-total-de-aplicativos-grtis/ * Levantamento atualizado sobre aplicativos do Market: http://www.distimo.com/appstores/app-store/19-Google_Android_Market * Hello world Phython para Android: http://www.mestreandroid.com.br/desenvolvimento-python-para-android/ * Informações sobre o Android market: http://www.distimo.com/appstores/app-store/19-Google_Android_Market * Qual plataforma gera mais lucro: http://livetouch.blogspot.com/2011/03/android-x-ios-qual-plataforma-gera-mais.html * Início do pagamento dentro de apps: http://www.hardware.com.br/noticias/2011-01/app-1.html * Lucro da HTC triplica por causa do Android: http://info.abril.com.br/noticias/mercado/lucro-da-htc-triplica-com-demanda-po-androids-08042011- 7.shl * Queda da fragmentação do Android: http://www.blogdoandroid.com/2011/02/a-fragmentacao-do-android-caiu-mesmo/ * Ação da Google para frear a fragmentação do Android: http://www.eletronicoblog.pop.com.br/post/7240/chega-de-fragmentacao-android-podera-ser-o- unico-para-todos-smartphones * Google remote kill: http://tecnoblog.net/58868/aplicativos-maliciosos-do-android-market-serao-desativados- remotamente/ * Nova web store: http://www.hardware.com.br/noticias/2011-05/novidades-android-market.html * Tentativa de diminuição de fragmentação: http://www.eletronicoblog.pop.com.br/post/7240/chega-de-fragmentacao-android-podera-ser-o- unico-para-todos-smartphones * Anúncio do Ice Cream Sandwich 3.1 http://www.engadget.com/2011/05/10/google-announces-ice-cream-sadwich-for-q4-2011-for- smartphones/ * Google obriga fabricantes a atualizar androids: http://www.gizmodo.com.br/conteudo/como-o-google-obrigara-fabricantes-a-atualizar-seus-novos- androids/ * Melhora na fragmentação do Android: http://www.tekimobile.com/2011/03/android-ainda-e-muito-fragmentado-mas-esta-melhorando.html * Vantagem do froyo: http://geekfiles.altervista.org/pt/android-dati-di-distribuzione-froyo-resta-in-vantaggio/ * Instalando o ambiente: http://developer.android.com/sdk/eclipse-adt.html#installing * Motodev Studio: http://developer.motorola.com/docstools/motodevstudio/ * ADB: http://developer.android.com/guide/developing/tools/adb.html * Desenvolvimento: http://developer.android.com/guide/topics/fundamentals.html * http://developer.android.com/guide/topics/fundamentals/activities.html * http://developer.android.com/guide/topics/fundamentals/services.html * http://developer.android.com/guide/topics/ui/index.html * http://developer.android.com/guide/topics/data/data-storage.html http://developer.android.com/guide/topics/security/security.html * * http://developer.android.com/guide/topics/manifest/manifest-intro.html * http://developer.android.com/guide/topics/appwidgets/index.html http://developer.android.com/guide/developing/debugging/index.html