Introdução ao J2ME Conexão Java 2004

  • 1,460 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to like this
No Downloads

Views

Total Views
1,460
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
38
Comments
1
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Introdução ao J2ME Conexão Java 2004 14 e 15 de Agosto de 2004 Douglas Alves dougzilla@uol.com.br douglas@dis.epm.br
  • 2. O que é um dispositivo wireless? PC PDA’s Comunicadores Telefones Pagers Carros Smart Cards, etc
  • 3. Por que usar J2ME ? Pode ser a única forma de programar em alguns dispositivos Compartilha sua lógica entre servidores e dispositivos Dinamismo na obtenção dos aplicativos Programas compactos Ambiente de desenvolvimento é rápido e seguro
  • 4. Por que usar J2ME ? Existem aproximadamente 1 bilhão e 500 mil celulares no mundo Newsweek – 07 de junho de 2004 Entre 40-50% destes aparelhos devem estar aptos a acessar internet nos próximos 2 anos Já é 2 vezes mais numeroso que os PC’s
  • 5. Como deve parecer uma aplicação em J2ME ? SERVIDOR TCP/IP TCP/IP WSP PC DISPOSITIVO Serial USB Bluetooth DISPOSITIVO
  • 6. O que é J2ME?
  • 7. Configurações e perfis J2ME por si, não faz tudo Configurações: Bibliotecas básicas e JVM Perfis (Profiles): Ferramentas para o dispositivo ou mercado específico Configurações J2ME: - CDC - CLDC Configurações J2ME: - MIDP - Foundation, PDAP, Personal Java, etc...
  • 8. O que é uma configuração ? A configuração, define a capacidade das bibliotecas básicas e da JVM Sujeita a testes de compatibilidade Configurações do J2ME: - Connected Device Configuration (CDC) - Connected Limited Device Coniguration (CLDC)
  • 9. Configurações CLDC Equipamentos com baixíssimos níveis de Processamento Capacidade de memória Máximo 512kb de RAM Ex. Celulares 2G; 2,5G CDC Dispositivos com cerca de 2MB de RAM (alguns PDA’s, telefones 3G, etc.)
  • 10. O que é um perfil (profile) ? Uma coleção de API’s que complementam uma configuração fornecendo ferramentas de interação para o dispositivo O perfil ajuda na portabilidade das aplicações
  • 11. Perfis (Profiles) Os perfis existentes para o CLDC são diferentes dos existentes para o CDC Um perfil pode depender da funcionalidade de outro perfil, assim como uma configuração
  • 12. Mobile Information Device Profile Foi o primeiro perfil do J2ME É focado em dispositivos implementados com o CLDC É responsável por: - ferramentas de tela (Display) - interação com o usuário - persistência de dados - “Messaging” (SMS, email, etc), segurança e comunicação através da rede wireless
  • 13. Configuração CLDC MIDP PDAP CLDC JVM
  • 14. MIDlets Tem que conter pelo menos uma classe derivada do pacote javax.microedition.midlet.MIDlet Obrigatoriamente, um número de métodos têm que ser implementados para que sua execução torne-se possível Tem que usar somente as API’s do MIDP para manter sua portabilidade
  • 15. Suite de MIDlet’s Conjunto de MIDlets que fazem parte de um único grupo que podem dividir entre si os recursos utilizados. Todos MIDlets em uma suite rodam na mesma VM, dividem as mesmas instancias de classes e recursos.
  • 16. Execução de um MIDlet Tem que haver, por padrão, um construtor público (public). 3 estados: pausado, ativo, destruido Enquanto o MIDlet estiver ativo, ele está rodando o método startApp() O mesmo vale para o método pauseApp() (para quando estiver pausado) e destroyApp() para quando o MIDlet for finalizado.
  • 17. Exemplo de um MIDlet 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; //TextBox para mostrar a mensagem private Command cmSair; //Botão para sair do MIDlet
  • 18. Exemplo de um MIDlet public OlaMidlet() { display = Display.getDisplay(this); cmSair = new Command(quot;Sairquot;, Command.SCREEN, 1); tbMain = new TextBox(quot;Bem Vindoquot;, quot;Ola Midletquot;, 50, 0); tbMain.addCommand(cmSair); tbMain.setCommandListener(this); }
  • 19. Exemplo de um MIDlet //Chamada do gerenciador de aplicação para iniciar o Midlet. public void startApp() { display.setCurrent(tbMain); } //Requisição de método public void pauseApp() { } //Outra requisição de método public void destroyApp(boolean unconditional) { } // Checa se o comando de saída foi selecionado public void commandAction(Command c, Displayable s) { if (c == cmSair) { destroyApp(false); notifyDestroyed(); } } }
  • 20. Alo Mundo - Compilação Linha de comando (MS-DOS) VANTAGENS Maior capacidade de manipulação de memória e outros recursos Conhece-se o processo de compilação em “baixo nível” DESVANTAGENS Digitação Complexo o suficiente para desmotivar iniciantes em segundos Depende de configuração bem feita
  • 21. Linha de comando (MS-DOS)
  • 22. Linha de comando (MS-DOS)
  • 23. Alo Mundo - Compilação J2ME Wireless Toolkit (Sun Microsystems) VANTAGENS Fácil de usar Ambiente Windows Um botão faz tudo Já dispoõe de emuladores e trabalha com ROMS externos (PalmOS) DESVANTAGENS Não dá muitas opções de customização do MIDlet “Esconde” o processo de compilação e pré-verificação
  • 24. J2ME Wireless Toolkit
  • 25. J2ME Wireless Toolkit
  • 26. J2ME Wireless Toolkit