Eita que o título ficou longo viu? Diga aí se não parece título de monografia? Mas não dava pra colocar “J2ME : Exemplo usando RMS” ninguém entenderia não é?
Bom pessoal, mas esse é um exemplo simples de como se pode gravar dados em uma aplicação JavaME.
Neste exemplo temos duas caixas de texto uma para informar o nome e outra para informar um telefone:
Então você três comandos na tela:
Gravar - Adivinha? Grava os dados exibidos na tela para o RMS Limpar - Esse você acerta! Chuta! É evidentemente apaga o banco de dados RMS atua
Sair - Cai fora sem fazer nada
Detalhe interessante nessa implementação é que eu estou usando o ByteArrayInputStream e ByteArrayOutputStream para realizar a gravação dos dados no RMS.Observe que para usar estes dois também uso DataInputStream e DataOutputStream para poder usar métodos mais amigáveis como o writeUTF() ao invés de ter que lidar com o tamanho de cada campo os DataInputStream fazem isso pra mim.
Abaixo tem o trecho de código que faz isso:
ByteArrayOutputStream dados;//array onde ficará o registro
dados = new ByteArrayOutputStream();//interface de gravação de dados no array
//ajuda a trabalhar mais facilmente com o byteArrayDataOutputStream
gravador = new DataOutputStream(dados);
try {
gravador.writeUTF(nome);
gravador.writeUTF(fone);
gravador.flush();
} catch (IOException ex) {
ex.printStackTrace();
rs.closeRecordStore();
return false;
}
//gravando o registro no RMS
rs.setRecord(id,dados.toByteArray(),0,dados.size());
rs.closeRecordStore();
Para baixar o exemplo clique em Exemplo Java ME Record Management System está compactado em formato zip e é um projeto do Netbeans dê uma olhada na pasta dist/docs para maiores explicações do código.
Obs.: esse código foi testado no emulador da Sun e nos celulares Motorola V360 e Siemens SL75, acredito que deverá funcionar em qualquer dispositivo com suporte a JavaME, mas se você encontrar dificuldades avise aí pelos comentários.Opa! agradecimento ao meu brother Timeu por liberar o Motorola V360 dele como cobaia hihihih aí vai o link pro blog sobre photoshop dele que ele não atualiza desde janeiro! , e Tércio por liberar o Siemens SL75 dele.
11 dUTC Junho dUTC 2007 at 16:26
aeeee… emu V360 hein… xD
official tester!
ehhehehe
19 dUTC Junho dUTC 2007 at 01:22
essa parada d rms foi a parada mais complicada do curso d j2me!!! ateh agora n entrou direito na minha cabeça…
19 dUTC Junho dUTC 2007 at 11:27
Opa Cara! é meio chatinho de trabalhar por causa do stream e talz mas qualquer dúvida entra em contato.
19 dUTC Junho dUTC 2007 at 17:27
Muito legal o artigo, o título realmente está longo, mas de qualquer forma eu não entenderia nem sei o que é Record Management System, pelo menos não fico achando que é RMS de Root Mean Square, medida de potência de som… Assim que tiver um tempo, vou dar uma estudadinha nisso
04 dUTC Dezembro dUTC 2007 at 18:23
Estou utilizando o RMS para gravar dados no celular. No entanto, gostaria de obter as informações quando conectar o celular ao computador. Não quero utilizar http. Pensei em criar um arquivo texto no celular com as informações. Existe alguma outra forma para eu fazer isso?
05 dUTC Dezembro dUTC 2007 at 08:27
Olá Kleber é possível sim gravar um arquivo de texto no Celular para isso você deve usar o acesso ao sistema de arquivos do aparelho.
Tem um exemplo aqui no notnet de como fazer isso veja em:
http://notnet.wordpress.com/2007/06/09/acessando-o-sistema-de-arquivos-com-javame-e-fileconnection/
Boa sorte e obrigado pela visita