Google   Android João G. Birk www.jlsoftware.com.br [email_address]
Agenda Histórico Plataforma Arquitetura do Aplicativo Android SDK Detalhes Importantes View / XML Internacionalização Android Market Configuração / Hello World
Histórico - Julho de 2005 a Google adquiriu a Android Inc., uma pequena companhia em Palo Alto, California, USA. Foi desenvolvida uma plataforma de telefone móvel baseada no kernel do linux, com o objetivo de ser uma plataforma flexível, aberta e de fácil migração para os fabricantes. A plataforma Android é o produto do Open Handset Alliance, um grupo de organizações colaborando para a construção de um telefone móvel melhor. O primeiro telefone portátil com capacidade para Android no mercado foi o dispositivo G1 fabricado pela HTC e fornecido pela T-Mobile. Para estimular a inovação, o Google patrocinou duas séries do "Android Developer Challenges," onde milhões de dólares foram envolvidos nas melhores participações.
Plataforma O Android é um ambiente em camadas baseado em kernel Linux e que inclui funções ricas. O subsistema da UI inclui: Janelas Visualizações Widgets para a exibição de elementos comuns como caixas de edição, listas e listas suspensas. Conectividade:  O Android suporta uma grande variedade de tecnologias de conectividade incluindo Bluetooth, EDGE, 3G, e Wi-Fi.
Plataforma Mensagens:  Tanto SMS como MMS são formas disponíveis de envio de mensagens. Navegador:  O navegador disponível no sistema é baseado no framework de código aberto conhecido como WebKit. Máquina Virtual Dalvik:  Aplicações escritas em Java são compiladas em bytecodes Dalvik e executadas usando a Máquina virtual Dalvik, que é uma máquina virtual especializada desenvolvida para uso em dispositivos móveis, o que permite que programas sejam distribuídos em formato binário (bytecode) e possam ser executados em qualquer dispositivo Android, independentemente do processador utilizado.
Plataforma Multimídia:  O sistema suporta formatos de áudio e vídeo como: MPEG-4, 3GPP, MP3, WAVE, WMA, WMV.  Suporte Adicional de Hardware:  O Android é totalmente capaz de fazer uso de câmaras de vídeo, tela sensível ao toque, GPS, acelerômetros e aceleração de gráficos 3D, incluindo a biblioteca OpenGL.  Armazenamento de dados:  O peso do armazenamento de dados é amenizado porque a plataforma Android inclui o banco de dados SQLite de software livre popular.
Plataforma
Arquitetura do Aplicativo Os aplicativos Android são escritos na linguagem de programação Java e são executados em uma máquina virtual. É importante observar que a VM não é uma JVM, como você pode esperar, mas é uma Dalvik Virtual Machine, uma tecnologia de software livre. Cada aplicativo Android é executado em uma instância da Dalvik VM, que, por sua vez, reside em um processo gerenciado por kernel Linux, conforme mostrado abaixo:
Arquitetura do Aplicativo Um aplicativo Android consiste em uma ou mais das classificações a seguir: Activity:  Um aplicativo que possui uma UI visível é implementado com uma atividade. Quando um usuário seleciona um aplicativo da tela inicial ou de um ativador de aplicativo, uma atividade é iniciada. Service:  Um serviço deve ser utilizado para qualquer aplicativo que precise persistir por um longo período de tempo, como um monitor de rede ou um aplicativo de verificação de atualização. Content Provider:  Você pode pensar em provedores de conteúdo como um servidor de banco de dados. O trabalho de um provedor de conteúdo é gerenciar o acesso aos dados que persistem, como um banco de dados SQLite.
Arquitetura do Aplicativo BroadcastReceiver:  Um aplicativo Android pode ser ativado para processar um elemento de dados ou para responder a um evento, como o recebimento de uma mensagem de texto. Um aplicativo Android, junto com um arquivo chamado AndroidManifest.xml, é implementado em um dispositivo. O AndroidManifest.xml contém as informações de configuração necessárias para você instalá-lo corretamente no dispositivo. Ele inclui os nomes de classes necessários e os tipos de eventos que o aplicativo está pronto para processar, além das permissões necessárias que o aplicativo precisa para execução.
Arquitetura do Aplicativo
Android SDK Versão atual 2.1 API’s Audio, Vídeo SMS HTTP, Sockets, Web Services Google Maps SQLite Arquivos, Properties Content Provider Service, BroadcastReceiver Gesture Input OpenGL Text-to-Speech Style / Themes Notification Manager Reflection XML Parser
Android SDK IDE Eclipse Plugin Linguagem Java 1.5 XML Log LogCat Suportes Adobe Flash
Detalhes Importantes Diversas aplicações podem rodar ao mesmo tempo. É possível criar aplicações que rodem em background. Agendar execuções de tarefas/aplicativos e recebimento de notifications. Aplicações devem ser assinadas antes da instalação no dispositivo. Possibilidade de alterar o SO, ou seja, qualquer aplicação nativa. Não há diferença entre a sua aplicação e uma aplicação nativa.
View / XML
View / XML
Internacionalização Locale Code Language / Country Location of strings.xml Location of flag.png Default English / United Kingdom res/values/ res/drawable/ de-rDE German / Germany res/values-de/ res/drawable-de-rDE/ fr-rFR French / France res/values-fr/ res/drawable-fr-rFR/ fr-rCA French / Canada res/values-fr/ res/drawable-fr-rCA/ en-rCA English / Canada (res/values/) res/drawable-en-rCA/ ja-rJP Japanese / Japan res/values-ja/ res/drawable-ja-rJP/ en-rUS English / United States (res/values/) res/drawable-en-rUS/
Android Market Se registrar como android developer (25 US$) Registrar a aplicação com o certificado. Após se cadastrar como android developer será possível adquirir um telefone de desenvolvimento. Lucro/Custo: 70/30.
Muito Obrigado! João G. Birk www.jlsoftware.com.br [email_address]

Desenvolvendo Soluções com Android

  • 1.
    Google Android João G. Birk www.jlsoftware.com.br [email_address]
  • 2.
    Agenda Histórico PlataformaArquitetura do Aplicativo Android SDK Detalhes Importantes View / XML Internacionalização Android Market Configuração / Hello World
  • 3.
    Histórico - Julhode 2005 a Google adquiriu a Android Inc., uma pequena companhia em Palo Alto, California, USA. Foi desenvolvida uma plataforma de telefone móvel baseada no kernel do linux, com o objetivo de ser uma plataforma flexível, aberta e de fácil migração para os fabricantes. A plataforma Android é o produto do Open Handset Alliance, um grupo de organizações colaborando para a construção de um telefone móvel melhor. O primeiro telefone portátil com capacidade para Android no mercado foi o dispositivo G1 fabricado pela HTC e fornecido pela T-Mobile. Para estimular a inovação, o Google patrocinou duas séries do "Android Developer Challenges," onde milhões de dólares foram envolvidos nas melhores participações.
  • 4.
    Plataforma O Androidé um ambiente em camadas baseado em kernel Linux e que inclui funções ricas. O subsistema da UI inclui: Janelas Visualizações Widgets para a exibição de elementos comuns como caixas de edição, listas e listas suspensas. Conectividade: O Android suporta uma grande variedade de tecnologias de conectividade incluindo Bluetooth, EDGE, 3G, e Wi-Fi.
  • 5.
    Plataforma Mensagens: Tanto SMS como MMS são formas disponíveis de envio de mensagens. Navegador: O navegador disponível no sistema é baseado no framework de código aberto conhecido como WebKit. Máquina Virtual Dalvik: Aplicações escritas em Java são compiladas em bytecodes Dalvik e executadas usando a Máquina virtual Dalvik, que é uma máquina virtual especializada desenvolvida para uso em dispositivos móveis, o que permite que programas sejam distribuídos em formato binário (bytecode) e possam ser executados em qualquer dispositivo Android, independentemente do processador utilizado.
  • 6.
    Plataforma Multimídia: O sistema suporta formatos de áudio e vídeo como: MPEG-4, 3GPP, MP3, WAVE, WMA, WMV. Suporte Adicional de Hardware: O Android é totalmente capaz de fazer uso de câmaras de vídeo, tela sensível ao toque, GPS, acelerômetros e aceleração de gráficos 3D, incluindo a biblioteca OpenGL. Armazenamento de dados: O peso do armazenamento de dados é amenizado porque a plataforma Android inclui o banco de dados SQLite de software livre popular.
  • 7.
  • 8.
    Arquitetura do AplicativoOs aplicativos Android são escritos na linguagem de programação Java e são executados em uma máquina virtual. É importante observar que a VM não é uma JVM, como você pode esperar, mas é uma Dalvik Virtual Machine, uma tecnologia de software livre. Cada aplicativo Android é executado em uma instância da Dalvik VM, que, por sua vez, reside em um processo gerenciado por kernel Linux, conforme mostrado abaixo:
  • 9.
    Arquitetura do AplicativoUm aplicativo Android consiste em uma ou mais das classificações a seguir: Activity: Um aplicativo que possui uma UI visível é implementado com uma atividade. Quando um usuário seleciona um aplicativo da tela inicial ou de um ativador de aplicativo, uma atividade é iniciada. Service: Um serviço deve ser utilizado para qualquer aplicativo que precise persistir por um longo período de tempo, como um monitor de rede ou um aplicativo de verificação de atualização. Content Provider: Você pode pensar em provedores de conteúdo como um servidor de banco de dados. O trabalho de um provedor de conteúdo é gerenciar o acesso aos dados que persistem, como um banco de dados SQLite.
  • 10.
    Arquitetura do AplicativoBroadcastReceiver: Um aplicativo Android pode ser ativado para processar um elemento de dados ou para responder a um evento, como o recebimento de uma mensagem de texto. Um aplicativo Android, junto com um arquivo chamado AndroidManifest.xml, é implementado em um dispositivo. O AndroidManifest.xml contém as informações de configuração necessárias para você instalá-lo corretamente no dispositivo. Ele inclui os nomes de classes necessários e os tipos de eventos que o aplicativo está pronto para processar, além das permissões necessárias que o aplicativo precisa para execução.
  • 11.
  • 12.
    Android SDK Versãoatual 2.1 API’s Audio, Vídeo SMS HTTP, Sockets, Web Services Google Maps SQLite Arquivos, Properties Content Provider Service, BroadcastReceiver Gesture Input OpenGL Text-to-Speech Style / Themes Notification Manager Reflection XML Parser
  • 13.
    Android SDK IDEEclipse Plugin Linguagem Java 1.5 XML Log LogCat Suportes Adobe Flash
  • 14.
    Detalhes Importantes Diversasaplicações podem rodar ao mesmo tempo. É possível criar aplicações que rodem em background. Agendar execuções de tarefas/aplicativos e recebimento de notifications. Aplicações devem ser assinadas antes da instalação no dispositivo. Possibilidade de alterar o SO, ou seja, qualquer aplicação nativa. Não há diferença entre a sua aplicação e uma aplicação nativa.
  • 15.
  • 16.
  • 17.
    Internacionalização Locale CodeLanguage / Country Location of strings.xml Location of flag.png Default English / United Kingdom res/values/ res/drawable/ de-rDE German / Germany res/values-de/ res/drawable-de-rDE/ fr-rFR French / France res/values-fr/ res/drawable-fr-rFR/ fr-rCA French / Canada res/values-fr/ res/drawable-fr-rCA/ en-rCA English / Canada (res/values/) res/drawable-en-rCA/ ja-rJP Japanese / Japan res/values-ja/ res/drawable-ja-rJP/ en-rUS English / United States (res/values/) res/drawable-en-rUS/
  • 18.
    Android Market Seregistrar como android developer (25 US$) Registrar a aplicação com o certificado. Após se cadastrar como android developer será possível adquirir um telefone de desenvolvimento. Lucro/Custo: 70/30.
  • 19.
    Muito Obrigado! JoãoG. Birk www.jlsoftware.com.br [email_address]