aplicações móveis com j2me
TRANSCRIPT
![Page 2: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/2.jpg)
Fabricação de Microprocessadores
- Intel: 100 milhões/ANO
- Motorola: 35 milhões/MÊS
![Page 3: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/3.jpg)
Popularização de DispositivosMicroprocessados e Programáveis
Tendência mundial de utilização de Java como a plataforma de desenvolvimento de aplicações para tais dispositos...
![Page 4: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/4.jpg)
- Mercado de US$ 6.0 bilhões em 'mobile games' em 2004. fonte: Gartner Group
- Mercado de US$12,9 bilhões em aplicações 'mobile office' em 2005. fonte: Yankee
Porque tanto interesse em Aplicações Móveis?
![Page 5: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/5.jpg)
Porque Java para pequenos dispositivos?
- Independência de Plataforma- Orientação a Objetos- Networking- Segurança- Tratamento de Exceções- Multithreads- ...- ... e o mais importante, PADRONIZAÇÃO
![Page 6: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/6.jpg)
Porque Java para pequenos dispositivos?
Padronização:
- A tecnologia Java está em 100 % das listas de padrões da empresas 'Fortune 500'. fonte: IBM
Plataforma:
- 78 % dos executivos vêem a tecnologia Java como a melhor plataforma para Web Services. fonte: Giga, Computerworld
![Page 7: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/7.jpg)
- Java é a plataforma líder em aplicações móveis, 53 operadoras de telefonia celular no mundo já fazem 'deploy' de aplicações J2ME. Mais 11 estão em testes.
- Já existem mais de 150 dispositivos 'Java Enabled' de 22 fabricantes.
- Serão 841 milhões de celulares Java em 2004 e 1.1 bilhão em 2006. fonte: ARC Group
Dispositivos 'Java Enabled'
![Page 8: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/8.jpg)
A Plataforma Java 2
![Page 9: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/9.jpg)
A Plataforma JavaJava 2 Runtime Environment
Platforms
Java Virtual Machine
Core APIs
Integration APIs
User Interface Toolkits
Deployment Technologies
![Page 10: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/10.jpg)
Como colocar Java em pequenos dispositivos?
![Page 11: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/11.jpg)
Como colocar Java em pequenos dispositivos?
![Page 12: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/12.jpg)
Subset da API do J2SE
JVM Adequada
API Complementar
+
+
Resposta:
Criando-se um
JRE apropriado
para as capacidades
do dispositivo.
Como colocar Java em pequenos dispositivos?
![Page 13: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/13.jpg)
www.jcp.org
- Organização aberta de abrangência mundial,
focada na padronização da plataforma Java.
- Mais de 660 empresas e participantes
individuais.
JCP é maneira através da qual
a plataforma Java evolui.
![Page 14: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/14.jpg)
A Plataforma J2MEJava 2 Micro Edition
J2ME define um padrão para colocar Java dentro de dispositivos que não possuem o poder de processamento de ambientes J2SE completos. Dispositivos como PDAs, celulares, TVs, eletrodomésticos, computadores de bordo e muitos outros.
![Page 15: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/15.jpg)
- Com J2ME é possível construir ambientes de execução Java (runtime environments) muito pequenos, menores que 200 Kbytes.
- Possui arquitetura bastante modularizada.
J2ME
![Page 16: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/16.jpg)
Atualmente existem 52 JSRs (Java Specification Request)
relacionadas com J2ME
Algumas delas:
JSR 66 – RMI Optional Package
JSR 120 – Wireless Messaging API
JSR 134 – Java Game Profile
JSR 135 – Mobile Media API
JSR 82 – Java APIs for Bluetooth
JSR 184 – Mobile 3D Graphics API
![Page 17: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/17.jpg)
Algumas das Empresas que Suportam J2ME
![Page 18: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/18.jpg)
Arquitetura Modular
![Page 19: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/19.jpg)
- Define a mínima plataforma Java para um conjunto de dispositivos comuns.
- Suporta um ou mais 'profile'
- Definido através do Java Comunity Process(JCP)
Configurations
![Page 20: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/20.jpg)
Configurações Atuais
- Connected Device Configuration (CDC) . Web Phones . Computadores de Bordo . Network-capable devices
- Connected Limited Device Configuration (CLDC) . Celulares . PDAs . Pagers CDC 1.0 – JSR 36
CDC 1.1 – JSR 218CLDC 1.0 – JSR 30CLDC 1.1 – JSR 139
![Page 21: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/21.jpg)
Relação entre as Configurações
J2SE CDC CLDC
![Page 22: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/22.jpg)
Profiles
- Complementam a Configuração para prover capacidades para uma família específica de dispositivos ou segmento da indústria.
- Provê flexibilidade e optimiza portabilidade.
- Frequentemente provê UI, tratamento de evento e mecanismos de persistência.
![Page 23: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/23.jpg)
CLDC + MIDP
![Page 24: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/24.jpg)
Pacotes do CLDC
- java.lang
- java.io
- java.util
- javax.microedition.io
![Page 25: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/25.jpg)
MIDP - Mobile Information Device Profile
Pacotes:- java.lang- java.io- java.util- javax.microedition.io- javax.microedition.lcd- javax.microedition.midlet- javax.microedition.rms
MIDlet – aplicação móvel desenvolvida para MIDP
![Page 26: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/26.jpg)
MIDP 1.0 – JSR 37
MIDP 2.0 – JSR 118
Algumas Melhorias no MIDP 2.0
- HTTPS
- Multimídia: suporte para áudio/vídeo
- Itens de tela customizados (GUI)
- Game API
- “Push Registry - incoming network connections”
![Page 27: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/27.jpg)
arquivo.jad
arquivo.jar
http://www...../arquivo.jad
arquivo.jad
http://www...../arquivo.jad
arquivo.jad
http://www...../arquivo.jar
arquivo.jar
Web Server
Instalação de MIDlets
![Page 28: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/28.jpg)
Exemplos de Aplicações Móveis com J2ME
- Entretenimento
- Internet
- Educação
- Produtividade
- Utilitários
- e-commerce
- Empresarial
![Page 29: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/29.jpg)
Entretenimento
ChessBuddy
Commics
Spruce GO Metris
Foto Fun PopStar
![Page 30: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/30.jpg)
Dragon Island Prince of Persia
Desailly Pro Soccer
Entretenimento
Racing Fever
![Page 31: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/31.jpg)
![Page 32: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/32.jpg)
![Page 33: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/33.jpg)
Internet
jBrowser e-mail Viewer
MiMessager Azure
![Page 34: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/34.jpg)
Produtividade/Educação
Micro Reader Jtask - ToDo Periodic Table
![Page 35: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/35.jpg)
Utilitários
QuickShop Fly Cam
CroWeather First Aid Guide
![Page 36: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/36.jpg)
e-commerce
Piranha Pricecheck - http://mpowers.net/piranha
![Page 37: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/37.jpg)
e-commerce
![Page 38: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/38.jpg)
e-commerce
![Page 39: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/39.jpg)
e-commerce
![Page 40: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/40.jpg)
e-commerce
![Page 41: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/41.jpg)
e-commerce
![Page 42: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/42.jpg)
e-commerce
![Page 43: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/43.jpg)
e-commerce
![Page 44: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/44.jpg)
e-commerce
![Page 45: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/45.jpg)
Empresariais
Datasul CRM SFA
![Page 46: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/46.jpg)
Empresariais
Datasul CRM SFA
![Page 47: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/47.jpg)
Onde obter MIDLETS:
- www.midlet.org
- www.microjava.com
- www.handango.com
- www.zgroup-mobile.com
![Page 48: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/48.jpg)
![Page 49: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/49.jpg)
![Page 50: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/50.jpg)
Onde obter informações sobre aparelhos com suporte a J2ME
- wireless.java.sun.com
- www.jbenchmark.com
- site do fabricante
![Page 51: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/51.jpg)
![Page 52: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/52.jpg)
![Page 53: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/53.jpg)
Ferramentas para o Desenvolvimento de Aplicações J2ME/MIDP
Nokia Developers Suite for J2ME
Motorola SDK for J2ME
![Page 54: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/54.jpg)
http://java.sun.com/products/j2mewtoolkit/
J2ME Wireless Toolkit
![Page 55: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/55.jpg)
IDEs para o Desenvolvimento de Aplicações J2ME/MIDP
- WebSphere Studio Device Developer
- Sun ONE Studio, Mobile Edition
- JBuilder MobileSet
- Simplicity for Java
- JDeveloper J2ME Extension
![Page 56: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/56.jpg)
Etapas no Desenvolvimento de uma Aplicação MIDP
Código Fonte
(arquivos .java)
Binários
(arquivos .class)
Arquivo .jar
(.class + .png)
javac
preverify
jar
Arquivo .jad
Binários Pré-verificados
(arquivos .class)
![Page 57: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/57.jpg)
Exemplo de Códigopackage exemplo;
import javax.microedition.midlet.*;import javax.microedition.lcdui.*;
public class Contador extends MIDlet implements CommandListener {
private Command cmdAdd;private Command cmdReset;private Command cmdExit;private Form frm;private StringItem strTotal;private int counter;
public Contador() {
// Cria e inicializa a tela principal frm = new Form("Contador");
strTotal = new StringItem("Total: ", "0");frm.append(strTotal);
// Cria e adiciona os Commands(botoes)cmdAdd = new Command("+", Command.SCREEN, 0);cmdReset = new Command("Reset", Command.SCREEN, 1);cmdExit = new Command("Sair", Command.SCREEN, 0);frm.addCommand(cmdAdd);frm.addCommand(cmdReset);frm.addCommand(cmdExit);
frm.setCommandListener(this); }
![Page 58: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/58.jpg)
Exemplo de Código (cont.)
public void startApp() { Display.getDisplay(this).setCurrent(frm); }
public void pauseApp() { }
public void destroyApp(boolean b) { }
public void commandAction(Command cmd, Displayable disp) {
// Incrementa o contadorif (cmd == cmdAdd) { strTotal.setText(String.valueOf(++counter));
// Reseta o contador} else if (cmd == cmdReset) { counter = 0;
strTotal.setText("0");
// Sai da aplicacao} else {
destroyApp(false);notifyDestroyed();
} }
}
![Page 59: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/59.jpg)
Exemplo de Arquivo JAD
MIDlet-Name: ContadorMIDlet-Jar-URL: contador.jarMIDlet-Jar-Size: 2509MIDlet-Version: 1.0MIDlet-1: Contador, /images/logo.png , exemplo.ContadorMIDlet-Description: Exemplo de MIDletMIDlet-Vendor: My CompanyMIDlet-Info-URL: http://www.mycompany.com
![Page 60: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/60.jpg)
MIDlets em Palm OS
MIDP for PalmOShttp://java.sun.com/products/midp4palm/
Palm OS > 3.5
WebSphere Micro EnvironmentParceria Palm e IBMhttp://pluggedin.palm.com
Palm Tungsten
Virá de Fábrica
![Page 61: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/61.jpg)
Exemplo de Celular como Ferramenta de Controle Remoto
App Server
Internet
Servlet
x,y x,y
HTTPHTTP
![Page 62: Aplicações Móveis com J2ME](https://reader034.vdocuments.site/reader034/viewer/2022052620/5572c71ed8b42abb378b4b1d/html5/thumbnails/62.jpg)
Referências
Java(tm) 2 Platform, Micro Editionhttp://java.sun.com/j2me
Wireless Developerhttp://wireless.java.sun.com/
Micro Java Networkhttp://www.microjava.com
Java(tm) 2 Platform Micro Edition, Wireless Toolkithttp://java.sun.com/products/j2mewtoolkit/
www.forum.nokia.com.br
www.motocoder.com.br