Olá Java Micro Edition!

19 respostas
A

Assunto: Passo a passo para você criar o seu primeiro aplicativo para pequenos dispositivos. Faça o primeiro contato com a tecnologia.

Você pode ler este tutorial na íntegra http://www.guj.com.br/java.artigo.33.1.guj

Por favor, coloque as suas dúvidas e seus comentários sobre este tutorial aqui.
Sinta-se livre para fazer qualquer tipo de pergunta, desta maneira você estará nos ajudando e aos outros usuários!

19 Respostas

Bruno_Cardoso

Parabens ao Douglas e ao GUJ por este tutorial, ha pouco tempo alguem dizia q eram precisos incentivos para as pessoas começarem a programar em J2ME, acho q este tutorial vai ser um bom incentivo. :slight_smile:

Ok, agora… já li o tutorial, escrevi o código, compilei-o e verifiquei-o (preverify), não deu erros em nada, no entanto depois quando faço midp -classpath . OlaMidlet ele diz-me Alert: No such method getConstructor.([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
Se eu tirar o “.” e fizer só midp -classpath OlaMidlet ele abre o emulador mas não me parece q corra o programa… pelo menos não aparece o q deveria aparecer…

Estou a usar o MIDP 2.0 e o CLDC 1.0.4… qual será o problema?

PEACE!

richardpeder

Douglas:

Parabens pela iniciativa…podemos dizer que sou um aficcionado por J2Me…ja enchi as paciencias dos administradores do GUJ para que colocassem um forum de j2me, mas acho que ainda não é a hora, pois não há muito interesse do pessoal, pelo menos é o que parece…na minha empresa estamos começando a ver J2ME e acho que esse tutorial que vc colocou aqui será de grande utilidade para a empresa…para meu uso pessoal tb, pois quero montar aqui em minha casa toda a estrutura para começar a desenvolver e criar novos codigos…

Valeu pela iniciativa, será o inicio das minhas pesquisas em relação a j2me, ja tinha baixado varias coisas e tal, mas agora, com esse codigo, vou me aprofundar e me tornar um programador J2ME…
chique neh?! :smiley: :wink:

Ate mais

richardpeder

Douglas:

O que vem a ser o cldc??

valeu

A

Parabéns pelo tutorial, já até imprimí mas ainda não usei. Vou usar.

Quer saber o que desconfio? Que a minituarização dos equipamentos que usam a Web será o próximo ciclo. Relógios, celulares, óculos, CPU de micro caseiro, sistema de alarme de carro, e uma infinidade de outros equipamentos que ainda estão para chegar.

Porque? Porque equipamentos pequenos são mais baratos; são portáteis; e meio descartáveis.

Então um caminho interessante é a J2ME, que está na ascendente, certo?

Abraços,
Alfredo

D

Olá pessoal…

Vou tentar responder todas as dúvidas aqui…

1 - Morcego, para este tutorial, usei o MIDP 1.0, que é reponsável pelo preverify. Portanto creio que o seu problema esteja diretamente relacionado com a versão. Vou fazer os testes com o MIDP 2.0 e posto uma solução para o problema assim que possível.

Mas antes gostaria de deixar claro que optei pelo uso da versão 1.0 do MIDP porque todos os celulares que estão saindo no mercado com suporte a tecnologia Java, ainda não suportam a versão 2.0. E segundo as maiores empresas, como a Nokia, Ericsson e outras mais somente a partir do segundo semestre do 2004 teremos equipamentos hábeis a rodar esta nova versão.

2 - richardpeder, Muito obrigado pelo elogio, creio que o J2ME vai dar muito o que falar ainda. Quem sabe depois das repercurssões deste tutorial e de número de pessoas interessadas… apareça de repente um fórum de J2ME por aí… não que isso impeça de haver uma ampla discussão do assunto aqui no GUJ, usem ó fórum de Java básico para isso… Lá tem sempre alguém disposto a responder ou que pelo menos conheça alguém que sabe a resposta.

Quanto a sua dúvida, estou preparando uma sopa de letrinhas do mundo J2ME, mas adiantando…
CLDC quer dizer Connected, Limited Device Configuration que é responsável por duas coisas. A primeira é definir a especificação e configuração para uma JVM, seja ela de que dispositivo for. A outra é definir quais classes do Java (J2SE) podem ser utilizadas para o dispositivo.

Logo logo, vou tentar postar também todas as classes do J2SE que o J2ME usa, ok?

3 - Alfredo Mangia, é, não tenho dúvidas quanto ao crescimento vertiginoso do uso da tecnologia. Eu já disse isso no fórum em outra oportunidade e digo de novo: NÃO podemos pensar em J2ME como uma tecnologia voltada a CELULARES, apesar do mercado estar em alta no momento. Essa tecnologia já está sendo usada amplamente para o desenvolvimento de softwares voltados à telemedicina, eLearning, Tv interativa entre outros… Portanto o mercado ainda está pouco explorado.

Um abraço a todos e não sejam tímidos… postem dúvidas!!!

richardpeder

Obrigado Douglas…mas ainda estou com algumas duvidas…ou melhor, muitas duvidas…vamos la…vc disse sobre a versao do midp 2.0, que vc usou o 1.0…qual a diferença??? Outra duvida…vc manda baixar no tutorial o cldc, que ja foi explicado, o j2me wriless tool kit, que eh o da Sun e o midp…vamos lá entao…o que eh o midp? eh simplesmente um emulador de um celular especifico ou tem ligação direta com desenvolvimento dos codigos? outra…qual a definição de midlet??? outra…quando compilamos com o midp o codigo HelloMidlet, ele gera um .class…mas o j2me wriless abre arquivos .jad…dai eu gerei um .jar…parece que deu certo, mas estou confuso, pois não entendo direito esse esquema de .jad, .class…gostaria de criar um codigo, compilar e escolher o emulador para emular o codigo entende? está uma “salada” de extensões ai e não to entendendo nada…tem como dar uma esclarecida??

Perdoe o exagero de perguntas, mas na empresa onde trabalho, estamos começando a pesquisar sobre J2ME e acredito que este tutorial que vc postou será ótimo, mas preciso destes esclarecimentos.

Valeu por tudo cara…ate mais!!!

M

Olá Douglas!
Será que vc poderia me ajudar? Gostaría de saber como faço para gerar arquivos .pdb a partir de uma consulta ao meu banco de dados, de modo que eu possa consultar os dados desse arquivo após enviá-lo para o Palm. Pelo que andei lendo, nao é possivel acessar diretamente um .pdb pelo palm, mas apenas através de outro software, está correto? Como posso resolver isso? Tentei fazer o acesso direto pelo Palm no banco, mas precisa da API PointBase…Acredito que o jeito mais seguro seja gerando o .pdb e enviando para o palm…
Obrigada :smiley:

D

richardpeder - Olha, desconheço TODAS as diferenças entre a versão 1.0 e 2.0, mas sei que a mais nova tem um suporte muito melhor ao envio de msg´s SMS e a API game, que proporciona melhores recursos ao desenvolvimento de jogos para o celular. O grande problema desta nova versão, ainda é o suporte pelos equipamentos mais novos do mercado.
Se vc quiser informações mais detalhadas, aconselho ir em
http://java.sun.com/products/midp/

O MIDP é o pacote responsável pelas API’s de dispositivos móveis, essas API’s são especificamente para interagir com o dispositivo. O pacote dela é o javax.microedition.

No caso de se trabalhar com Palm’s, há o MIDP4Palm, que interage de forma mais coerente com o sitesma operacional PalmOS.

miriantk03 - Olá! Estou com um problema muito parecido e sinceramente ainda não achei a melhor solução. A aplicação que estou desenvolvendo tem que fazer apenas uma consulta em um .pdb já pronto, e não consigo, depois eu queria gravar esses dados em .pdb e também não consigo. O que estou procurando, é um interpretador desse formato de Banco de dados, que provavelmente deve ser da própria Palm e depois arranjar um jeito de criar um índice para fazer consulta neste .pdb. O problema é que eu não queria usar um software paralelo na minha aplicação, então o problema continua no ar. Ainda não conheço a fundo a API PointBase, por isso não posso dar muitas opiniões sobre ela.
Não sei se ajuda mas uma alternativa que estou tentando fazer para gerar um banco de dados, é transformar os dados gerados pela aplicação em um array de bytes, gravar esses bytes em um arquivo genérico (tipo um .dat) e depois desenvolver um pequeno software para interpretar esses bytes para qualquer outra aplicação.
Apesar de não ser muito elegante, não acho a idéia de toda ruim, pois há a vantagem de poder interpretar esses bytes em qualquer plataforma.
Um grande desvantagem, é que precisa ter uma grande experìência em Java (coisa que eu ainda não tenho) para manipular corretamente esses bytes. E é aí que eu estou me perdendo.

Sinto muito não poder te ajudar… mas assim que vc ou eu obtermos sucesso, não poderemos deixar de entrar em contato.

Um abraço!

M

Oi Douglas!
Valeu pela sua resposta :smiley:
Eu consegui gerar o pdb com alguns dados só, mas nao consigo testar pra ver se deu certo justamente por nao conseguir visualisá-lo no palm…Nao existe nenhum programa pronto para ler?Afinal, o pdb ja tem um formato pronto nao eh mesmo?
Se vc tiver mais avançado nessa parte quanto a leitura, me passe algumas dicas, ou exemplo de código se tiver (sem querer abusar :oops: ).
Obrigada + 1 vez!

G

Olá pessoal!!!

Eu estive olhando o tutorial e realmente está muito bom, até q enfim achei algo interessante sobre J2ME!!, meus parabéns para GUJ!!.
Bom, meu proble, é que não consigo compilar o programinha teste do tutorial! eu configurei o path tudo direitinho, testei e funcionou como era pra estar, só que quando eu dou o comando “javac -bootclasspath…”
ele gera um erro “cannot read: OlaMidlet.java”, ja verifiquei ortografia, fiz de tudo, o que poderia ser?? se alguem souber por favor me ajude!!!

valeu!!!

D

Olá…

Obrigado pelos elogios… vou tentar disponibilizar em breve um tutorial sobre programação GUI no J2ME…

Quanto a sua dúvida… esse problema geralmente acontece quando não se e´stá posicionado no mesmo diretório em que vc salvou o arquivo .java.

Por exemplo, se vc fez o arquivo OlaMidlet.java e salvou ele no diretório C:Midlets, quando vc abrir o prompt de comando vc deverá estar posicionado no mesmo diretório (C:Midlets)

O display deverá estar mais ou menos assim:

C:Midlets> {Aqui vc digita a linha de comando}

Ok… qualquer coisa… não hesite em perguntar.

P.S. Caso vc não seja veterano do MsDOS, para posicionar-se no diretório desejado use o [cd] para ir para a raiz e [cd {caminho do diretório}].

Abraços

G

Olá pessoal!!!

obrigado pela resposta Dougzilla!!!
tenho uma duvida que me mata!! vc saberia me dizer algo sobre o acesso a dados com o J2ME??? eu estou começando agora com o J2ME e gostaria que vc e outros usuários me indicassem alguns tutorias sobre ele (se é q existe)!!!.

Obrigado + uma vez! Valeu!

D

Olá meu caro…

Amiguinho… sinto muito… mas infelizmente EU desconheço tutoriais sobre o acesso a dados e gravação dos mesmo em J2ME… Há, sim… os tutoriais sobre o javax.microedition.rms que é a biblioteca que cuida do gerenciamento geral destes dispositivos… e implementa o RecordStore… Na revista Javamagazine edição 3 tem um artigo bem legal sobre esse assunto. Os tutoriais que eu conheço são todos em inglês… mas se ajudar…

http://www.microjava.com/articles/techtalk/feng_zhu
http://www.javaworld.com/javaworld/jw-05-2002/jw-0531-palm.html
http://wireless.java.sun.com/midp/articles/persist/

Boa programação… e não se esqueça de informar quando obtiver sucessos…

Abraços

henriquemeira

O que exatamente devo fazer para rodar o aplicativo no celular?

Digo, devo apenas importar do celular o arquivo compilado .class ? Como lançar isto?

J

O exemplo do tutorial foi executado com o Wireless Tolkit?
Porque há uma referência sobre ele no inicio do tutorial, mas usa-se simplesmente o comando “midp” para executá-lo, o qual abre um emulador.
Nas aplicações que fiz, eu a empacotava e mandava para o Wireless Tollkit emular.
Esse emulador que foi utilizado é o Wireless Tollkit da SUN ? :?:

[]'s,
Leandro Jekimim Goulart.

D

Olá!!

Desculpe a demora para responder!! :oops:

É o seguinte, eu citei o WTK no início do tutorial para o usuário “iniciante” saber de sua existência. Porém parti para a explicação do método “pedreira” da coisa para que se entenda como é o processo compilação, pré-verificação e execução de um MIDlet.
Não há dúvidas que o WTK facilita muito a vida de quem está programando, mas para entender a tecnologia, nada melhor do que entender como o “neném vai parar na barriga da mamãe”!!

Qualquer dúvida… posta aí!

Um abraço!

J

Dougzilla,

Obrigado por responder. Porém minha dúvida é a seguinte:
Quando você executa a aplicação:

Midp -classpath . OlaMidlet

Esse emulador que é executado é o WTK. Me parece que não, certo?

[]'s,
Leandro Jekimim Goulart.

C

Gostaria de saber se tem diferença baixar os o toolkit ou tudo separado ???

Jessica_Lorena

[color=darkblue][i]Oiii…
Tô com duas dúvidas cruéis e queria saber se alguém pode me responder… :lol:

1ª Em uma aplicação JME, quem fica responsável por gerenciar o posicionamento dos itens na tela?
2ª Qual o layout pafrão utilizado em form??
Me ajudem por favor!! :roll:

Desde já valeu… :oops:[/i][/color]

Criado 15 de fevereiro de 2003
Ultima resposta 22 de abr. de 2008
Respostas 19
Participantes 11