Seminários .reply
Introdução a JavaME
Guilherme Carvalho
Roteiro
Números
JavaME
Plataforma
Wireless Toolkit
Midlets
Implementando
Extra .. FlashLite
Números
708 milhões de celulares rodando
Java
635 modelos de celular com suporte
a Java
32 fabricantes de celulares Java
140 operadoras de telefonia movel
usando Java
4,5 milhões de desenvolvedores Java
JavaME
Configurações (Configurations)
Bibliotecas básicas e JVM
Connected Limited Device Configuration
(CLDC)
Baixo nível de processamento e memória (512kb)
Celulares 2G, 2,5G
Connected Devide Configuration (CDC)
Dispositivos com cerca de 2mb de RAM
Alguns Celulares 3G, PDAs
JavaME
Perfis (Profiles)
Coleção de APIs específicas
Mobile Information Device Profile (MIDP)
CLDC
Interação com usuário
• Otimiza display, inputs
Persistência de dados
Propriedades específicas do aparelho
Conectividade
• HTTP, sockets, porta serial...
Foundation Profile (rede), Personal Profile (AWT) e
Personal Basis Profile (GUI Básica)
JavaME
Pacotes opcionais
CLDC ou CDC
Específicos
Modulares
Exemplos
Conexão com BD, Envio de mensagens,
Webservices, Bluetooth, Multimídia,
kSOAP, kXML, Mail4ME...
A plataforma
Wireless Toolkit
CLDC + MIDP
Emuladores
Performance
Documentação
Exemplos
Midlets
Dispositivos de Informação Móveis
abstract class MIDlet
Classe “executável” deve estender (única)
Principais métodos
3 estados
iniciado, pausado e destruído
startApp(), pauseApp(), destroyApp()
Midlets são aplicações móveis em Java
Midlets
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class OlaMidlet extends MIDlet implements
CommandListener {
private Display display; //Referencia para o
objeto Display
private TextBox tbMain; //TextBoxpara mostrar a
mensagem
private Command cmSair; //Botão para sair do
MIDlet
Midlets
public OlaMidlet() {
display = Display.getDisplay(this);
cmSair = newCommand("Sair",
Command.SCREEN, 1);
tbMain = newTextBox("Bem Vindo", "Ola
Midlet", 50, 0);
tbMain.addCommand(cmSair);
tbMain.setCommandListener(this);
}
Midlets
//Chamada do gerenciador de aplicação para iniciar o Midlet.
publicvoidstartApp() {
display.setCurrent(tbMain);
}
//Requisição de método
publicvoidpauseApp() { }
//Outra requisição de método
publicvoiddestroyApp(booleanunconditional) { }
// Checa se o comando de saída foi selecionado
publicvoidcommandAction(Commandc, Displayables) {
if(c == cmSair) {
destroyApp(false);
notifyDestroyed();
}
}
}
Midlets
Midlets
Implementando
Instalação
J2SE, WTK, IDE
Restringe-se as operações que podem ser
executadas a um conjunto de funções da
API tão somente. Nenhuma outra
operação é permitida.
CLDC (j2me\CLDCSpecification1.1.pdf) –
Pág. 46 – Classes derivadas da J2SE
Webservices precisam de Pacotes
Opcionais como kSOAP e kXML
Extra.. FlashLite
Maturidade
Funcionalidades do Flash 7
Gerenciamento de memória
Poucos aparelhos
Não é free
Referências
Desenvolvendo uma aplicação J2ME
http://www.devmedia.com.br/visualizaComponente.aspx?comp=2020&site=6
Java Platform, Micro Edition (Java ME) Overview
http://java.sun.com/javame/overview.html
Uma visão geral
http://www.felipeandrade.org/blog/?p=10
Interação J2ME e PHP
http://www.javafree.org/javabb/viewtopic.jbb?t=2248
Developing for Palm Devices
http://www.jasonlam604.com/articles_developing_for_palm_devices_using_webspher
e_micro_environment.php
Optional Packages
http://www.jasonlam604.com/articles_j2me_pda_optional_packages_file_connection.
php
Introdução ao J2ME
http://www.conexaojava.com.br/conexaojava04/download/minicursos/Java2.Micro.Edi
tion-Conexao.Java.2004.pdf
Overview da Plataforma Java Micro Edition
http://www.linhadecodigo.com.br/artigos.asp?id_ac=785
Revista WebMobile