You are on page 1of 4

O que é J2ME?

A plataforma Java 2 Micro Edition (J2ME) implementa a linguagem Java para vários dispositivos tais como telefones celulares, PDAs, Internet screenphones, settop boxes digitais para TV, sistemas de navegaç ão automotiva, comutadores e roteadores de rede, componentes para automa ç ão residencial, etc. A plataforma J2ME consiste de m áquinas virtuais (KVM) e APIs especificadas em “documentos de configuração” (“Configuration” – CDC e CLDC) em conjunto com perfis (“Profiles” - MIDP ) para uma determinada aplicaç ão ou mercado. Tudo está disposto em camadas de software como segue no diagrama abaixo:

Person al Profile

RMI Profile

Outros perfis para CDC

MIDP
Mobile Information Device Profile

CDC

CLDC

Linguagem de programacão JAVA KVM Máquina Virtual J2ME

Foco do Tutorial
O desenvolvimento de Configurações e Perfis se dá de acordo com processos estabelecidos pela “Comunidade Java”. Nesse processo, similar aos do IETF, podem participar o setor privado, público, “neutro”, ou mesmo indivíduos. Há votações para a aprovação de uma determinada especificação que só se torna pública uma vez que aprovada pela maioria. Maiores detalhes podem ser obtidos no site da SUN: http://java.sun.com/products/cldc http://java.sun.com/products/midp A versão suportada na maioria dos dispositivos celulares no Brasil é a CLDC 1.0 e o MIDP 1.0. O suporte comercial ao MIDP 2.0 est á previsto para o final de 2003, quando deverão ser lançados os primeiros modelos baseados nessa nova versã o do perfil. O CLDC (Connected Limited Device Configuration) contem uma API mínima para poder rodar aplicativos em dispositivos m óveis com limites de processamento e mem ória, tais como, telefones celulares, s martphones, pagers e PDAs. Em oposição temos a CDC (Connected Device Configuration) que supõe dispositivos com mais capacidade tais como settop boxes digitais, screen- phones, Nokia Communicator e alguns PDAs mais poderosos.

microedition.No que diz respeito ao CLDC para aparelhos celulares.verificaç ão de arquivos de classes (há no lugar uma ferramenta de “pré. thread groups/ daemons e user.lang.microedition. os chamados midlet s). O Perfil MIDP contem. Isso torna dif ícil muitas vezes portar aplicações entre fabricantes. java. porém exige que o programador sa iba o que est á fazendo. som e display. reflection. Cada fabricante adiciona livremente o que considerar importante. pois toda aplicaç ão tem que ser testada e certificada pela Qualcomm para garantir que não se introduza na rede aplicações “mal intencionadas ou simplesmente mal feitas” e com isso ponha. a menos que se use sempre o conjunto m ínimo . ajuda o BREW a ser mais flexível.microedition. javax. No topo da camada de CLDC temos a camada de software chamada Profile. ou Perfil. especifica um conjunto de APIs que moldam se a um determinado tipo de dispositivo.midlet (suporte para aplicações MIDP. que a CLDC define. pagers etc. java. javax. tais como suporte a uma forma simplificada de AWT (Abstract Window Toolkit) e controles de vibração. O fato do C/C++ permitir acesso via apontadores a memória. a referências fracas . O CLDC define em sua API os pacotes java. a m áquina virtual terá um espaço de me mória independente do restante das aplicações do celular (tais como agenda. JNI (Java Native Interface).se em risco toda a c redibilidade da plataforma BREW. O Perfil tão somente acrescenta funcionalidades àquele particular aparelho. dentre os quais temos celulares. um processador de no mínimo 16 bits com baixo consumo (adequado a baterias típicas de um celular) e conexão de rede (neste caso wireless – 9.util e javax.verificação”). Software que inclua suporte a um subconjunto da linguagem Java e a um subconjunto da máquina virtual Java que definam um núcleo de funç ões que permitam o desenvolvimento de aplicações móveis. A diferença entre Configuração e Perfil é que a Configuraç ão descreve de forma geral uma família de dispositivos. o que o Java não permite. o que o faz ser mais limitado. Nenhuma outra operaç ão é permitida. • A segurança. configura ção. suporte completo à classe Error do J2SE. est á baseada no chamado “Sandbox Security Model”. enquanto o Perfil fica mais específico para um tipo particular de aparelho em uma dada família. Outro ponto importante no que tange ao Java é o fato que não é permitido carga de classes definidas pelo usuário de forma a garantir a segurança de qualquer aplicação desenvolvida com a API CLDC. tons.lcdui (interface com o usuário). O J2ME corta esse risco pela raiz. etc).defined class loaders.io (conexão e interfaces). compartilhar dados com outros aplicativos.6Kbps. isto é. Com isso a aplicação não pode acessar a área de memória do calendário ou agenda de contatos do aparelho celular. Nesse modelo de segurança restringe. por exemplo. imagens. Essa é uma diferença significativa em relação ao BREW que não define limites à aplicações que por sua vez podem acessar áreas de memória de qualquer parte do celular. Notem que não há suporte a ponto flutuante.rms (sistema de gerência de registros para persistência de informa ções).finalize().io. Vários fabricantes adicionam ao MIDP algumas outras APIs. finalização . temos as seguintes características: • Hardware requerido: mínimo de 160KB de memória para Java.microedition. Em cada plataforma há suas vantagens e seus “trade.se as operações que podem ser executadas a um conjunto de funções d a API tão somente. browser WAP. Por esse motivo o custo de desenvolvimento no BREW é mais alto.Object. 144Kbps ou 2Mbps). O Profile.offs”. alterar áreas de código também. porém seguro e com custos de desenvolvimento menores. O MIDP define tudo o que há no CLDC com a adição aos pacotes javax. APIs para aparelhos celulares enquanto o CLDC aborda APIs para dispositivos m óveis de pouca capacidade de processamento.

instale cada qual. língua. preferencialmente o JRE primeiro. Standard Edition Runtime Environment (J2SE JRE) na versão mínima .1) vá para: http://java. caso se prefira ambiente UNIX. Para instalar um ambiente de desenvolvimento para J2ME.0.4.sun. Com isso temos um conjunto de ferramentas sem custo algum que permite que se desenvolva e teste aplicativos que poderão ser executados em qualquer aparelho com suporte a J2ME. usando.com/software/sundev/jde/buy/index. Caso o objetivo seja apenas poder rodar aplicações de demonstração.com/j2se/1. nome que atualmente é usado.0. o primeiro passo é baixar e instalar o J2SE SDK e J RE da SUN. Com o MIDP 2. Para obter o Java2 SDK. na verdade é possível baixar o IDE gratuitamente.sun.html Instale o J2ME toolkit. Sem os quais não é possível se fazer nada. existe a opção de se baixar um JDE (Java IDE) da própria SUN. tudo faz parte do J2ME Tool Kit. Se o objetivo é desenvolver aplicações são necessários ambos o J2SE JRE e SDK (Software Development Kit).4. Em seguida baixe o J2ME Wireless Toolkit versão 1. Note que a parte que trata sobre o SUN One Studio Mobile Edition está bem ao final da página na WEB. etc. Mobile Edition no link abaixo: http://wwws. é necessário apenas o J2SE JRE (Java Runtime Environment). Com isso já será possível criar aplicaç ões J2ME e test á-las no simulador que está incluído nas ferramentas. Poré m. para facilitar as coisas. o SUN One Studio 4 update 1. Após baixar o JRE e/ou SDK. som e display entre outras capacidades. a SUN disponibilizou um IDE livre chamado Forte for Java ou SUN One Studio. Nesse Tool Kit não há um IDE (Integrated Development Environment).se por exemplo Makefile. emular o resultado e depurar o c ódigo.especificado no MIDP 1. É necessário ter o sistema operacional Windows NT ou 2000.3 (atualmente está disponível a versão 1. . compilar. portanto poderá ser necessário editar o código fonte em ferramentas próprias. Entre as ferramentas há um gerenciador de projetos bem simples e um emulador genérico de terminais com MIDP. em seguida.sun. É um ciclo comum em ambientes como UNIX. as ferramentas estarão disponíveis na barra de ferramentas no botão “Start” ou “Início”. Standard Edition (J2SE SDK) e/ou o Java 2.1/download. Baixe o arquivo e instale. Caso esteja usando Windows NT ou 2000.4 _01 pelo link abaixo: http://java. Existem outras opções tais como o NetBeans IDE ou a versão comercial do J Builder da Borland. De onde baixar ferramentas de desenvolvimento? No site da SUN Microsystems podem ser encontradas ferramentas que permitem gerar os arquivos necessários para rodar aplicações em aparelhos compat íveis com o J2ME. pré-verificar e empacotar usando as ferramentas do Kit para . Na próxima sessão será abordado o primeiro programa em J2ME. Dessa forma haver mais á portabilidade entre os vários modelos e fabricantes.1.com/products/j2mewtoolkit/download.o.html Apesar de ter uma referência a “buy” na URL acima.bats em conjunto com NotePads para editar ou Edit do “MS DOS Prompt”. Aos que não gostam de usar Makefiles ou . um tutorial sobre o midlet “Hello World!”.0. Existem vers ões para Linux e Solaris.html Escolha o sistema operacional. haverá um conjunto mínimo que incluirá controles de vibração.

com. Contato via e. Garcia Corbera é formado em engenharia da computaç ão pela UNICAMP e trabalhou em diversas empresas de consultoria e telecomunicações como AL&CA. Hughes Networks Systems e Lucent Technologies.Sobre o Autor: Rodrigo P.mail: rgarcia@cy.br .