curso android - 01 introdução ao android
TRANSCRIPT
CURSO DE DESENVOLVIMENTO DE APLICAÇÕES PARA A PLATAFORMA ANDROID
Introdução ao Android
Android é um sistema operacional baseado no núcleo do Linux para dispositivos
móveis, desenvolvido pela Open Handset Alliance, liderada pelo Google e outras empresas.
Segundo a Google, mais de 1 milhão e 300 mil aparelhos com este sistema operacional
são ativados todos os dias. Utilizado por vários fabricantes de celulares como: HTC, Samsung,
Sony, Motorola, LG e recentemente a Positivo Informática.
O Android foi fundado como uma empresa em outubro de
2003, na Califórnia por Andy Rubin, Rich Miner, Nick Sears e Chris
White com o intuito de “produzir dispositivos móveis inteligentes que serão capazes de reconhecer as localizações e preferências de seus donos”. O Android operava secretamente,
sendo revelado apenas como um software para celulares.
Em agosto de 2005, o Google adquiriu a empresa Android,
fazendo-a como subsidiária do Google, além de permanecer com os
fundadores Andy Rubin, Rich Miner e Chris White. Desde esta
época o Google já pensava entrar no ramo do mercado de
celulares.
A Open Handset Alliance (OHA) é uma aliança de diversas
empresas com a intenção de criar padrões abertos para telefonia
móvel. Entre as empresas participantes estão Google, HTC, Dell, Intel, Motorola, Qualcomm,
Texas Instruments, Samsung, LG, T-Mobile e Nvidia.
No mesmo dia do anúncio da aliança foi
revelado o Android, como o principal software da
aliança. O primeiro celular rodando Android foi o HTC
Dream (conhecido como G1) sendo lançado em 18 de
agosto de 2008, sendo comercializado a partir do dia 22
de outubro do mesmo ano.
Andy Rubin
HTC Dream (G1)
Open Handset Alliance
Open Handset Alliance (OHA) é uma aliança de 84 empresas com a intenção de criar
padrões abertos para telefonia móvel. Essas empresas incluem Google, HTC, Sony, Dell, Intel,
Motorola, Qualcomm, Texas Instruments, Samsung Electronics, LG Electronics, T-Mobile,
Sprint Nextel, Nvidia, e Wind River Systems.
A OHA foi estabelecida em 6 de Novembro de 2007, liderada pela Google com 34
membros incluindo fabricantes de celulares, desenvolvedores de aplicações, alguns
responsáveis pela fábrica de chips. Android, a ‘bandeira da aliança, é baseada em um código
aberto licenciado em compete contra as plataformas de celulares da Apple, Microsoft, Nokia,
HP e Samsung Electronics.
Atualmente são 84 empresas participantes, porém as mais conhecidas são:
Acesse: http://www.openhandsetalliance.com/oha_members.html para mais informações.
Versões do Android
Android 1.0, foi lançado em setembro de 2008. Android está em desenvolvimento em
curso pela Google e Open Handset Alliance , e tem visto uma série de atualizações para o
sistema operacional de base desde o seu lançamento original. Essas atualizações geralmente
corrigir erros e adicionar novas funcionalidades.
Desde abril de 2009, as versões Android foram desenvolvidos sob um codinome e
lançado em ordem alfabética: Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice
Cream Sandwich, e Jelly Bean. A partir de 2012, mais de 400 milhões de dispositivos ativos
usar o sistema operacional Android em todo o mundo. O mais recente grande atualização foi
Android Jelly Bean 4.2, que foi anunciado em outubro de 2012, e foi lançado em dispositivos
comerciais em novembro.
Versões do Android – Histórico
Android beta
Foi lançado em 5 de novembro de 2007, enquanto o kit de desenvolvimento de
software (SDK) foi lançado em 12 de novembro de 2007.
Android 1.0 – Apple Pie* (API 1)
Android 1.0, a primeira versão comercial do software, foi lançado em 23 de setembro
de 2008 com o HTC Dream.
Android 1.1 – Banana Bread* (API 2)
Em 9 de Fevereiro de 2009, o Android 1.1 foi lançado com uma atualização,
inicialmente para o HTC Dream . A atualização mudou o Android API e acrescentou uma série
de novas características.
Android 1.5 – Cupcake (API 3)
Em 30 de Abril de 2009, com base no kernel Linux 2.6.27. Esta foi a primeira versão a
usar oficialmente um nome baseado em uma sobremesa, um tema que seria ser usado para
todas as versões. A atualização inclui vários novos recursos e alterações de interface do
usuário.
Android 1.6 – Donut (API 4)
Em 15 de Setembro de 2009, o Android 1.6 SDK - apelidado de Donut - foi lançado,
baseado no Linux kernel 2.6.29.
Android 2.0/2.1 – Eclair (API 5 – 7)
26 de Outubro de 2009, o Android 2.0 SDK - codinome Eclair - foi lançado, baseado no
mesmo kernel da versão anterior.
Android 2.2 – Froyo (API 8)
Em 20 de maio de 2010, o Android 2.2 (Froyo, abreviatura de Frozen Yogurt) SDK foi
lançado, baseado no Linux kernel 2.6.32.
Android 2.3 – Gingerbread (API 9 – 10)
6 de Dezembro. 2010, o Android 2.3 (Gingerbread) SDK foi lançado e tem como base o
Linux kernel 2.6.35.
Android 3.0/3.1/3.2 – Honeycomb (API 11 – 13)
Em 22 de Fevereiro de 2011, foi lançado o Android 3.0 (Honeycomb) SDK. A primeira
atualização Android apenas para uso em tablets – baseia-se no Linux kernel 2.6.36. O primeiro
dispositivo com esta versão foi o Motorola Xoom. O tablet, foi lançado dois dias depois do SDK.
Android 4.0 - Ice Cream Sandwich (API 14 – 15)
O SDK para Android 4.0.1 (Ice Cream Sandwich), baseado no Linux kernel 3.0.1, foi
lançado publicamente em 19 de outubro de 2011. Google Gabe Cohen declarou que o Android
4.0 foi "teoricamente compatível" com qualquer Android dispositivo 2.3.x em produção na
época. O código fonte para o Android 4.0 tornou-se disponível em 14 de novembro de 2011.
Android 4.1/4.2 - Jelly Bean (API 16 – 17)
O Google anunciou o Android 4.1 (Jelly Bean) em 27 de junho de 2012. Baseado no
Linux kernel 3.0.31, Jelly Bean era uma atualização incremental com o objetivo principal de
melhorar a funcionalidade e desempenho da interface do usuário. A melhora de desempenho
envolvidos no "Project Butter" ("Projeto Manteiga). Android 4,1 Jelly Bean foi liberado para o
Android Open Source Project em 9 de julho de 2012, e do Nexus 7 tablet, o primeiro dispositivo
a rodar Jelly Bean, foi lançado em 13 de julho de 2012.
Android 5.0 - Key Lime Pie
Key Lime Pie é uma suposta versão do Android 5.0, que já foi confrmado pelo Google
mas não há outras muitas informações relacionadas à versão.
*Ninguém do Google até hoje revelou quais eram os nomes das duas primeiras versões com A e B e se recusam
terminantemente a falar sobre o assunto.
0,1 0,3 2,7
10,3
50,81,6
27,5
6,7
Estatísticas de Versões
Cupcake Donut Eclair Froyo
Gingerbread Honeycomb Ice Cream Sandwich Jelly Bean
Arquitetura da Plataforma
“Na realidade, como é colocado em [Android Developers 2012], o Android é mais do que um sistema operacional. Ele é na verdade um software stack composto por cinco camadas.”
Núcleo Linux
O Android é construído sobre uma base muito sólida: o kernel do Linux (versão 2.6). O
Linux abstrai toda a camada de hardware para o Android, possibilitando a portabilidade para
uma grande gama de plataformas. Internamente o Android usa o Linux pra gerenciar memória,
processos, rede, e serviços de sistema operacional.
Bibliotecas
Acima do kernel ficam as bibliotecas C/C++ utilizadas por diversos dos componentes
do sistema, como: uma implementação da biblioteca padrão do C (libc), mas com licença BSD
(Berkeley Software Distribution) e otimizada para dispositivos embarcados; bibliotecas para
suporte a formatos de áudio, vídeo e imagens; um gerenciador que intermedia o acesso ao
display e compõe as camadas de imagem 2D e 3D; o engine para navegadores WebKit; bibliotecas para gráficos 2D (SGL) e 3D (OpenGL ES); um renderizador de fontes bitmap e
vetoriais; e o banco de dados relacional SQLite.
Android Tempo/ Execução
No Android, aplicações escritas em Java são executadas em sua própria máquina
virtual, que por sua vez é executada em seu próprio processo no Linux, isolando-a de futuras
aplicações e facilitando o controle de recursos. O Android Runtime é composto pela máquina
virtual chamada Dalvik VM, onde as aplicações são executadas, e por um conjunto de
bibliotecas que fornecem boa parte das funcionalidades encontradas nas bibliotecas padrão do
Java.
Quadro de Aplicações
Na camada acima, escrita em Java, fica a framework de aplicações, que fornece todas
as funcionalidades necessárias para a construção de aplicativos, através das bibliotecas
nativas. Aplicações Android podem possuir quatro tipos de componentes: activities, services,
content providers e broadcast receivers. Além destas peças fundamentais em uma
aplicação, existem os recursos, que são compostos por layouts, strings, estilos e imagens e
o arquivo de manifesto, que declara os componentes da aplicação e os recursos do
dispositivo que ela irá utilizar.
Aplicações
A camada mais alta no diagrama da arquitetura do Android é a camada de aplicativos e
widgets. Pense nisso como a ponta do iceberg Android. Os usuários finais só vão ver esses
programas, felizmente sem saber de toda a ação acontecendo por trás. Como um
desenvolvedor Android, no entanto, você sabe melhor.
Desenvolvendo Aplicações
“Para a alegria geral da nação é possível desenvolver uma aplicação
para o Android utilizando a linguagem Java em seu ambiente de
desenvolvimento preferido, como o Eclipse, Netbeans ou IntelliJ IDEA. O
Eclipse é o ambiente de desenvolvimento preferido pelo Google, e há um
plugin chamado ADT (Android Development Tools) para facilitar o
desenvolvimento, testes e compilação do projeto...” (Ricardo R. Lecheta,
2011, p.28-29).
____________________________________________________________________________