Marlon Luz JavaME no mundo real: novas ferramentas Java para Série 40 da Nokia 1.

Slides:



Advertisements
Apresentações semelhantes
|Introdução a Java para programadores Telis. Jogo de Dados simples O jogo é jogado por dois jogadores. Cada jogador faz sua jogada (lança um dado), e.
Advertisements

JAVA Orientação a Objetos
Sistemas distribuídos
Segurança na .NET Framework
Maurício Edgar Stivanello
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Modelagem de Framework Orientado a Objetos Alex de Magalhães Machado.
Altera NIOS II: uma breve introdução
Animador para a Linguagem Funcional 2 Carlos Eduardo Lima Lucas Roberto Bechert Schmitz Leonardo Lucena.
TRABALHO DE CONCLUSÃO II PUCRS – Faculdade de Informática
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
JAVA ENUMS © 2009 by Jorge L. de Souza Leão março de 2009 PEE - COPPE/UFRJ.
Aula 8 Polimorfismo.
SCC 5812 – Interação Usuário-Computador Análise da Ferramenta Cacoo
SCC 5812 – Interação Usuário-Computador Análise da Ferramenta Cacoo
Introdução a Programação Orientada a Objetos
Desenvolvimento para Dispositivos Móveis
em aplicações corporativas
Se liga aí, que é hora da revisão!
O Mecanismo de Threads em Java 2. Criar uma classe herdeira da super classe Thread public class minhaThread extends Thread{ public class minhaThread extends.
Classes Revisando: –Forma de implementação de estruturas específicas –Atributos (grupos de dados) –Métodos (conjuntos de procedimentos)
G ENERIC C ONNECTION F RAMEWORK Prof. André Assad
J2ME Mini Curso.
G AME API. Conjunto com 5 classes que simplificam o desenvolvimento de jogos 2D Provêem 2 importantes funcionalidades GameCanvas Estruturação do jogo.
Chamada Remota de Procedimentos
Interface Gráfica (material da Profa. Luciana Nedel - www. inf. pucrs
Programa Expresso de Capacitação Módulo J2ME Aula 4 – Interface de alto e baixo nível.
Rafael Lucio, Desenvolvedor Jr Padrão Informática e Assessor de TI Secretaria Municipal da Saúde;
Treinamento Framework PRADO Abril / Sobre o PRADO Estrutura de diretórios do PRADO Configuração da Aplicação Padrões utilizados na Conab Boas práticas.
Pilhas Profa. Nádia Félix.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa This.
Marlon Novas ferramentas da Nokia para a plataforma S40 1.
Aula 1 - Fundamentos Java SE Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros – Agosto/2009.
TREINAMENTO CFTV MONITORAMENTO
RMI - JAVA.
MINI CURSO J2ME Vinícius Maran SEMINÁRIO REGIONAL DE INFORMÁTICA 2008.
Melhorias e Mensagens Amigáveis ao Usuário Centro de Informática Universidade Federal de Pernambuco Bruno Felipe Marco André Paulo Fernando Rodolfo Santos.
Programação para Web Unidade 06 – Java Beans e BDs Prof.: Henrique Santos.
SISTEMA DE GERENCIAMENTO ESCOLAR GRUPO 9 UFSCAR :23.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 RIP versão 1 Protocolos e Conceitos de Roteamento – Capítulo 5.
Herança e Arquitetura em camadas
1 Reestruturação das Linguagens da Disciplina “Paradigmas de Linguagens de Programação” para Java 1.5 Alunos: Angelo Ribeiro (arnpr) Eduardo Tavares (eagt)
Programação para Dispositivos Móveis Prof. Wallace Borges Cristo.
Ciclo de Seminarios Técnicos – PET Computação Quarta-Feira - 15/06/2011
Faculdade Pitágoras – Campus Fadom.  Display  Cada MIDlet tem UMA referência para um objeto Display  Esse objeto pode recuperar informações sobre.
Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas.
Introdução a Programação Orientada a Objetos
Modificadores Programação II.
Java Disciplina: Programação II Professora: Mai-Ly Vanessa.
Mãos a Obra Integrando dispositivos Inteligentes à Web 1.
1/18 Java ME, MIDP 2.0 e SATSA: Segurança para MIDs Alexandre Ilha Márcia Cristina Cera Trabalho Leve 1 - Abril/2006.
Plataforma Java 2 Micro Edition (J2ME)
GOTO. Project treinamento expresso j2me Luiz Carlos d´Oleron lcadb at cin.ufpe.br.
Globalcode – Open4Education 1 EJB3 Interceptors Ricardo Limonta.
Faculdade Pitágoras – Campus Fadom.  Para armazenar dados em aplicações MIDP podemos utilizar o RMS.  RMS utiliza memória do dispositivo para armazenamento.
Seminários.reply Introdução a JavaME Guilherme Carvalho.
Implementação de um teremim controlado através do acelerômetro de dispositivos móveis Diego Bonesso Felipe Cecagno Leonardo Crauss Daronco Rubem Nakamura.
RMI Java Remote Method Invocation em Java. Introdução Java Remote Method Invocation (Java RMI) permite desenvolver sistemas distribuídos baseados em Java.
Eclipse RCP Felype Santiago. Rich Client Um RCP é um software que consiste dos seguintes componentes: –Core, gerenciador do ciclo de vida; –Um framework.
Acessando banco de dados com JAVA.  Linguagem independente de plataforma; ◦ “Write once, run anywhere” ◦ JVM  Java Virtual Machine  Mecanismo que permite.
JBuilder Daniel Almeida, Dayene Mendes, Gustavo Ribeiro, Thiago Dias.
Desenvolvimento WEB II Professora: Kelly de Paula Cunha Apresentação baseada no material didático elaborado pelo Prof. Pasteur Ottoni de Miranda Junior.
Linguagem Java Programação II.
A Solução CFTV em Nuvem Visualização Acesso via browser a até 30 câmeras simultaneamente em cada monitor, mesmo em locais diferentes Gravação Remota e.
INTERAÇÃO ENTRE OBJETOS Dilvan Moreira (baseado no livro Prog. Orientada a Objetos em Java)
V Seminário RSJUG Confraria do Java JavaDB Um Banco de Dados 100% Java Profa. Me. Karen Selbach Borges.
JFC e Swing Thiago Medeiros Barros 18/08/2011. JFC Java Foundation Classes é um conjunto de componentes e serviços que simplificam o desenvolvimento e.
Web Services Conceitos e Tecnologias Amanda Modesto Suzanna Sandes.
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Marlon Luz JavaME no mundo real: novas ferramentas Java para Série 40 da Nokia 1

OviLoja - Oportunidade global 2 175M Aparelhos Symbian C/ Qt & Web 500M Aparelhos Série 40 C/ Java ME +

Série 40

Série 40 – Mudança de paradigma - I Nokia C3 – Série 40 QWERTY Wi-Fi Aplicativos Plano de Dados Java ME MIDP 2.1 4

Série 40 – Mudança de paradigma - II Nokia X3 -02 Touch screen Wi-Fi Aplicativos Câmera de 5mpx Java ME MIDP 2.1 5

On-Device Debugging for Series 40 6

7 Acrescenta a habilidade de depurar aplicações diretamente no telefone Funciona em dispositivos com a versão Série 40 6th Edition e 6th Edition FP1 Funciona com Eclipse e NetBeans

On-Device Debugging for Series 40 8 Depurador completo, incluindo breakpoints e valor de variáveis Suporte de monitoramento a nível de usuário Aplicações anexadas ao depurador remotamente Sobre conexão IP ou Bluetooth Debug em apenas um click na IDE

Demo On-Device Debugging for Series 40 9

Mapas no Série 40 10

Java ME Location API – Agora com Mapas 11 Fornece acesso ao poderoso servidor Ovi Maps Funcionalidades incluídas: –Mapping –Searching –Routing

Java ME Location API – Agora com Mapas 12 Licença de Desenvolvedor: 1000 requisições/IP em 24 hs Licença Registrada: requisições/IP em 24 hs (c/ ads) Licença Premium será anunciada em breve

Mostrando um Mapa 13 import com.nokia.maps.map.MapCanvas; public class MapMIDlet extends MIDlet { protected void startApp() throws MIDletStateChangeException { Display display = Display.getDisplay(this); MapCanvas mapCanvas = new MapCanvas( display ); display.setCurrent(mapCanvas); } protected void destroyApp(boolean unconditional) throws MIDletStateChangeException { } protected void pauseApp() { } }

Mostrando Objetos em um Mapa 14 // mapFactory comes from MapCanvas MapFactory mapFactory = mapCanvas.getMapFactory(); GeoCoordinate coord = new GeoCoordinate( 10, 10, 0 ); MapStandardMarker marker = mapFactory.createStandardMarker(coord, 10, null ); map.addMapObject( marker );

Fazendo uma Busca 15 // mapFactory comes from MapCanvas SearchManager searchManager = SearchManager.getInstance(); searchManager.geocode("Germany,Berlin", null ); Location[] locations = searchManager.getLocations(); //loop through locations[] showing them on a map MapFactory mapFactory = mapCanvas.getMapFactory(); for(int i=0; i < locations.length; i++) { MapStandardMarker marker = mapFactory.createStandardMarker(locations[i].getDisplayP osition(), 10, null ); map.addMapObject( marker ); }

Criando Rotas 16 // mapFactory comes from MapCanvas SearchManager searchManager = SearchManager.getInstance(); searchManager.geocode("Germany, Berlin", null ); Location[] locations = searchManager.getLocations(); MapFactory mapFactory = mapCanvas.getMapFactory(); WaypointParameterList waypoints = new WaypointParameterList(); waypoints.addLocation(locations[0]); waypoints.addLocation(locations[1]); RouteManager rm = RouteManager.getInstance(); RoutingMode[] modes = { new RoutingMode() }; rm.calculateRoute(waypoints, modes);

Demo Mapas no Série 40 17

Gestures API 18

Gestures API 19 Gestos Single Tap Long Press Long Press Repeated Drag Drop Flick

Suporte a touch com Java ME 20 Métodos de Canvas boolean Canvas.hasPointerMotionEvents() void pointerPressed(int x, int y) void pointerDragged(int x, int y) void pointerReleased(int x, int y)

Como usar a Gesture API – Passo 1 21 Crie uma GestureInteractiveZone // Create a GestureInteractiveZone for all Gesture Types GestureInteractiveZone giz = new GestureInteractiveZone( GestureInteractiveZone.GESTURE_ALL ); // set bounding rectangle of zone. giz.setRectangle( x, y, width, height);

Como usar a Gesture API – Passo 2 22 Crie uma GestureListener // Define a GestureListener Class GestureCanvas extends Canvas implements GestureListener { protected void paint(Graphics g) { … } public void gestureAction( Object container, GestureInteractiveZone zone, GestureEvent event) {... }

GestureAction em mais detalhes 23 public void gestureAction( Object container, GestureInteractiveZone zone, GestureEvent event) { switch( event.getType() ) { case GestureInteractiveZone.GESTURE_TAP:...; break; case GestureInteractiveZone.GESTURE_LONG_PRESS: case GestureInteractiveZone.GESTURE_LONG_PRESS_REPEATED: case GestureInteractiveZone.GESTURE_DRAG: case GestureInteractiveZone.GESTURE_DROP: case GestureInteractiveZone.GESTURE_FLICK: }

Demo Gestures API 24

Marlon Luz Obrigado!!! 25