Plataforma Android

Leonardo Sousa
Leonardo SousaComputer Student at Pontifícia Universidade Católica do Rio de Janeiro
Universidade Federal de Mato Grosso
 Campus Universitário do Araguaia
      Ciência da Computação




                                      Leonardo da Silva Sousa
Tópicos
   Android: o que é?
   Arquitetura do Android;
   Camada 1: applications;
   Camada 2: middleware;
   Camada 3: Linux Kernel;
   Dalvick Virtual Machine;
   Transformando um código Java em um executável DVM;
   Arquitetura de uma Aplicação;
   Componentes uma Aplicação;
   AndroidManifest
Android: o que é?
 Plataforma para dispositivos móveis baseada
 em Linux com interface de programação em
 Java.

 Desenvolvida pela Open Handset Alliance
 (OHA), liderada pela Google.
Android: o que é?
 Inclui um sistema operacional, um
 middleware e uma chave para as aplicações.

 Dalvick Virtual Machine (DVM).


 Android    SDK: um compilador, um
 depurador de código e um emulador de
 dispositivos.
Arquitetura do Android
 A arquitetura por trás do sistema operacional
 Android é representada através de uma pilha.

 Três camadas: na parte superior encontram-
 se as applications (app), na camada
 intermediária o middleware e na base
 encontra-se o Linux Kernel.
Arquitetura do Android
Camada 1: applications
 A primeira camada é formada por uma lista
 de aplicações padrões que executam no
 sistema operacional.

 Nesta camada também ficará as aplicações
 desenvolvidas por terceiros.
Camada 2: middleware
 A segunda camada é formada pelo:


framework      da     aplicação    (aplication
 framework)

o conjunto de bibliotecas (libraries);


 ambiente de execução (runtime Android).
Application Framework
 Conjunto de componentes pré-instalados
 nos dispositivos.

 Permite   que novas estruturas       sejam
 utilizadas para futuras aplicações.

 Prioriza a reutilização de código.
Application Framework
Libraries
 Bibliotecas nativas do Android.


 Essas bibliotecas são pré-instaladas pelo o
 fabricante.

 São todas escritas em        linguagem   de
 programação C ou C++
Libraries
Android Runtime
 É nesta subcamada que se encontra as
 principais bibliotecas Java e a máquina
 virtual Dalvick (DVM).

 Diferentes tanto do JSE quanto do JME.


 Várias sobreposições:   facilidade       aos
 programadores que conhecem Java.
Camada 3: Linux Kernel
 Conjunto de drives que formam o Linux Kernel.


 Atua como uma camada de abstração entre o
 hardware e o software.

 Responsável       por      serviços  como
 segurança, gerenciamento de memória e de
 processos, rede e controle de drives.
Dalvick Virtual Machine
 Máquina     virtual   Java   otimizada   para
 dispositivos móveis.

 Programador tem acesso total à linguagem de
 programação Java apesar de alguns pacotes e
 APIs do JSE não serem suportados.

 O código Java é compilado com um compilador
 Java padrão e depois são interpretados pela
 Dalvick.
Transformando um código Java em
um executável DVM
Arquitetura de uma Aplicação
 A arquitetura de uma aplicação Android ao
 contrário de uma aplicação para desktop é
 baseado em      componentes que se
 comunicam entre si, isso é feito usando
 Intents.

 Intents é um objeto mensagem que serve
 para comunicação entre as aplicações ou
 para iniciar uma nova aplicação.
Componentes uma Aplicação
 São cada bloco que uma aplicação é divida.


Activities: representa uma única tela com o
 usuário. Ex: gerenciador de email.

Services: é um componente que executa em
 background. Ex: player de música.
Componentes uma Aplicação
Content Providers: gerencia o compartilha-
 mento de dados.

Responsável por permitir que uma aplicação
 acesse os dados de um banco dados, de um
 sistema de arquivos, na web ou em qualquer
 outro sistema de armazenamento que a
 aplicação possa acessar.
Componentes uma Aplicação
Broadcast Receivers: responsável por receber
 e reagir à broadcast.

 Um exemplo de broadcast é quando o
 sistema anuncia que a bateria está acabando.
AndroidManifest
 Antes da aplicação iniciar a execução é
 necessário que o sistema conheça todos os
 componentes que a aplicação necessitará para
 sua execução.

 Essas informações são encontradas no arquivo
 “AndroiManifest.xml”
1 of 21

Recommended

Introdução ao android e plataforma android by
Introdução ao android e plataforma androidIntrodução ao android e plataforma android
Introdução ao android e plataforma androidJuarez Junior
802 views49 slides
PALESTRA :: Desenvolvimento para plataforma Android by
PALESTRA :: Desenvolvimento para plataforma Android PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android Fundação Vanzolini
1.8K views36 slides
Android by
AndroidAndroid
AndroidEverson Wolf
1.8K views15 slides
Android - Conceito e Arquitetura by
Android - Conceito e ArquiteturaAndroid - Conceito e Arquitetura
Android - Conceito e ArquiteturaAna Dolores Lima Dias
40.8K views35 slides
Introdução à programação para Android by
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para AndroidJorge Cardoso
13.3K views27 slides
Arquitetura da Plataforma Android by
Arquitetura da Plataforma AndroidArquitetura da Plataforma Android
Arquitetura da Plataforma AndroidRonildo Oliveira
2K views1 slide

More Related Content

What's hot

Android by
AndroidAndroid
AndroidFelipe J. R. Vieira
2.8K views21 slides
Introdução ao Android Studio by
Introdução ao Android StudioIntrodução ao Android Studio
Introdução ao Android StudioRamon Ribeiro Rabello
60.6K views51 slides
Descomplicando o Android by
Descomplicando o AndroidDescomplicando o Android
Descomplicando o AndroidHeider Lopes
1K views75 slides
Android by
AndroidAndroid
AndroidMilena Rebouças
2.2K views24 slides
Curso de Android Aula 4 by
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4Jose Berardo
11.7K views95 slides
Android by
Android Android
Android Fábio Eliseu
1.3K views108 slides

What's hot(20)

Descomplicando o Android by Heider Lopes
Descomplicando o AndroidDescomplicando o Android
Descomplicando o Android
Heider Lopes1K views
Curso de Android Aula 4 by Jose Berardo
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4
Jose Berardo11.7K views
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer... by Tchelinux
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Tchelinux7.5K views
Curso de Android - aula 3 by Jose Berardo
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3
Jose Berardo6.5K views
Curso de Google Android - Aula 1 by Jose Berardo
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
Jose Berardo5.8K views
Introdução à plataforma Android by Natanael Fonseca
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
Natanael Fonseca8.9K views
Introdução ao android - siecomp 2015.1 by Afonso Machado
Introdução ao android - siecomp 2015.1Introdução ao android - siecomp 2015.1
Introdução ao android - siecomp 2015.1
Afonso Machado950 views
Minicurso de Android by Edgar Eler
Minicurso de AndroidMinicurso de Android
Minicurso de Android
Edgar Eler266 views
Curso de Android - aula 2 by Jose Berardo
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2
Jose Berardo5.8K views

Similar to Plataforma Android

Programe seu androide by
Programe seu androidePrograme seu androide
Programe seu androidefelipecarlos1991
319 views5 slides
Programe seu androide by
Programe seu androidePrograme seu androide
Programe seu androidefelipecarlos1991
189 views5 slides
Programe seu androide by
Programe seu androidePrograme seu androide
Programe seu androidefelipecarlos1991
282 views5 slides
Introdução ao android by
Introdução ao androidIntrodução ao android
Introdução ao androidPaulo Remoli
1.1K views32 slides
Android juliana-mono by
Android juliana-monoAndroid juliana-mono
Android juliana-monoJoão Luis Teixeira
895 views14 slides
Poo1 aula 1 - java - história e introdução by
Poo1   aula 1 - java -  história e introduçãoPoo1   aula 1 - java -  história e introdução
Poo1 aula 1 - java - história e introduçãoDenis Sobrenome
901 views29 slides

Similar to Plataforma Android(20)

Introdução ao android by Paulo Remoli
Introdução ao androidIntrodução ao android
Introdução ao android
Paulo Remoli1.1K views
Poo1 aula 1 - java - história e introdução by Denis Sobrenome
Poo1   aula 1 - java -  história e introduçãoPoo1   aula 1 - java -  história e introdução
Poo1 aula 1 - java - história e introdução
Denis Sobrenome901 views
Poo1 aula 1 - java - história e introdução by Denis Sobrenome
Poo1   aula 1 - java -  história e introduçãoPoo1   aula 1 - java -  história e introdução
Poo1 aula 1 - java - história e introdução
Denis Sobrenome258 views
Programação Desktop: Uma abordagem com Java by Rosicleia Frasson
Programação Desktop: Uma abordagem com JavaProgramação Desktop: Uma abordagem com Java
Programação Desktop: Uma abordagem com Java
Rosicleia Frasson1.4K views
Desenvolvendo Soluções com Android by jgbirk
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Android
jgbirk1.3K views
Desenvolvimento android by Diego Keller
Desenvolvimento androidDesenvolvimento android
Desenvolvimento android
Diego Keller1.5K views
Introdução a JavaME by frgo
Introdução a JavaMEIntrodução a JavaME
Introdução a JavaME
frgo1.1K views
Minicurso Android Ronildo Oliveira by Ronildo Oliveira
Minicurso Android  Ronildo OliveiraMinicurso Android  Ronildo Oliveira
Minicurso Android Ronildo Oliveira
Ronildo Oliveira1.4K views

Recently uploaded

TechConnection 2023 Floripa Azure Container Apps by
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container AppsWalter Coan
5 views14 slides
Shift left DevOps Experience by
Shift left DevOps ExperienceShift left DevOps Experience
Shift left DevOps ExperienceWalter Coan
5 views19 slides
certificado excel.pdf by
certificado excel.pdfcertificado excel.pdf
certificado excel.pdfjuniorcarvalho136
5 views1 slide
DevFest2023-Pragmatismo da Internet das Coisas by
DevFest2023-Pragmatismo da Internet das CoisasDevFest2023-Pragmatismo da Internet das Coisas
DevFest2023-Pragmatismo da Internet das CoisasWalter Coan
24 views40 slides
VIRTUS 1.6 MSI.pdf by
VIRTUS 1.6 MSI.pdfVIRTUS 1.6 MSI.pdf
VIRTUS 1.6 MSI.pdfFbioVieira85
5 views13 slides
Skills e Squads, como trabalhar? by
Skills e Squads, como trabalhar?Skills e Squads, como trabalhar?
Skills e Squads, como trabalhar?Annelise Gripp
32 views13 slides

Recently uploaded(10)

TechConnection 2023 Floripa Azure Container Apps by Walter Coan
TechConnection 2023 Floripa Azure Container AppsTechConnection 2023 Floripa Azure Container Apps
TechConnection 2023 Floripa Azure Container Apps
Walter Coan5 views
Shift left DevOps Experience by Walter Coan
Shift left DevOps ExperienceShift left DevOps Experience
Shift left DevOps Experience
Walter Coan5 views
DevFest2023-Pragmatismo da Internet das Coisas by Walter Coan
DevFest2023-Pragmatismo da Internet das CoisasDevFest2023-Pragmatismo da Internet das Coisas
DevFest2023-Pragmatismo da Internet das Coisas
Walter Coan24 views
Skills e Squads, como trabalhar? by Annelise Gripp
Skills e Squads, como trabalhar?Skills e Squads, como trabalhar?
Skills e Squads, como trabalhar?
Annelise Gripp32 views
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023 by AcademiaDL
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
MAPA - CONTABILIDADE EMPRESARIAL - 54/2023
AcademiaDL89 views
Conheça agora o UiPath Autopilot™ para o Studio.pdf by BrunaCavalcanti29
Conheça agora o UiPath Autopilot™ para o Studio.pdfConheça agora o UiPath Autopilot™ para o Studio.pdf
Conheça agora o UiPath Autopilot™ para o Studio.pdf

Plataforma Android

  • 1. Universidade Federal de Mato Grosso Campus Universitário do Araguaia Ciência da Computação Leonardo da Silva Sousa
  • 2. Tópicos  Android: o que é?  Arquitetura do Android;  Camada 1: applications;  Camada 2: middleware;  Camada 3: Linux Kernel;  Dalvick Virtual Machine;  Transformando um código Java em um executável DVM;  Arquitetura de uma Aplicação;  Componentes uma Aplicação;  AndroidManifest
  • 3. Android: o que é?  Plataforma para dispositivos móveis baseada em Linux com interface de programação em Java.  Desenvolvida pela Open Handset Alliance (OHA), liderada pela Google.
  • 4. Android: o que é?  Inclui um sistema operacional, um middleware e uma chave para as aplicações.  Dalvick Virtual Machine (DVM).  Android SDK: um compilador, um depurador de código e um emulador de dispositivos.
  • 5. Arquitetura do Android  A arquitetura por trás do sistema operacional Android é representada através de uma pilha.  Três camadas: na parte superior encontram- se as applications (app), na camada intermediária o middleware e na base encontra-se o Linux Kernel.
  • 7. Camada 1: applications  A primeira camada é formada por uma lista de aplicações padrões que executam no sistema operacional.  Nesta camada também ficará as aplicações desenvolvidas por terceiros.
  • 8. Camada 2: middleware  A segunda camada é formada pelo: framework da aplicação (aplication framework) o conjunto de bibliotecas (libraries);  ambiente de execução (runtime Android).
  • 9. Application Framework  Conjunto de componentes pré-instalados nos dispositivos.  Permite que novas estruturas sejam utilizadas para futuras aplicações.  Prioriza a reutilização de código.
  • 11. Libraries  Bibliotecas nativas do Android.  Essas bibliotecas são pré-instaladas pelo o fabricante.  São todas escritas em linguagem de programação C ou C++
  • 13. Android Runtime  É nesta subcamada que se encontra as principais bibliotecas Java e a máquina virtual Dalvick (DVM).  Diferentes tanto do JSE quanto do JME.  Várias sobreposições: facilidade aos programadores que conhecem Java.
  • 14. Camada 3: Linux Kernel  Conjunto de drives que formam o Linux Kernel.  Atua como uma camada de abstração entre o hardware e o software.  Responsável por serviços como segurança, gerenciamento de memória e de processos, rede e controle de drives.
  • 15. Dalvick Virtual Machine  Máquina virtual Java otimizada para dispositivos móveis.  Programador tem acesso total à linguagem de programação Java apesar de alguns pacotes e APIs do JSE não serem suportados.  O código Java é compilado com um compilador Java padrão e depois são interpretados pela Dalvick.
  • 16. Transformando um código Java em um executável DVM
  • 17. Arquitetura de uma Aplicação  A arquitetura de uma aplicação Android ao contrário de uma aplicação para desktop é baseado em componentes que se comunicam entre si, isso é feito usando Intents.  Intents é um objeto mensagem que serve para comunicação entre as aplicações ou para iniciar uma nova aplicação.
  • 18. Componentes uma Aplicação  São cada bloco que uma aplicação é divida. Activities: representa uma única tela com o usuário. Ex: gerenciador de email. Services: é um componente que executa em background. Ex: player de música.
  • 19. Componentes uma Aplicação Content Providers: gerencia o compartilha- mento de dados. Responsável por permitir que uma aplicação acesse os dados de um banco dados, de um sistema de arquivos, na web ou em qualquer outro sistema de armazenamento que a aplicação possa acessar.
  • 20. Componentes uma Aplicação Broadcast Receivers: responsável por receber e reagir à broadcast.  Um exemplo de broadcast é quando o sistema anuncia que a bateria está acabando.
  • 21. AndroidManifest  Antes da aplicação iniciar a execução é necessário que o sistema conheça todos os componentes que a aplicação necessitará para sua execução.  Essas informações são encontradas no arquivo “AndroiManifest.xml”