SlideShare ist ein Scribd-Unternehmen logo
1 von 6
Downloaden Sie, um offline zu lesen
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            Andy Rubin
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.




                                                                     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.




                               Estatísticas de Versões
         Cupcake                Donut                   Eclair                Froyo
         Gingerbread            Honeycomb               Ice Cream Sandwich    Jelly Bean
                                                  0,1      0,3    2,7

                                                6,7
                                                         10,3


                                     27,5




                                                           50,8
                                   1,6
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).




____________________________________________________________________________

Weitere ähnliche Inhalte

Was ist angesagt?

Iniciando o Desenvolvimento para o Google Android
Iniciando o Desenvolvimento para o Google AndroidIniciando o Desenvolvimento para o Google Android
Iniciando o Desenvolvimento para o Google AndroidSalvador Torres
 
Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1Erisvaldo Junior
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma AndroidNatanael Fonseca
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Jose Berardo
 
Palestra sobre Android - Faculdade Hélio Rocha
Palestra sobre Android  - Faculdade Hélio RochaPalestra sobre Android  - Faculdade Hélio Rocha
Palestra sobre Android - Faculdade Hélio RochaUbiracy Santos
 
Introdução à plataforma android.
Introdução à plataforma android.Introdução à plataforma android.
Introdução à plataforma android.Everton Dewes
 
Desenvolvimento Android: Aula 01
Desenvolvimento Android: Aula 01Desenvolvimento Android: Aula 01
Desenvolvimento Android: Aula 01Gustavo Zimmermann
 
Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)
Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)
Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)Santhyago Gallao
 
Programando Android - Aula 1
Programando Android - Aula 1Programando Android - Aula 1
Programando Android - Aula 1Kalil Maciel
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4Jose Berardo
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade androidRoberson Alves
 

Was ist angesagt? (20)

Android
Android Android
Android
 
Iniciando o Desenvolvimento para o Google Android
Iniciando o Desenvolvimento para o Google AndroidIniciando o Desenvolvimento para o Google Android
Iniciando o Desenvolvimento para o Google Android
 
Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1Desenvolvimento de Apps e Games para Android - Parte 1
Desenvolvimento de Apps e Games para Android - Parte 1
 
Android - Conceito e Arquitetura
Android - Conceito e ArquiteturaAndroid - Conceito e Arquitetura
Android - Conceito e Arquitetura
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional Android
 
Android
AndroidAndroid
Android
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
 
Palestra sobre Android - Faculdade Hélio Rocha
Palestra sobre Android  - Faculdade Hélio RochaPalestra sobre Android  - Faculdade Hélio Rocha
Palestra sobre Android - Faculdade Hélio Rocha
 
Introdução à plataforma android.
Introdução à plataforma android.Introdução à plataforma android.
Introdução à plataforma android.
 
Desenvolvimento Android: Aula 01
Desenvolvimento Android: Aula 01Desenvolvimento Android: Aula 01
Desenvolvimento Android: Aula 01
 
Trabalho so android
Trabalho so   androidTrabalho so   android
Trabalho so android
 
Trabalho android
Trabalho androidTrabalho android
Trabalho android
 
Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)
Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)
Android: História, Mercado e Possibilidades (#TDC2011 - Floripa)
 
Android
AndroidAndroid
Android
 
Programando Android - Aula 1
Programando Android - Aula 1Programando Android - Aula 1
Programando Android - Aula 1
 
Android Aula 1
Android Aula 1Android Aula 1
Android Aula 1
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4
 
Aula01 mobilidade android
Aula01 mobilidade androidAula01 mobilidade android
Aula01 mobilidade android
 
O que é android
O que é androidO que é android
O que é android
 

Ähnlich wie Curso Android - 01 Introdução ao Android

Tudo o que você queria saber sobre Android, mas não foi no Google pesquisar
Tudo o que você queria saber sobre Android, mas não foi no Google pesquisarTudo o que você queria saber sobre Android, mas não foi no Google pesquisar
Tudo o que você queria saber sobre Android, mas não foi no Google pesquisarUEPA
 
E tertulia paol-rq
E tertulia paol-rqE tertulia paol-rq
E tertulia paol-rqKMILT
 
Desenvolvimento para Android
Desenvolvimento para AndroidDesenvolvimento para Android
Desenvolvimento para Android3waynet
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisRogério Moraes de Carvalho
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - BásicoHugoDalevedove
 
Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Androidjgbirk
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Androidilegra
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012guisester
 
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação Thiago Marinho
 

Ähnlich wie Curso Android - 01 Introdução ao Android (20)

10 android - leonardo
10   android - leonardo10   android - leonardo
10 android - leonardo
 
GSOIII - INTRODUÇÃO AO ANDROID
GSOIII - INTRODUÇÃO AO ANDROIDGSOIII - INTRODUÇÃO AO ANDROID
GSOIII - INTRODUÇÃO AO ANDROID
 
Android
AndroidAndroid
Android
 
Tudo o que você queria saber sobre Android, mas não foi no Google pesquisar
Tudo o que você queria saber sobre Android, mas não foi no Google pesquisarTudo o que você queria saber sobre Android, mas não foi no Google pesquisar
Tudo o que você queria saber sobre Android, mas não foi no Google pesquisar
 
Android
AndroidAndroid
Android
 
E tertulia paol-rq
E tertulia paol-rqE tertulia paol-rq
E tertulia paol-rq
 
Android
AndroidAndroid
Android
 
Desenvolvimento para Android
Desenvolvimento para AndroidDesenvolvimento para Android
Desenvolvimento para Android
 
Android
AndroidAndroid
Android
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - Básico
 
Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Android
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
O futuro do Android
O futuro do AndroidO futuro do Android
O futuro do Android
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Android
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012
 
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
Apresentação Trabalho de Conclusão de Curso - Ciência da Computação
 
Android Developing
Android DevelopingAndroid Developing
Android Developing
 
Android
AndroidAndroid
Android
 

Mehr von Ronildo Oliveira

Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017Ronildo Oliveira
 
Towards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic MusicTowards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic MusicRonildo Oliveira
 
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...Ronildo Oliveira
 
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...Ronildo Oliveira
 
A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...Ronildo Oliveira
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoRonildo Oliveira
 
Realidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em JogosRealidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em JogosRonildo Oliveira
 
Scape From Weirdland - O Jogo
Scape From Weirdland - O JogoScape From Weirdland - O Jogo
Scape From Weirdland - O JogoRonildo Oliveira
 
Documento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu TelefoneDocumento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu TelefoneRonildo Oliveira
 
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...Ronildo Oliveira
 
Calculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de IntegraisCalculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de IntegraisRonildo Oliveira
 
Apresentação de Slide - Deadlocks
Apresentação de Slide - DeadlocksApresentação de Slide - Deadlocks
Apresentação de Slide - DeadlocksRonildo Oliveira
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisRonildo Oliveira
 
Conceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisConceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisRonildo Oliveira
 
Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.Ronildo Oliveira
 
Exercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresExercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresRonildo Oliveira
 
Minicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CEMinicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CERonildo Oliveira
 
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...Ronildo Oliveira
 
Curso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos ChavesCurso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos ChavesRonildo Oliveira
 

Mehr von Ronildo Oliveira (20)

Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017Desenvolvimento de jogos Mobile - FliSol 2017
Desenvolvimento de jogos Mobile - FliSol 2017
 
Towards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic MusicTowards a Computational Model of Melody Identification in Polyphonic Music
Towards a Computational Model of Melody Identification in Polyphonic Music
 
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
 
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
Avaliação Heurística de um Ambiente Virtual para Análise de Rotas de Execução...
 
A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...A relevância da participação em centros acadêmicos para a formação complement...
A relevância da participação em centros acadêmicos para a formação complement...
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
 
Realidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em JogosRealidade Virtual e Realidade Aumentada em Jogos
Realidade Virtual e Realidade Aumentada em Jogos
 
Scape From Weirdland - O Jogo
Scape From Weirdland - O JogoScape From Weirdland - O Jogo
Scape From Weirdland - O Jogo
 
Documento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu TelefoneDocumento de Requisitos do Sistema - Meu Telefone
Documento de Requisitos do Sistema - Meu Telefone
 
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...Slide Encontros Universitários 2015 UFC  - SOLID, Design de Software e Progra...
Slide Encontros Universitários 2015 UFC - SOLID, Design de Software e Progra...
 
Calculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de IntegraisCalculo I - Uma Breve Introdução ao Estudo de Integrais
Calculo I - Uma Breve Introdução ao Estudo de Integrais
 
Apresentação de Slide - Deadlocks
Apresentação de Slide - DeadlocksApresentação de Slide - Deadlocks
Apresentação de Slide - Deadlocks
 
Deadlocks (Resumo)
Deadlocks (Resumo)Deadlocks (Resumo)
Deadlocks (Resumo)
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas Operacionais
 
Conceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisConceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionais
 
Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.Fases do desenvolvimento de software baseado no código de ética.
Fases do desenvolvimento de software baseado no código de ética.
 
Exercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de ComputadoresExercícios Resolvidos - Arquitetura e Organização de Computadores
Exercícios Resolvidos - Arquitetura e Organização de Computadores
 
Minicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CEMinicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CE
 
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
Curso Android - 02 configuração do ambiente (Tutorial de Instalação Eclipse +...
 
Curso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos ChavesCurso Android - 03 Conceitos Chaves
Curso Android - 03 Conceitos Chaves
 

Curso Android - 01 Introdução ao Android

  • 1. 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 Andy Rubin 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. HTC Dream (G1)
  • 2. 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
  • 3. 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)
  • 4. 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. Estatísticas de Versões Cupcake Donut Eclair Froyo Gingerbread Honeycomb Ice Cream Sandwich Jelly Bean 0,1 0,3 2,7 6,7 10,3 27,5 50,8 1,6
  • 5. 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.
  • 6. 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). ____________________________________________________________________________