Aplicações Móveis com J2ME

6,178 views
6,019 views

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,178
On SlideShare
0
From Embeds
0
Number of Embeds
56
Actions
Shares
0
Downloads
288
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Aplicações Móveis com J2ME

  1. 1. Aplicações Móveis com J2ME Claudio Montenegro claudio.montenegro@datasul.com.br GU Java SUCESU-SC
  2. 2. Fabricação de Microprocessadores - Intel: 100 milhões/ANO - Motorola: 35 milhões/MÊS
  3. 3. Popularização de Dispositivos Microprocessados e Programáveis Tendência mundial de utilização de Java como a plataforma de desenvolvimento de aplicações para tais dispositos...
  4. 4. Porque tanto interesse em Aplicações Móveis? - Mercado de US$ 6.0 bilhões em 'mobile games' em 2004. fonte: Gartner Group - Mercado de US$12,9 bilhões em aplicações 'mobile office' em 2005. fonte: Yankee
  5. 5. Porque Java para pequenos dispositivos? - Independência de Plataforma - Orientação a Objetos - Networking - Segurança - Tratamento de Exceções - Multithreads - ... - ... e o mais importante, PADRONIZAÇÃO
  6. 6. Porque Java para pequenos dispositivos? Padronização: - A tecnologia Java está em 100 % das listas de padrões da empresas 'Fortune 500'. fonte: IBM Plataforma: - 78 % dos executivos vêem a tecnologia Java como a melhor plataforma para Web Services. fonte: Giga, Computerworld
  7. 7. Dispositivos 'Java Enabled' - Java é a plataforma líder em aplicações móveis, 53 operadoras de telefonia celular no mundo já fazem 'deploy' de aplicações J2ME. Mais 11 estão em testes. - Já existem mais de 150 dispositivos 'Java Enabled' de 22 fabricantes. - Serão 841 milhões de celulares Java em 2004 e 1.1 bilhão em 2006. fonte: ARC Group
  8. 8. A Plataforma Java 2
  9. 9. A Plataforma Java Java 2 Runtime Environment Deployment Technologies User Interface Toolkits Integration APIs Core APIs Java Virtual Machine Platforms
  10. 10. Como colocar Java em pequenos dispositivos?
  11. 11. Como colocar Java em pequenos dispositivos?
  12. 12. Como colocar Java em pequenos dispositivos? Subset da API  do J2SE + API Complementar  + JVM Adequada Resposta: Criando-se um JRE apropriado para as capacidades do dispositivo.
  13. 13. www.jcp.org - Organização aberta de abrangência mundial, focada na padronização da plataforma Java. - Mais de 660 empresas e participantes individuais. JCP é maneira através da qual a plataforma Java evolui.
  14. 14. A Plataforma J2ME Java 2 Micro Edition J2ME define um padrão para colocar Java dentro de dispositivos que não possuem o poder de processamento de ambientes J2SE completos. Dispositivos como PDAs, celulares, TVs, eletrodomésticos, computadores de bordo e muitos outros.
  15. 15. J2ME - Com J2ME é possível construir ambientes de execução Java (runtime environments) muito pequenos, menores que 200 Kbytes. - Possui arquitetura bastante modularizada.
  16. 16. Atualmente existem 52 JSRs (Java Specification Request) relacionadas com J2ME Algumas delas: JSR 66 – RMI Optional Package JSR 120 – Wireless Messaging API JSR 134 – Java Game Profile JSR 135 – Mobile Media API JSR 82 – Java APIs for Bluetooth JSR 184 – Mobile 3D Graphics API
  17. 17. Algumas das Empresas que Suportam J2ME
  18. 18. Arquitetura Modular
  19. 19. Configurations - Define a mínima plataforma Java para um conjunto de dispositivos comuns. - Suporta um ou mais 'profile' - Definido através do Java Comunity Process(JCP)
  20. 20. Configurações Atuais - Connected Device Configuration (CDC) . Web Phones . Computadores de Bordo . Network-capable devices - Connected Limited Device Configuration (CLDC) . Celulares . PDAs . Pagers CDC 1.0 – JSR 36 CDC 1.1 – JSR 218 CLDC 1.0 – JSR 30 CLDC 1.1 – JSR 139
  21. 21. Relação entre as Configurações J2SE CDC CLDC                         
  22. 22. Profiles - Complementam a Configuração para prover capacidades para uma família específica de dispositivos ou segmento da indústria. - Provê flexibilidade e optimiza portabilidade. - Frequentemente provê UI, tratamento de evento e mecanismos de persistência.
  23. 23. CLDC + MIDP
  24. 24. Pacotes do CLDC - java.lang - java.io - java.util - javax.microedition.io
  25. 25. MIDP - Mobile Information Device Profile Pacotes: - java.lang - java.io - java.util - javax.microedition.io - javax.microedition.lcd - javax.microedition.midlet - javax.microedition.rms MIDlet – aplicação móvel desenvolvida para MIDP
  26. 26. MIDP 1.0 – JSR 37 MIDP 2.0 – JSR 118 Algumas Melhorias no MIDP 2.0 - HTTPS - Multimídia: suporte para áudio/vídeo - Itens de tela customizados (GUI) - Game API - “Push Registry - incoming network connections”
  27. 27. Instalação de MIDlets http://www...../arquivo.jad Web Server arquivo.jad arquivo.jad http://www...../arquivo.jar arquivo.jar arquivo.jar
  28. 28. Exemplos de Aplicações Móveis com J2ME - Entretenimento - Internet - Educação - Produtividade - Utilitários - e-commerce - Empresarial
  29. 29. Entretenimento ChessBuddy Spruce GO Metris Commics Foto Fun PopStar
  30. 30. Entretenimento Prince of Persia Dragon Island Racing Fever Desailly Pro Soccer
  31. 31. Internet jBrowser e-mail Viewer MiMessager Azure
  32. 32. Produtividade/Educação Micro Reader Jtask - ToDo Periodic Table
  33. 33. Utilitários QuickShop Fly Cam CroWeather First Aid Guide
  34. 34. e-commerce Piranha Pricecheck - http://mpowers.net/piranha
  35. 35. e-commerce
  36. 36. e-commerce
  37. 37. e-commerce
  38. 38. e-commerce
  39. 39. e-commerce
  40. 40. e-commerce
  41. 41. e-commerce
  42. 42. e-commerce
  43. 43. Empresariais Datasul CRM SFA
  44. 44. Empresariais Datasul CRM SFA
  45. 45. Onde obter MIDLETS: - www.midlet.org - www.microjava.com - www.handango.com - www.zgroup-mobile.com
  46. 46. Onde obter informações sobre aparelhos com suporte a J2ME - wireless.java.sun.com - www.jbenchmark.com - site do fabricante
  47. 47. Ferramentas para o Desenvolvimento de Aplicações J2ME/MIDP Nokia Developers Suite for J2ME Motorola SDK for J2ME
  48. 48. J2ME Wireless Toolkit http://java.sun.com/products/j2mewtoolkit/
  49. 49. IDEs para o Desenvolvimento de Aplicações J2ME/MIDP - WebSphere Studio Device Developer - Sun ONE Studio, Mobile Edition - JBuilder MobileSet - Simplicity for Java - JDeveloper J2ME Extension
  50. 50. Etapas no Desenvolvimento de uma Aplicação MIDP Código Fonte (arquivos .java) javac Binários (arquivos .class) preverify Binários Pré- verificados (arquivos .class) jar Arquivo .jar Arquivo .jad (.class + .png)
  51. 51. Exemplo de Código package exemplo; import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Contador extends MIDlet implements CommandListener { private Command cmdAdd; private Command cmdReset; private Command cmdExit; private Form frm; private StringItem strTotal; private int counter; public Contador() { // Cria e inicializa a tela principal frm = new Form(quot;Contadorquot;); strTotal = new StringItem(quot;Total: quot;, quot;0quot;); frm.append(strTotal); // Cria e adiciona os Commands(botoes) cmdAdd = new Command(quot;+quot;, Command.SCREEN, 0); cmdReset = new Command(quot;Resetquot;, Command.SCREEN, 1); cmdExit = new Command(quot;Sairquot;, Command.SCREEN, 0); frm.addCommand(cmdAdd); frm.addCommand(cmdReset); frm.addCommand(cmdExit); frm.setCommandListener(this); }
  52. 52. Exemplo de Código (cont.) public void startApp() { Display.getDisplay(this).setCurrent(frm); } public void pauseApp() { } public void destroyApp(boolean b) { } public void commandAction(Command cmd, Displayable disp) { // Incrementa o contador if (cmd == cmdAdd) { strTotal.setText(String.valueOf(++counter)); // Reseta o contador } else if (cmd == cmdReset) { counter = 0; strTotal.setText(quot;0quot;); // Sai da aplicacao } else { destroyApp(false); notifyDestroyed(); } } }
  53. 53. Exemplo de Arquivo JAD MIDlet-Name: Contador MIDlet-Jar-URL: contador.jar MIDlet-Jar-Size: 2509 MIDlet-Version: 1.0 MIDlet-1: Contador, /images/logo.png , exemplo.Contador MIDlet-Description: Exemplo de MIDlet MIDlet-Vendor: My Company MIDlet-Info-URL: http://www.mycompany.com
  54. 54. MIDlets em Palm OS MIDP for PalmOS http://java.sun.com/products/midp4palm/ Palm OS > 3.5 WebSphere Micro Environment Parceria Palm e IBM http://pluggedin.palm.com Palm Tungsten Virá de Fábrica
  55. 55. Exemplo de Celular como Ferramenta de Controle Remoto Internet App Server Servlet x,y x,y HTTP HTTP
  56. 56. Referências Java(tm) 2 Platform, Micro Edition http://java.sun.com/j2me Wireless Developer http://wireless.java.sun.com/ Micro Java Network http://www.microjava.com Java(tm) 2 Platform Micro Edition, Wireless Toolkit http://java.sun.com/products/j2mewtoolkit/ www.forum.nokia.com.br www.motocoder.com.br

×