1 / 31

J2ME

J2ME. Mini Curso. Agenda. Introdução ; Arquitetura J2ME; Configuração; Perfil ; Pacotes Opcionais (APIs); MIDlet ; MIDlet Suite; Empacotamento e Distribuição ; Interface;. Agenda (cont.). Comandos; Ambiente de Desenvolvimento; O processo de desenvolvimento; Vamos ao código!

lyn
Download Presentation

J2ME

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. J2ME Mini Curso

  2. Agenda • Introdução; • Arquitetura J2ME; • Configuração; • Perfil; • PacotesOpcionais (APIs); • MIDlet; • MIDlet Suite; • Empacotamento e Distribuição; • Interface;

  3. Agenda (cont.) • Comandos; • Ambiente de Desenvolvimento; • O processo de desenvolvimento; • Vamos ao código! • Ambiente de Desenvolvimento; • Vamosaocódigo! • Importação e Análisedaprimeiraaplicação; • Outraaplicação do zero; • Exercício; • Empacotamento e deploy do exercício no disp. Móvel; • Encerramento;

  4. Introdução • J2ME: • “Coleção de tecnologias e especificações que criam uma plataforma que se ajusta aos requisitos de dispositivos móveis”; • Conjunto de tecnologias que permitem o desenvol- vimento de aplicações Java para dispositivos com processamento, memória e redelimitados; • Construída com o objetivo de fornecer um ambiente de execução Java capaz de lidar com as características particulares de pequenos dispositivos;

  5. Arquitetura J2ME • Baseado em três elementos especificados pela comunidade JCP (Java Community Process): • Configurações, perfis e pacotes opcionais; • Funcionamento sobre uma máquina virtual Java;

  6. Configuração • Descrevem as funcionalidades básicas requeridas pelo conjunto de dispositivos; • Ex: processamento, memória, tipo de conexão de rede; • Possui bibliotecas básicas da linguagem representando a plataforma mínima de desenvolvimento para cada tipo de dispositivo; • Definidas pelos fabricantes;

  7. Configuração (cont.) • A Java Community Process (JCP) especifica o Java ME em duas configurações: • CLDC – Connected Limited Device Configuration • Dispositivos com menor capacidade computacional como: telefones celulares e smartphones; • CDC – Connected Device Configuration • Dispositivos com maior capacidade computacional como: PDAs, TV Digital e sistemas automotivos;

  8. Configuração CLDC • Subconjunto de pacotes disponíveis no J2SE e abrange os dispositivos com restrições de processamento, memória e vídeo: • Celulares; • Smartphones; • Pagers; • PDAs.

  9. Configuração CLDC – Versão 1.0 • JSR 30; • Ausência de ponto flutuante; • Restrita a apenas quatro pacotes: • java.io • Tratamento de entrada e saída de dados; • java.lang • Classes básicas da linguagem Java; • java.util • Classes de utilidades genéricas; • java.microedition.io • Exclusivamente da plataforma Java ME, incluindo as classes de conexão;

  10. Configuração CLDC – Versão 1.1 • JSR 139 • Engloba os pacotes da versão 1.0 e outras características: • Ponto flutuante • Operações com variáveis do tipo float/double; • ClassLoading • Classe abstrata responsável por carregar outras classes; • Garbage Collector • Coletor de lixo dos objetos; • JNI (Java Native Interface) • Chamada de aplicações nativas de um sistema; • RMI (Remote Method Invocation) • Execução de chamadas remotas;

  11. Perfil • No topo das configurações estão os perfis; • Conjuntos de APIs mais específicas que complementa uma configuração: • Ciclo de vida da aplicação; • Persistência de dados; • Elementos de interface gráfica; • Transações seguras; • Gerênciamento de sons;

  12. Perfil (cont.) • CLDC: • MIDP (Mobile Information Device Profile); • CDC: • FP (Foundation Profile); • PP (Personal Profile); • PBP (Personal Basis Profile); • RMIP (Remote Method Invocation Profile) • GP (Game Profile);

  13. Perfil - MIDP • Mobile Information Device Profile; • Perfil suportado pela configuração CDLC, onde juntos providenciam um ambiente padrão de execução Java para os mais populares dispositivos móveis, como os celulares e PDAs; • Responsabilidades • Reprodução de multimídia, suporte a protocolos dos tipos HTTP e sockets, suporte ao sistema de cores RGB, definição de formulários e itens, APIs para jogos, validação de permissões de segurança e assinaturas digitais;

  14. Perfil – MIDP (cont.) • Recursos mínimos: • Memória: • 128KB de memória não volátil para implementação MIDP; • 8KB de memória não volátil para persistir dados das aplicações; • 32KB de runtime e heap; • Interface com o usuário: • Display com 1 bit de cor e resolução mínima de 96 x 54 pixels; • Entrada de dados via teclado ou tela sensível ao toque; • Rede: • Conectividade com algum tipo de rede sem fio;

  15. PacotesOpcionais (APIs) • Apoio em áreas com funcionalidades restritas que alguns dispositivos e aplicações precisam; • Disponibilizadas através de JSRs (Java Specification Requests); • Exemplos: • Bluetooth (JSR-82); • File Connection API (JSR-75); • Location API (JSR 179); • Mobile 3D Graphics API (JSR 184); • Mobile Game API (JSR 178);

  16. Resumindo…

  17. MIDlet • Aplicativos J2ME baseados em MIDP são chamados de MIDlets; • Utiliza somente classes definidas pelas APIs do CLDC e MIDP; • Applet desenvolvido especificamente para dispositivos móveis; • Interface de comunicação com o Application Manager (AM); • Contém os métodos que inicializam, resumem, interrompem e destroem a aplicação;

  18. MIDlet - Ciclo de vida

  19. MIDlet Suite • Consiste em um ou mais MIDlets, .java, recursos (imagens, xmls) e um arquivo de manifesto que estão situados dentro de um Java Archive (JAR) e um arquivo de descrição chamado Java Application Descriptor (JAD).

  20. Empacotamento e Distribuição: JAR • Todas as MIDlets são empacotadas antes de serem transferidas a um dispositivo, isso é feito através de um método de compressão onde são colocadas todas as informações em um único arquivo cuja extensão é .JAR. • Benefícios: • Segurança - através de assinaturas digitais; • Compressão; • Empacotamento de extensões, juntando vários tipos de extensões diferentes em uma única; • Portabilidade e o fato de quando é necessário fazer o download de uma aplicação apenas um arquivo deve ser baixado;

  21. Empacotamento e Distribuição: JAD • Descreve os detalhes da aplicação, ou seja, contém as informações sobre o MIDlet; • Está fora do JAR e pode ser acessado sem mesmo instalar o arquivo JAR em um dispositivo; • Prepara o JAR a ser instalado, otimizando a instalação do aplicativo; • Personalização do ícone da aplicação ou o diretório em que o aplicativo deve ser instalado;

  22. Empacotamento e Distribuição - JAD • O arquivo possui a seguinte estrutura: • MIDlet-Name:Nome da Suite MIDlet; • MIDlet-Version:Versão do MIDlet; • MIDlet-Vendor:Criador do MIDlet; • MIDlet-Icon:Ícone do aplicativo; • MIDlet-Description:Descrição do aplicativo; • MIDlet-Info-URL:Endereço para um arquivo de informações (JAR); • MIDlet-DATA-Size:Tamanho do JAR.

  23. Interface • Responsáveis pela apresentação e manipulação das informações; • Conforme o celular variam de tamanho de tela, cores, teclados, touch-Screens e outros aspectos ; • Dividida em duas: • High-level API's • Screen e suas heranças; • São classificados como objetos de Interface; • Low-level API's • Canvas e suas heranças; • Proporcionam uma área livre para gráficos;

  24. Interface

  25. Comandos • Tornar a interface com o usuário dinâmica, defi -nindo as operações e navegação da aplicação; •  Um command contém somenteuma informação sobre o comando e não sobre qual ação realizar; • Quando acionados são notificados a um Command Listener associado ao Displayable; • Quando um comando é acionado, o commadAction o captura, juntamente com o Displayable atual;

  26. Ambiente de Desenvolvimento • NetBeans Mobility Pack: • SDK; • Emuladores; • Debug; • Empacotamento; • Ferramentas visuais • Game Builder; • Visual Mobile Designer; • Integração com outrasferramentas; • Aplicações de Exemplo;

  27. O processo de desenvolvimento • O processo de desenvolvimento de MIDlet's é um pouco mais complexo do que de outros programas feitos em JAVA, pois é feito segundo estes passos: • Editar código fonte; • Compilar; • Pré-Verificar; • Empacotar; • Testar e/ou Instalar;

  28. Vamosaocódigo!

  29. Encerramento

  30. Referências • Desenvolvedores J2ME • http://developers.sun.com/mobility/midp/articles/getstart • Livros • John W. Muchow: Core J2ME Technology and MIDP (Sun Microsystems Press) • Michael Yuan: Enterprise J2ME: Developing Mobile Java Applications (Prentice Hall) • Riggs, Taivalsaari, and VandenBrink: Programming Wireless Devices with the Java(tm) 2 Platform, Micro Edition (The Java Series) • Site Nokia para desenvolvedores • http://www.forum.nokia.com/Develop/Java

  31. Referências (cont.) • Java Móvel • http://www.javamovel.com • Overview Oracle J2ME • http://www.oracle.com/technetwork/java/javame/overview/index.html • Blog J2ME Group • http://j2megroup.blogspot.com • Exemplos • http://developers.sun.com/mobility/reference/codesamples

More Related