Apresentação do Android (Sistema
Operativo)
Em
2003 na cidade de Palo Alto na Califórnia, Andy Rubin fundou a Android
Inc. uma empresa de tecnologia totalmente independente. Dois anos mais
tarde, em 2005 o Google adquiriu a Android Inc., dentro do Google, uma
equipa liderada por Rubin, desenvolveu uma plataforma móvel baseada em
Linux, com o objetivo de ser uma plataforma flexível, aberta, livre e de
fácil migração para os fabricantes.
Em
2007 surgiu a OHA (Open Handset Alliance), aliada a diversas empresas
com o intuito de inovar e acelerar o desenvolvimento de aplicações e
serviços para Android.
O
Google fornece gratuitamente uma biblioteca para o
desenvolvimento de aplicações Android em Java, na qual a quantidade de
aplicações desenvolvidas por terceiros tem um acréscimo significativo.
Tais aplicações encontram-se disponíveis, gratuitamente como pagos no
Google Play, sendo esta a loja e distribuidora oficial de aplicações
Android.
Além
disso é um sistema robusto, na qual oferece uma série de recursos e
ferramentas que facilitam o desenvolvimento de aplicações para
dispositivos móveis, tais como máquina virtual Dalvik (baseada na JVM),
base de dados SQLite, touch screen, GPS, gráficos 3D, acelerômetro,
giroscópio e outros.
Versões da Plataforma
Para batizar cada versão do Android desde
a versão 1.5 o Google determinou dar nomes de sobremesas ou bolos em
inglês e seguem uma lógica alfabética a cada atualização do sistema.
|
Versão |
Data |
Codename |
|
1.0 |
23 de Setembro de 2008 |
Astro |
|
1.1 |
9 de Fevereiro de 2009 |
(Sem apelido) |
|
1.5 |
30 de Abril de 2009 |
Cupcake |
|
1.6 |
15 de Setembro de 2009 |
Donut |
|
2.0/2.1 |
26 de Outubro de 2009 |
Eclair |
|
2.2 |
20 de Maio de 2010 |
Froyo |
|
2.3 |
6 de Dezembro de 2010 |
Gingerbread |
|
3.0 |
22 de Feveireiro de 2011 |
Honeycomb |
|
4.0 |
19 de Outubro de 2011 |
Ice Cream Sandwich |
|
4.1/4.2 |
27 de Junho de 2012 |
Jelly Bean |
|
4.4 |
31 de Outubro de 2013 |
Kit Kat |
|
5.0 |
3 de Novembro de 2014 |
Lollipop |
Estrutura geral da plataforma Android
Algumas características principais do
Android, destacam-se:
· Framework de Aplicação: Permite
que aplicativos possam ser desenvolvidos reutilizando e substituindo
componentes existentes, o que agiliza o desenvolvimento de aplicativos.
· Máquina Virtual Dalvik: As
aplicações escritas em java são compiladas em bytecode Dalvik e
executadas utilizando a Máquina Virtual Dalvik, que é uma máquina
virtual para uso de dispositivos móveis, na qual os programas são
distribuídos em formato binário (bytecode) e possam ser executados em
qualquer dispositivo Android, independentemente do processador
utilizado.
· Browser Integrado: Possui um
navegador integrado, que utiliza a Engine Open Source Webkit e que torna
possível a renderização de páginas web no dispositivo móvel.
· Suporte Gráfico Avançado:
Bibliotecas 2D/3D baseadas no OpenGL e suporte a aceleração de gráficos
por hardware.
· Armazenamento: É utilizado SQLite
para armazenamento de dados de forma estruturada.
· Suporte Multimídia: Nativamente
suporta os padrões mais utilizados de arquivos multimídia tais como
áudio, vídeo e formatos de imagem (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG
e GIF).
· Mensagens: Tanto SMS como MMS são
formas disponíveis de envio de mensagens., dependendo do hardware.
· Telefonia GSM: Oferece suporte a
telefonia GSM, dependendo do hardware.
· Acessibilidade: Suporte de
Bluetooth, EDGE, 3G e WiFi, dependendo do hardware.
· Vídeo e Afins: Suporte de
câmeras, GPS, bússola e acelerómetro, ecrã sensível ao toque, aceleração
de gráficos 3D, dependendo do hardware.
· Ambiente de desenvolvimento (SDK):
Possui um ambiente de desenvolvimento completo, incluindo um
emulador de dispositivo, com ferramentas de depuração, monitoramento de
memória e desempenho.
Poderá ser utilizado um plugin ADT que
integra essas funcionalidades ao Eclipse, que é um ambiente de
desenvolvimento integrado (IDE-Integrated Development Environment)
genérico e multiplataforma.
A arquitetura do Android
Um dos pontos importantes na plataforma
Android é a sua arquitetura, que estrutura a criação dos aplicativos de
forma a manterem um mesmo padrão, sendo também responsável por gerenciar
os seus respetivos processos, conforme ilustrado na Figura 1,
esta arquitetura é dividida em quatro camadas:

Figura 1 - Arquitetura da plataforma
Android
- Camada de Aplicações – Juntamente
com o Android vem um conjunto de aplicações importantes que capacita ao
desenvolvedor o desenvolvimento de outras aplicações. Desses aplicativos
podemos citar Cliente de e-mail, cliente de SMS e MMS, Agenda, Mapas,
Navegador, Contactos, entre outros.
Todos os aplicativos implementados foram desenvolvidos na linguagem de
programação Java.
-
Framework de Aplicações
– O Android
fornece uma plataforma de desenvolvimento aberto, na qual os
desenvolvedores tem acesso irrestrito as API’s usados pelas aplicações
principais, sendo livres para aproveitar as vantagens dos dispositivos.
Os principais módulos são detalhados a seguir:
. Gerenciador de atividade (Activity
Manager)
–
Gere todo o ciclo de vida de uma aplicação Android, ou seja, o tempo
desde quando a aplicação é ativada até quando é finalizada por completo.
.
Provedor de Conteúdo (Content
Provider) –
Permite aos aplicativos acederem a conteúdos de outros aplicativos ou
mesmo disponibilizarem seus conteúdos aos outros.
.
Gerenciador de Notificações
(Notification Manager)
–
Aqui vai permitir que cada aplicação mostre na barra de status
notificações personalizadas.
.
Gerenciador de Recursos (Resource Manager)
–
Fornece acesso a recursos “extras” como gráficos e layoutes, por
exemplo. Pode-se ainda citar outras funcionalidades providas pelo
Framework como, um conjunto de componentes de interface que inclui
listas, caixas de texto, botões, entre
outros
recursos usados no projeto de interfaces gráficas.
- Bibliotecas
–
O Android inclui um conjunto de bibliotecas C/C++ utilizadas por vários
componentes no sistema. Essas bibliotecas permitem trabalhar com
arquivos de multimídia comuns como, por exemplo, MPEG4, H.264, MP3, AAC,
AMR, JPG e PNG.
Componentes como o Surface Manager que vai permitir a manipulação de
imagens 2D e 3D, baseadas no OpenGL (Open Graphics Library). O OpenGL é
um conjunto de várias funções que fornecem acesso a praticamente todos
os recursos do hardware de vídeo. Para completar, foi disponibilizado
também o SQLite, um simples banco de dados relacional. As aplicações que
usam SQLite podem ter assim acesso a uma base de dados relacional SQL,
sem a necessidade de recorrerem a sistemas de base de dados RDBMS (relational
database management system) separados. Isto permite um nível menor de
consumo de recursos.
-
Android
Runtime
- O Android inclui um grupo de bibliotecas que fornece a maioria das
funcionalidades disponíveis nas principais bibliotecas da linguagem
Java. Esta camada é responsável pela execução de programas complexos em
ambientes com memória limitada, bateria limitada, processamento limitado
entre outros.
Cada aplicação Android é executada em um processo próprio e restrito,
com sua própria instância da máquina virtual Dalvik. O
Dalvik
foi escrito de forma a executar várias VMs (Virtual Machines) eficientes
e baseia-se no kernel do Linux para
funcionalidades
subjacentes como o encadeamento e a gestão de baixo nível de memória.
-
Linux Kernel
- Esta é a camada mais inferior da arquitetura, é onde se encontra o
núcleo do sistema operacional, neste caso, o Kernel
Linux.
O Android utiliza o Linux para coordenar serviços vitais ao seu
funcionamento,
como segurança, gestão de memória, gestão de processos, utilização da
rede e drivers. O Kernel do Linux atua como uma camada de abstração
entre o hardware do dispositivo e o resto do conjunto de softwares que
são desenvolvidos em paralelo.
Desenvolvimento Android
Para o desenvolvimento de aplicações, a
Google disponibiliza algumas ferramentas livres e gratuitas.
- O Android SDK (Software Developer
Kit) é o kit de desenvolvimento que disponibiliza as ferramentas e
APIs necessários para desenvolver aplicações para a plataforma Android
utilizando a linguagem Java.
http://developer.android.com/sdk/index.html
Para criar
aplicativos
é necessário ter um ambiente para desenvolvimento Java.
-
Android Studio
– IDE de programação
para a plataforma Android, baseado no IntelliJ IDEA. A IDE é similar ao
Eclipse com o plugin ADT
e
fornece ferramentas de desenvolvimento integradas Android para
desenvolvimento
e depuração.
O Android Studio é simples, rápida e conta
com diversas funcionalidades para o desenvolvimento mobile, pois é especializada
na tarefa de desenvolvimento.
Uma grande vantagem da ferramenta é que é
de simples configuração, basta instalar o “java jdk” e o Android
Studio,
que vem com todos os pacotes para o desenvolvimento na plataforma
Android, incluindo o SDK, as ferramentas e os emuladores.
|
Procure outros termos na nossa enciclopédia
|
|