Download - Desenvolvendo Soluções com Android

Transcript
Page 1: Desenvolvendo Soluções com Android

Google Android

João G. [email protected]

Page 2: Desenvolvendo Soluções com Android

Agenda

1. Histórico2. Plataforma3. Arquitetura do Aplicativo4. Android SDK5. Detalhes Importantes6. View / XML7. Internacionalização8. Android Market9. Configuração / Hello World

Page 3: Desenvolvendo Soluções com Android

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.

Page 4: Desenvolvendo Soluções com Android

PlataformaO 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.

Page 5: Desenvolvendo Soluções com Android

PlataformaMensagens: 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.

Page 6: Desenvolvendo Soluções com Android

PlataformaMultimí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.

Page 7: Desenvolvendo Soluções com Android

Plataforma

Page 8: Desenvolvendo Soluções com Android

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:

Page 9: Desenvolvendo Soluções com Android

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.

Page 10: Desenvolvendo Soluções com Android

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.

Page 11: Desenvolvendo Soluções com Android

Arquitetura do Aplicativo

Page 12: Desenvolvendo Soluções com Android

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

Page 13: Desenvolvendo Soluções com Android

Android SDK IDE Eclipse Plugin Linguagem

Java 1.5

XML Log

LogCat Suportes

Adobe Flash

Page 14: Desenvolvendo Soluções com Android

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.

Page 15: Desenvolvendo Soluções com Android

View / XML

Page 16: Desenvolvendo Soluções com Android

View / XML

Page 17: Desenvolvendo Soluções com Android

InternacionalizaçãoLocale Code

Language / Country

Location of strings.xml

Location of flag.png

DefaultEnglish / 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-rUSEnglish / United States

(res/values/)res/drawable-en-rUS/

Page 18: Desenvolvendo Soluções com Android

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.

Page 19: Desenvolvendo Soluções com Android

Muito Obrigado!

João G. [email protected]