Vous êtes sur la page 1sur 89

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Android

José João Junior

Universidade Federal de Santa Catarina

17 de dezembro de 2008
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Agenda

1 Visão geral

2 Estrutura do sistema

3 Ferramentas de desenvolvimento

4 Uma aplicação
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Visão geral

• Histórico
• O que é Android
• Alguns recursos
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Visão geral

• Histórico
• O que é Android
• Alguns recursos
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Visão geral

• Histórico
• O que é Android
• Alguns recursos
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Histórico
O inicio
Em 2005 o Google compra uma pequena empresa fabricante de software para telefones
celulares.
Em 2007 foi verificado, a partir de estudos, que o Google solicitou várias patentes.

Rumores
Devido aos fatos, surgiram vários rumores que o Google lançaria algum gênero de aparelho
móvel.

A apresentação
Em novembro de 2007 Eric Schmidt, CEO do Google, veio a público apresentar o Android.
Desmentindo assim os rumores.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Histórico
O inicio
Em 2005 o Google compra uma pequena empresa fabricante de software para telefones
celulares.
Em 2007 foi verificado, a partir de estudos, que o Google solicitou várias patentes.

Rumores
Devido aos fatos, surgiram vários rumores que o Google lançaria algum gênero de aparelho
móvel.

A apresentação
Em novembro de 2007 Eric Schmidt, CEO do Google, veio a público apresentar o Android.
Desmentindo assim os rumores.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Histórico
O inicio
Em 2005 o Google compra uma pequena empresa fabricante de software para telefones
celulares.
Em 2007 foi verificado, a partir de estudos, que o Google solicitou várias patentes.

Rumores
Devido aos fatos, surgiram vários rumores que o Google lançaria algum gênero de aparelho
móvel.

A apresentação
Em novembro de 2007 Eric Schmidt, CEO do Google, veio a público apresentar o Android.
Desmentindo assim os rumores.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O que é Android?
O que é?
É a primeira plataforma, completa e open source, desenvolvida para dispositivos móveis.
Boa parte do seu código está sob a licença Apache 2.0.

Quem desenvolveu?
Um grupo de mais de 30 empresas denominado Open Handset Alliance.
Algumas Empresas:
• Sony Ericsson
• T-Mobile
• AKM Semiconductor Inc
• Google Inc.
• ARM
• Samsung Electronics
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Alguns recursos

• Framework
• Browser integrado
• Gráficos otimizados - 2D e 3D
• Maquina Virtual Dalvik
• Banco de dados SQLite
• Linguagem de programação Java
• Suporte aos principais formatos de imagem, áudio, e vı́deo
• Telefonia GSM
• Bluetooth, EDGE, 3G e WiFi
• Câmera, GPS, compasso e acelerômetro
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Agenda

1 Visão geral

2 Estrutura do sistema

3 Ferramentas de desenvolvimento

4 Uma aplicação
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Estrutura do sistema

• Linux Kernel
• Bibliotecas
• Android Runtime
• Application Framework
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Estrutura do sistema

• Linux Kernel
• Bibliotecas
• Android Runtime
• Application Framework
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Estrutura do sistema

• Linux Kernel
• Bibliotecas
• Android Runtime
• Application Framework
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Estrutura do sistema

• Linux Kernel
• Bibliotecas
• Android Runtime
• Application Framework
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Estrutura do sistema
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Linux Kernel

• Gerenciamento de memória
• Gerenciamento de processos
• Interfaceamento com o hardware
• Versão 2.6.24
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Linux Kernel

• Gerenciamento de memória
• Gerenciamento de processos
• Interfaceamento com o hardware
• Versão 2.6.24
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Linux Kernel

• Gerenciamento de memória
• Gerenciamento de processos
• Interfaceamento com o hardware
• Versão 2.6.24
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Linux Kernel

• Gerenciamento de memória
• Gerenciamento de processos
• Interfaceamento com o hardware
• Versão 2.6.24
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

Surface Manager
Compõe diferentes serviços de desenho, como as camadas gráficas 2D e 3D
dos aplicativos. É responsável por Gerenciar o acesso ao subsistema do
display.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

OpenGl ES
Sistema gráfico 3D baseada no OpenGL ES 1.0.

SGL
Responsável pelo sistema 2D.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

OpenGl ES
Sistema gráfico 3D baseada no OpenGL ES 1.0.

SGL
Responsável pelo sistema 2D.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

• Media FrameWork - Suporte a criação e execução de vários formatos.


• FreeType - Renderizador de fontes do tipo Bitmap ou Vetoriais.
• SQLlite - Manipulação e criação de banco de dados.
• WebKit - Engine open source para browser.
• Bionic Libc - Implementação simplificada da biblioteca padrão do C.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

• Media FrameWork - Suporte a criação e execução de vários formatos.


• FreeType - Renderizador de fontes do tipo Bitmap ou Vetoriais.
• SQLlite - Manipulação e criação de banco de dados.
• WebKit - Engine open source para browser.
• Bionic Libc - Implementação simplificada da biblioteca padrão do C.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

• Media FrameWork - Suporte a criação e execução de vários formatos.


• FreeType - Renderizador de fontes do tipo Bitmap ou Vetoriais.
• SQLlite - Manipulação e criação de banco de dados.
• WebKit - Engine open source para browser.
• Bionic Libc - Implementação simplificada da biblioteca padrão do C.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

• Media FrameWork - Suporte a criação e execução de vários formatos.


• FreeType - Renderizador de fontes do tipo Bitmap ou Vetoriais.
• SQLlite - Manipulação e criação de banco de dados.
• WebKit - Engine open source para browser.
• Bionic Libc - Implementação simplificada da biblioteca padrão do C.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Bibliotecas

• Media FrameWork - Suporte a criação e execução de vários formatos.


• FreeType - Renderizador de fontes do tipo Bitmap ou Vetoriais.
• SQLlite - Manipulação e criação de banco de dados.
• WebKit - Engine open source para browser.
• Bionic Libc - Implementação simplificada da biblioteca padrão do C.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Android Runtime

• Roda bytecode otimizados ’.dex’.


• Cada processo roda sua própria instância da Máquina Virtual.
• Zygote é uma instância especial responsável por criar outras
instâncias da Máquina Virtual .
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Android Runtime

• Roda bytecode otimizados ’.dex’.


• Cada processo roda sua própria instância da Máquina Virtual.
• Zygote é uma instância especial responsável por criar outras
instâncias da Máquina Virtual .
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Android Runtime

• Roda bytecode otimizados ’.dex’.


• Cada processo roda sua própria instância da Máquina Virtual.
• Zygote é uma instância especial responsável por criar outras
instâncias da Máquina Virtual .
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Application Framework

• Camada em alto nı́vel responsável por facilitar e aumentar a


velocidade de desenvolvimento.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Agenda

1 Visão geral

2 Estrutura do sistema

3 Ferramentas de desenvolvimento

4 Uma aplicação
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Ferramentas de desenvolvimento

• Apresentando o SDK
• Configurando o SDK
• Configurando o Eclipse 3.4 (Ganymede)
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Ferramentas de desenvolvimento

• Apresentando o SDK
• Configurando o SDK
• Configurando o Eclipse 3.4 (Ganymede)
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Ferramentas de desenvolvimento

• Apresentando o SDK
• Configurando o SDK
• Configurando o Eclipse 3.4 (Ganymede)
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Ferramentas de desenvolvimento

• Apresentando o SDK
• Configurando o SDK
• Configurando o Eclipse 3.4 (Ganymede)
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Apresentando o SDK

• Plugin para eclipse


• Emulador do Android
• DDMS (Dalvik Debug Monitor Service)
• ADB (Android Debug Bridge)
• AIDL (Android Interface Description Language)
• DX, transforma o ’.class’ em ’.dex’
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Apresentando o SDK

• Plugin para eclipse


• Emulador do Android
• DDMS (Dalvik Debug Monitor Service)
• ADB (Android Debug Bridge)
• AIDL (Android Interface Description Language)
• DX, transforma o ’.class’ em ’.dex’
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Apresentando o SDK

• Plugin para eclipse


• Emulador do Android
• DDMS (Dalvik Debug Monitor Service)
• ADB (Android Debug Bridge)
• AIDL (Android Interface Description Language)
• DX, transforma o ’.class’ em ’.dex’
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Apresentando o SDK

• Plugin para eclipse


• Emulador do Android
• DDMS (Dalvik Debug Monitor Service)
• ADB (Android Debug Bridge)
• AIDL (Android Interface Description Language)
• DX, transforma o ’.class’ em ’.dex’
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Apresentando o SDK

• Plugin para eclipse


• Emulador do Android
• DDMS (Dalvik Debug Monitor Service)
• ADB (Android Debug Bridge)
• AIDL (Android Interface Description Language)
• DX, transforma o ’.class’ em ’.dex’
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Apresentando o SDK

• Plugin para eclipse


• Emulador do Android
• DDMS (Dalvik Debug Monitor Service)
• ADB (Android Debug Bridge)
• AIDL (Android Interface Description Language)
• DX, transforma o ’.class’ em ’.dex’
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o SDK

Premissas
Por simplicidade, o ambiente de desenvolvimento só será configurado no
Linux.
Deve-se ter o java 5 ou superior. Caso não o tenha digite no seu
terminal:
sudo aptitude install sun-java5-jdk,plugin
Já ter obtido o SDK do android no endereço:
http://code.google.com/intl/pt-BR/android/download.html
Ter o Eclipse 3.4.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o SDK
Adicionando o SDK ao path do sistema
Este passo possibilita rodar várias ferramentas de linha de comando sem precisar
especificar o caminho para o diretório tools do SDK. Para tal digite no seu
terminal:
sudo nano /home/”Seu usuário”/.bashrc
adiciona ao final do arquivo a seguinte linha:
export PATH=$PATH:”your sdk dir”/tools
Vale lembra que ”your sdk dir” é o diretório onde você descompactou o SDK
baixado. Agora iremos salvar e sair do editor de arquivos nano. Digite:
Ctrl+o
Enter
Ctrl+x
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Instalando o plugin

• Inicie o Eclipse 3.4


• Selecione Help - Software Updates....
• Clique na aba Available Software.
• Clique em Add Site....
• Na caixa de dialogo adicione a seguinte url:
https://dl-ssl.google.com/android/eclipse/
e clique em OK.
• Na janela Available Software deverá aparecer o plugin e selecionado.
• Clique em install....
• Clique em Finish.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o plugin

• Inicie o Eclipse 3.4


• Selecione Window - Preferences.
• Clique no item Android.
• No campo SDK Location, coloque o diretório onde você
descompactou o SDK baixado.
• Clique em OK.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o plugin

• Inicie o Eclipse 3.4


• Selecione Window - Preferences.
• Clique no item Android.
• No campo SDK Location, coloque o diretório onde você
descompactou o SDK baixado.
• Clique em OK.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o plugin

• Inicie o Eclipse 3.4


• Selecione Window - Preferences.
• Clique no item Android.
• No campo SDK Location, coloque o diretório onde você
descompactou o SDK baixado.
• Clique em OK.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o plugin

• Inicie o Eclipse 3.4


• Selecione Window - Preferences.
• Clique no item Android.
• No campo SDK Location, coloque o diretório onde você
descompactou o SDK baixado.
• Clique em OK.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Configurando o plugin

• Inicie o Eclipse 3.4


• Selecione Window - Preferences.
• Clique no item Android.
• No campo SDK Location, coloque o diretório onde você
descompactou o SDK baixado.
• Clique em OK.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Agenda

1 Visão geral

2 Estrutura do sistema

3 Ferramentas de desenvolvimento

4 Uma aplicação
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Uma aplicação

• Anatomia de uma aplicação


• O ciclo de vida de uma aplicação
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Uma aplicação

• Anatomia de uma aplicação


• O ciclo de vida de uma aplicação
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Anatomia de uma aplicação

Activity
Este é o bloco mais usado, cada ’Activity’ representa, em geral, uma tela
uma tela da aplicação.
Cada atividade é uma classe única que estende a base ’Activity’, que
será apresentada ao usuário através de ’View’ e responderá a eventos por
’Intent’ e ’Intent Filters’.

Intent Receiver
Este é utilizado para que a aplicação responda eventos externos. Por
exemplo, a ação que a aplicação vai fazer quando o telefone tocar.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Anatomia de uma aplicação

Activity
Este é o bloco mais usado, cada ’Activity’ representa, em geral, uma tela
uma tela da aplicação.
Cada atividade é uma classe única que estende a base ’Activity’, que
será apresentada ao usuário através de ’View’ e responderá a eventos por
’Intent’ e ’Intent Filters’.

Intent Receiver
Este é utilizado para que a aplicação responda eventos externos. Por
exemplo, a ação que a aplicação vai fazer quando o telefone tocar.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Anatomia de uma aplicação

Service
Este é o bloco é responsável por códigos de vida longa que rodam sem
uma interface com o usuário. Um bom exemplo é um tocador de música
que deve continuar executando mesmo que se mude de tela e/ou de
programa.

Content Provider
Provedor de conteúdo, é útil quando os dados de uma aplicação
necessitam ser compartilhados com outra aplicação.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Anatomia de uma aplicação

Service
Este é o bloco é responsável por códigos de vida longa que rodam sem
uma interface com o usuário. Um bom exemplo é um tocador de música
que deve continuar executando mesmo que se mude de tela e/ou de
programa.

Content Provider
Provedor de conteúdo, é útil quando os dados de uma aplicação
necessitam ser compartilhados com outra aplicação.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O ciclo de vida de uma aplicação

Descrição
Há uma fato muito interessante no desenvolvimento de aplicações
Android, é que, não é necessário se preocupar com a finalização dos
processos.
O Android é encubido com está responsável, para tanto ele distingui a
importância das aplicações a partir dos estados dos componente que
compõe está e quando necessita de recursos ele termina a aplicação de
menor prioridade.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O Ciclo de Vida de uma Aplicação


Estados de uma aplicação
• Primeiro plano
- possuem uma atividade em uso.
• Visı́vel
- está visı́vel porém há uma outra janela sobre ela.
• Serviço
- roda um código de serviço, sem UI.
• Fundo
- possuem uma atividade que não está visı́vel.
• Vazio
- não possuem nenhum componente ativo, serve como cache
para a próxima vez que a aplicação for iniciada.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O Ciclo de Vida de uma Aplicação


Estados de uma aplicação
• Primeiro plano
- possuem uma atividade em uso.
• Visı́vel
- está visı́vel porém há uma outra janela sobre ela.
• Serviço
- roda um código de serviço, sem UI.
• Fundo
- possuem uma atividade que não está visı́vel.
• Vazio
- não possuem nenhum componente ativo, serve como cache
para a próxima vez que a aplicação for iniciada.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O Ciclo de Vida de uma Aplicação


Estados de uma aplicação
• Primeiro plano
- possuem uma atividade em uso.
• Visı́vel
- está visı́vel porém há uma outra janela sobre ela.
• Serviço
- roda um código de serviço, sem UI.
• Fundo
- possuem uma atividade que não está visı́vel.
• Vazio
- não possuem nenhum componente ativo, serve como cache
para a próxima vez que a aplicação for iniciada.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O Ciclo de Vida de uma Aplicação


Estados de uma aplicação
• Primeiro plano
- possuem uma atividade em uso.
• Visı́vel
- está visı́vel porém há uma outra janela sobre ela.
• Serviço
- roda um código de serviço, sem UI.
• Fundo
- possuem uma atividade que não está visı́vel.
• Vazio
- não possuem nenhum componente ativo, serve como cache
para a próxima vez que a aplicação for iniciada.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O Ciclo de Vida de uma Aplicação


Estados de uma aplicação
• Primeiro plano
- possuem uma atividade em uso.
• Visı́vel
- está visı́vel porém há uma outra janela sobre ela.
• Serviço
- roda um código de serviço, sem UI.
• Fundo
- possuem uma atividade que não está visı́vel.
• Vazio
- não possuem nenhum componente ativo, serve como cache
para a próxima vez que a aplicação for iniciada.
Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

O Ciclo de Vida de uma Aplicação


Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação

Referências

• http://www.android-br.mobi/
• http://code.google.com/intl/pt-BR/android/
documentation.html
• http://pt.wikipedia.org/wiki/Dalvik_virtual_machine

Vous aimerez peut-être aussi