450 likes | 571 Views
Plataforma Android. Uma Visão Geral para Desenvolvedores. O que é o Android?. Android é uma pilha de softwares para dispositivos móveis que inclui um sistema operacional , bibliotecas e aplicações essenciais. OHA (Open Handset Alliance).
E N D
Plataforma Android Uma Visão Geral para Desenvolvedores @2011 Éfren L. Souza
O que é o Android? • Android é uma pilha de softwarespara dispositivos móveis que inclui um sistema operacional, bibliotecas e aplicações essenciais. @2011 Éfren L. Souza
OHA (Open Handset Alliance) Grupo de organizações liderado pela Google para desenvolver dispositivos móveis @2011 Éfren L. Souza
Smartphones HTC G1, Droid, Tattoo Motorola Droid (X) Sony Ericsson Suno S880 Samsung Galaxy @2011 Éfren L. Souza
Tablets Velocity Micro Cruz Gome FlyTouch Acer beTouch Toshiba Android SmartBook Cisco Android Tablet Dawa D7 @2011 Éfren L. Souza
Algumas características… • Android SDK: • Ferramentas de desenvolvimento • Emulador • Conjunto de bibliotecas • Linguagem de programação: • Java • Máquina virtual: • Dalvik (Kernel GNU/Linux) @2011 Éfren L. Souza
Arquitetura @2011 Éfren L. Souza
Arquitetura (Applications) • Disponibiliza um conjuntos de aplicações de núcleo: • Cliente de Email • Programa SMS • Calendário • Browser • Lista de Contatos • Todas essas aplicações são escritas em Java. @2011 Éfren L. Souza
Arquitetura (App Framework) Possibilita e facilita o reuso de componentes Desenvolvedores têm acesso completo às mesmas APIs usadas pelas aplicações de núcleo @2011 Éfren L. Souza
Arquitetura (Libraries) Disponibiliza um conjunto de bibliotecas C/C++ usado pelas outras camadas do sistema O desenvolvedor acessa essas bibliotecas através da camada application framework @2011 Éfren L. Souza
Arquitetura (Runtime) • Core Libraries • Fornece funcionalidades da linguagem Java • APIs • Estruturas de dados • Acesso à arquivos • Acesso à rede @2011 Éfren L. Souza
Arquitetura (Runtime) • Dalvik Virtual Machine • Desenvolvido para que um dispositivo possa executar várias MVs eficientimente @2011 Éfren L. Souza
Arquitetura (Linux Kernel) • Conta com Kernel do Linux para • Gerenciar processos e memória • Conexões de rede • Modelo de driver • Abstrai a ligação entre o hardware e as outras camadas @2011 Éfren L. Souza
Desenvolvendo aplicativos para android @2011 Éfren L. Souza
Fundamentos das Aplicações • Cadaaplicação android vive emseuprópriomundo • Processopróprio • Máquina virtual própria • Próprio ID de usuário Linux @2011 Éfren L. Souza
Componentes das Aplicações • Atividades (Activities) • Apresentauma interface • Umaaplicaçãopodeterumaouváriasatividades • A atividadepode ser comprada à umajanela • Serviços (Services) • Nãopossuem interface • Executamembackground • Nãointerferememoutrosserviçosouatividades @2011 Éfren L. Souza
Hierarquia de visão • Você define umaActivityusandoumahierarquia de View e ViewGroup @2011 Éfren L. Souza
AlgunsViews • Form Stuff, Spinner, Auto Complete @2011 Éfren L. Souza
AlgunsViews • Date Picker, Time Picker @2011 Éfren L. Souza
AlgunsViews • Map View e Web View @2011 Éfren L. Souza
Notificações • Toast, Status Bar e Dialog Notifications @2011 Éfren L. Souza
Layout @2011 Éfren L. Souza
Widgets • É uma aplicação que pode ser embutida em outras aplicações • É mais comum estar embutida no Home Screen @2011 Éfren L. Souza
Widgets @2011 Éfren L. Souza
Do quê preciso para desenvolver para Android? @2011 Éfren L. Souza
Precisa instalar... • Sistema Operacional • Windows, MAC OS ou Linux • JDK 5.0 ou superior • Eclipse • ADT (Android DevelopmentTools) • SDK Starter Package • Somente o núcleo de desenvolvimento • Usado para baixar os outros componentes @2011 Éfren L. Souza
SDK Starter Package • SDK Tools (pré-instalado) • Plataformas Android • SDK Add-Ons • USB Driver para Windows • Exemplos • Documentação @2011 Éfren L. Souza
Android Virtual Device (AVD) @2011 Éfren L. Souza
O clássico “hello world” @2011 Éfren L. Souza
Criar um novo projeto Android (1) @2011 Éfren L. Souza
Criar um novo projeto Android (2) @2011 Éfren L. Souza
Código da Aplicação @2011 Éfren L. Souza
Executando a Aplicação @2011 Éfren L. Souza
Trabalhando com o XML (1) • res/layout/main.xml • res/values/strings.xml @2011 Éfren L. Souza
Trabalhando com o XML (2) @2011 Éfren L. Souza
Como Vender Minha Aplicação? • Existem duas formas: • Cobrar pelo download • Colocar publicidade • Distribuindo a aplicação • Publicidade na aplicação @2011 Éfren L. Souza
Aplicações de Sucesso • ColorNote @2011 Éfren L. Souza
Aplicações de Sucesso • IBeer @2011 Éfren L. Souza
Aplicações de Sucesso • Mirror • http://finance.yahoo.com/family-home/article/107365/app-watch-mirror-mirror-on-the-iphone-for-free.html @2011 Éfren L. Souza
Aplicações de Sucesso • IFart • iFart developer makes $40,000 in 2 days (http://www.edibleapple.com/2008/12/28/ifart-developer-makes-40000-in-2-days/) @2011 Éfren L. Souza
Para finalizar… • É umaplataforma de desenvolvimentofácil e livre • Android vs IOS • Uma boa ideia (àsvezesnãotão boa assim), podelhedeixarrico!!! @2011 Éfren L. Souza
Obrigado! @2011 Éfren L. Souza