14
 Google Android Computação Móvel - 2ª Aula Prática MEIC/MERC

Google Android Computação Móvel - fenix.tecnico.ulisboa.pt · Como programar? IDE Eclipse + Plug-in Android + Emulador Aplicações Java usando as bibliotecas do Android

  • Upload
    ngotram

  • View
    229

  • Download
    0

Embed Size (px)

Citation preview

   

Google Android

Computação Móvel - 2ª Aula Prática

MEIC/MERC

   

Sumário

Google Android: O que é? Que funcionalidades? Que dispositivos? Como programar? Exercícios:

− Executar exemplos− Ampliar exemplos

   

O que é?

Plataforma de SW para dispositivos móveis.

Desenvolvida pela Google e a Open Handset Alliance.

Baseada no núcleo do Linux. Programada em Java usando o Eclipse e o

Android SDK. Bibliotecas Java desenvolvidas pela

Google. Não coincidem com o Java SE ou ME.

   

Que funcionalidades?

   

Comparação com Outros

Android Symbian Windows Mobile

Núcleo Linux

Dispositivos Poucos Muitos Muitos

SW livre

Vários Participantes

Podiamos ainda falar de Palm OS e de iPhone OS...

   

Que dispositivos?

HTC Dream (G1)

   

Como programar?

IDE Eclipse + Plug-in Android + Emulador

Aplicações Java usando as bibliotecas do Android.

Conceitos base: Activity: Corresponde a um ecrã da aplicação. Layout: Descrição do GUI. Manifest: Atributos/Configuração da aplicação. Como manter código sempre a correr? Service. Como acordar aplicações? IntentReceiver. Como partilhar dados entre aplicações?

ContentProvider.

   

Uma aplicação Android

O código da aplicação

A raíz do projecto

As bibliotecas Google Android

O desenho do GUI (usar e.g. www.droiddraw.org). Gera automaticamente R.java

A configuração da aplicação. Gera automaticamente Manifest.java

   

Código da Aplicação

Activity = 1 ecrã de GUI

Corre quando se cria a Activity

Corre quando se clica em b_serv ou b_cli

   

Layout

IDs para fazer getViewByIDno código Java

   

Manifesto

Permissões para a aplicaçãoaceder à rede

   

O emulador

• Baseado no emulador ARM QEMU.

• Inclui:

– Aplicações Android.

– Exemplos Android.

• Debugger do Eclipse controla emulador.

• Usa a Ethernet do PC de desenvolvimento.

   

Pôr dois emuladores a comunicar por sockets

- Abre-se o projecto no eclipse e no run (seta verde), nas "run configurations" escolhe-se um target manual. Assim sempre que se lançar uma aplicação, o Eclipse vai perguntar em que emulador se quer lançar a aplicação.

- Quando se lança um emulador, no título da página diz o porto para o qual se pode fazer telnet para configurar o emulador.

- Depois de se lançar o emulador servidor é preciso fazer telnet para o porto do emulador e redireccionar o porto do ServerSocket do emulador para o porto da máquina local: redir add tcp:2000:2000

   

Exercício: chat

Transformar o código dado numa aplicação de chat:

• Lançar uma thread para escutar o socket ligado:– Activity passa a “implements Runnable” e a ter um

método “public void run()”

– No ponto onde se quiser lançar a thread faz-se:Thread thread = new Thread(this);

Thread.start();

• Adicionar uma caixa de texto e um botão para mandar mensagens: no layout adicionar um TextEdit e um Button.

• Modificar o tipo de dados trocados: substituir o ReadInt por...