Você está na página 1de 44

Sistemas de Informao, UFC-Quixad (5 semestre)

Bolsista UFC:
Monitor do Laboratrio de Mobilidade e
Tecnologia da Informao (MobiTI) Tecnologia da Informao (MobiTI)
Mais? www.igorpimentel.com
02/09
Introduo
Por que desenvolver para dispositivos mveis?
Plataformas
Por que Java ME? Por que Java ME?
Java ME - Conceitos bsicos
Ambiente de Desenvolvimento
Distribuio
Hello World
Praticando
04/09
Exemplos (Prtica)
Pequenos em tamanho
Memria limitada (Primria e secundria)
Poder de processamento limitado
Baixo consumo de energia
Robusto e confivel Robusto e confivel
Conectividade limitada
Curto tempo de inicializao
Clientes potenciais em constante crescimento
Existe vrios fabricantes, modelos e
funcionalidades
Crescimento explosivo de dispositivos mveis
Celulares, PDAs, notebooks, netbooks, tocadores de Celulares, PDAs, notebooks, netbooks, tocadores de
mdia, ...
Diferentes recursos de multimdia
Tela, captura de imagens, armazenamento,
processamento, comunicao
Redes Mveis
Maior largura de banda, melhor cobertura
Contedo
Crescimento da mdia digital
Mudanas na forma como o contedo produzido Mudanas na forma como o contedo produzido
Tipos de aplicaes
Comunicao via voz
Navegao pela Web
Acesso a arquivos de mdia
GPS
Jogos
Conectando com pessoas...
Baseado em J ava
Sun J avaME
SuperWaba
Google Android
RIM Blackberry
No J ava
Symbian(C/C++,
Python)
Windows Mobile (Dot
Net Compact
Framework) Framework)
PalmOS, Pocket PC
(C/C++)
IPhone (Objective C)
BREW (C/C++)
Microbrowser (XHTML)
FlashLite (ActionScript)
Como programar em uma nica linguagem de
forma a garantir que a aplicao possa
funcionar nos diversos tipos de dispositivos?
Independncia de Plataforma
Orientao a Objetos Orientao a Objetos
Networking
Segurana
Tratamento de Excees
Multithreads
...e o mais importante, PADRONIZAO
1995: Surgimento da linguagem Java
1999:
Lanado o J ava2 (J ava 1.2)
Diviso das 3 plataformas:
J 2EE (J ava2 Enterprise Edition) J 2EE (J ava2 Enterprise Edition)
J 2SE (J ava2 Standard Edition)
J 2ME (J ava2 Micro Edition)
2006:
Nova nomenclatura Tachal 2:
J EE (J ava Enterprise Edition)
J SE (J ava Standard Edition)
J ME (J ava Micro Edition)
Java EE
Plataforma voltada a aplicaes coorporativas, no lado do servidor.
Java SE
Plataforma para aplicaes do lado do cliente e demais aplicativos
para computadores pessoais.
Java ME Java ME
Plataforma J ava voltada ao desenvolvimento de aplicaes
executadas em dispositivos com limitados recursos de hardware.
O J ava ME uma verso reduzida da
plataforma J ava que permite que aplicativos
sejam criados para dispositivos mveis com
diversas vantagens da plataforma J ava.
Projetado para dispositivos com limitaes de Projetado para dispositivos com limitaes de
memria, tela e processamento.
ATENO!
J ME == Java Micro Edition
J ME != Java Mobile Edition
Define uma plataforma J ava para uma ampla
variedade de dispositivos
Define recursos da linguagem J ava e as
bibliotecas J ava bsicas da J VM para essa
configurao especfica configurao especfica
Leva em considerao
Memria, vdeo, conectividade e processamento
Principais configuraes
Conected Device Configuration (CDC)
Conected, Limited Device Configuration (CLDC)
Conjunto de APIs que complementa uma
Configurao para prover funcionalidades para
um determinado mercado ou dispositivo.
O perfil ajuda na portabilidade das aplicaes
Principal configurao Principal configurao
Mobile Information Device Profile (MIDP)
Aplicaes em dispositivos wireless sobre a CLDC
As J VMs transformam os arquivos .class em
cdigo de mquina para a plataforma especfica
Isto torna os programas escritos em J ava
independentes de plataforma de execuo
Cada SO deve possuir uma implementao da Cada SO deve possuir uma implementao da
J VM
Para o CDC
Mesma especificao da J VM do J 2SE
Para o CLDC
Kilo Virtual Machine (KVM)
CDC Connected Device Configuration
Especifica o ambiente J ava para TV Digital,
dispositivos sem fio de alto nvel e sistemas
automotivos.
Dispositivos com cerca de 2MB de RAM (alguns
PDAs, telefones 3G, etc.) PDAs, telefones 3G, etc.)
CLDC Connected Limited Device
Configuration
Especifica o ambiente J ava para telefones celulares,
pagers e PDAs.
Equipamentos com baixssimos nveis de
processamento e capacidade de memria.
CLDC
Foi o primeiro perfil do J ava ME
focado em dispositivos implementados com o
CLDC
responsvel por:
Ferramentas de tela (Display); Ferramentas de tela (Display);
Interao com o usurio;
Persistncia de dados;
"Messaging" (SMS, email, etc), segurana e
comunicao atravs da rede wireless
128 kB de memria no voltil;
32 kB para heap;
8 kB para persistncia de dados;
Tela de 96x54 pixels;
Entrada de dados; Entrada de dados;
Conexes de rede (intermitentes);
Segurana conceito de sandbox das applets;
Segurana: baseado em permisses do J SE;
Novas APIs para aprimorar o desenvolvimento:
Game API;
Media API;
Secure Connection API; Secure Connection API;
Uma aplicao MIDP chamada de MIDlet. O
software de gerenciamento da aplicao (AMS -
Application Management Software) do
dispositivo interage diretamente com o MIDlet
com os mtodos de criar, iniciar, pausar e com os mtodos de criar, iniciar, pausar e
destruir o MIDlet.
O MIDlet parte do pacote
javax.microedition.midlet. Necessita estender a
classe MIDlet. E pode requisitar parmetros do
AMS conforme definido no descritor da
aplicao (J AD J ava Application Descriptor).
Start Onde feita a Aquisio de
recursos inicializando a execuo
(startApp);
Pause Liberao de recursos em um
modo de espera, ou seja, pausado modo de espera, ou seja, pausado
utilizado ao atender telefone, receber SMS
dentre outra aplicao (pauseApp);
Destroy Liberao de todos os recursos
(destroyApp);
Hierarquia dos principais componentes grficos
Alguns recursos disponveis:
RMS - Record Management System
GCF - Generic Connection Framework
Principais pacotes opcionais:
JABWT - Java API for Bluetooth JABWT - Java API for Bluetooth
WMA - Wireless Messaging API
MMAPI - Mobile Media API
WSA - J2ME Web Service API
Game API
Telephony API
preciso ter instalado:
J DK (J ava Development Kit);
WTK (J ME Wireless Toolkit);
IDE ou Editor para os cdigos:
Eclipse + EclipseME Eclipse + EclipseME
NetBeans + Mobility Pack;
Gel;
J Builder;
Ferramenta principal para desenvolvimento de
J 2ME MIDP
Emula vrios dispositivos e possibilita que
outros sejam instalados.
Possibilita conexo e na verso 2, testes de Possibilita conexo e na verso 2, testes de
SMS e MMS
possvel controlar a taxa de transmisso,
quantidade de memria, tipo de http
MIDlets precisam ser empacotados
corretamente antes de serem enviados a um
dispositivo para instalao. A classe principal
MIDlet que age como o ponto de entrada
principal para o MIDlet, juntamente com as principal para o MIDlet, juntamente com as
classes que voc construiu e quaisquer imagens
ou outros arquivos para os quais precisa de
acesso em tempo de execuo, precisam ser
empacotados em um nico arquivo J AR.
Um arquivo J AR (J ava Archive file) contm a
definio de empacotamento dos arquivos que
so necessrios para rodar a aplicao.
Tambm provida informao de
empacotamento semelhante em outro arquivo empacotamento semelhante em outro arquivo
chamado J ava Aplication Descriptor (ou J AD)
que tratado separadamente do J AR. Um J AR
pode conter mais de um MIDlet, neste caso
todos os MIDlets devem estar dentro do mesmo
MIDlet suite. O arquivo J AR deve conter todos
os arquivos que fazem parte de um MIDlet suite
Contedo de um arquivo JAD
MI Dl et - 1: Test e, Test e. png, Test e
MI Dl et - J ar - Si ze: 100
MI Dl et - J ar - URL: Test e. j ar
MI Dl et - Name: Test e MI Dl et - Name: Test e
MI Dl et - Vendor : Unknown
MI Dl et - Ver si on: 1. 0
Mi cr oEdi t i on- Conf i gur at i on: CLDC- 1. 0
Mi cr oEdi t i on- Pr of i l e: MI DP- 2. 0
1. // Bibliotecas Bsicas:
2. import javax.microedition.lcdui.*;
3. import javax.microedition.midlet.*;
4.
5. public class OlaMundo extends MIDlet implements CommandListener
6. {
7. private Display display;
8. private Form formPrincipal;
9. private Command cmdSair; 9. private Command cmdSair;
10.
11. // Construtor:
12. public AloMundo() {
13. display = Display.getDisplay(this);
14. formPrincipal = new Form("Titulo formPrincipal");
15. cmdSair = new Command("Sair", Command.EXIT, 1);
16.
17. formPrincipal.append(Ol mundo!");
18. formPrincipal.addCommand(cmdSair);
19. formPrincipal.setCommandListener(this);
20. }
21. // Mtodo chamado na inicializao do MIDlet
22. public void startApp() {
23. display.setCurrent(formPrincipal);
24. }
25.
26. // Mtodo chamado quando o MIDlet pausado
27. public void pauseApp() {}
28.
29. // Mtodo chamado quando o MIDlet fechado 29. // Mtodo chamado quando o MIDlet fechado
30. public void destroyApp(boolean unconditional) {}
31.
32. // Mtodo chamado quando algum command ativado
33. public void commandAction(Command cmd, Displayable dis) {
34. if (cmd == cmdSair) {
35. destroyApp(false);
36. notifyDestroyed();
37. }
38. }
39. }
Iniciem o NetBeans...
JME (Java Micro Edition) a plataforma J ava direcionada para
micro aplicativos. Ou seja, aplicativos destinados a dispositivos
que possuem processamento, memria e vdeo limitados, como
celulares, PDAs, TVs, controle remotos e outros embarcados.
A arquitetura JME dividida em Configuraes, Perfis, Mquina
Virtual e APIs opcionais.
As configuraes definem as bibliotecas que so necessrias para
o funcionamento da mquina virtual (J VM). As principais so: CLDC
(Connected, Limited Device Configuration) e CDC (Connected
Device Configuration).
A primeira destinada a dispositivos mais simples e menores, como
celulares, pagers e PDAs, que possuem processamento de 16/32
bits e memria de 128/512 kb. A segunda rege os dispositivos com bits e memria de 128/512 kb. A segunda rege os dispositivos com
capacidade um pouco maior: com pelo menos 32bits de
processamento e 2 MegaBytes de memria, como TV digital,
dispositivos sem fio de alto nvel e sistemas automotivos.
Os perfis so um conjunto de aplicaes que complementam uma
configurao e fornecem funcionalidades para desenvolver um
aplicativo para um determinado dispositivo.
Perfis para a configurao CLDC: MIDP (Mobile Information
Device Profile) e PDAP (PDA Profile).
MIDP a biblioteca necessria para a execuo de qualquer
aplicativo escrito para J 2ME, os chamados MIDlets. Ele possui aplicativo escrito para J 2ME, os chamados MIDlets. Ele possui
classes de interface com o usurio e acesso a rede, entre outros. E
PDAP um ambiente de execuo especialmente para PDAs.
Para a CDC temos o Foundation Profile e o Personal Basis Profile.
O primeiro um perfil para dispositivos interconectados em rede e
sem interface grfica. E o segundo oferece suporte a grficos.
Quanto a mquina virtual temos a CVM (Compact Virtual Machine),
que vinculada a configurao CDC e a KVM (Kilo Virtual Machine)
que vinculada a CLDC.
Fonte: www.javamovel.com
Java: www.java.com
JDK (Java Development Kit):
http://java.sun.com/javase/downloads
Netbeans: www.netbeans.org
Eclipse: www.eclipse.org
Plugin EclipseME: www.eclipseme.org
WTK (JME Wireless Toolkit):
http://java.sun.com/javame/downloads
Refercnias:
www.javafree.org
www.javamovel.com

Você também pode gostar