SlideShare ist ein Scribd-Unternehmen logo
1 von 28
JavaME no mundo real: novasferramentas Java paraSérie 40 da Nokia Awdren Fontão Instituto NOKIA  de Tecnologia – INdT Manaus - Amazonas
Ovi Loja - Oportunidade global 2 + 175MAparelhosSymbian C/ Qt & Web 500MAparelhosSé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 E-mail 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 E-mail Java ME MIDP 2.1 5
Mapas no Série 40 6
Java ME Location API – Agora com Mapas ,[object Object]
Funcionalidades incluídas:Mapping Searching Routing 7
Java ME Location API – Agora com Mapas ,[object Object]
Licença Registrada: 50000 requisições/IP em 24 hs (c/ ads)
Licença Premium será anunciada em breve8
Mostrando um Mapa import com.nokia.maps.map.MapCanvas; public class MapMIDlet extends MIDlet {  	protected void startApp() throws MIDletStateChangeException {    	Display display = Display.getDisplay(this);  MapCanvasmapCanvas = new MapCanvas( display ); display.setCurrent(mapCanvas);  	} 	protected void destroyApp(boolean unconditional) throws 				MIDletStateChangeException { }  	protected void pauseApp() { }  } 9
Mostrando Objetos em um Mapa // 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 ); 10
Fazendo uma Busca // 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].getDisplayPosition(), 	10, null ); 	map.addMapObject( marker ); } 11
Criando Rotas // 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); 12
Mapas no Série 40 Demo 13
Gestures API 14
Gestures API ,[object Object]
Single Tap
Long Press
Long Press Repeated
Drag
Drop
Flick15
Suporte a touch com Java ME ,[object Object],booleanCanvas.hasPointerMotionEvents() void pointerPressed(int x, int y) void pointerDragged(int x, int y) void pointerReleased(int x, int y) 16
Como usar a Gesture API – Passo 1 ,[object Object],// Create a GestureInteractiveZone for all Gesture Types GestureInteractiveZonegiz =      new GestureInteractiveZone( GestureInteractiveZone.GESTURE_ALL ); // set bounding rectangle of zone. giz.setRectangle( x, y, width,  height); 17
Como usar a Gesture API – Passo 2 ,[object Object],// Define a GestureListener Class GestureCanvas extends Canvas implements GestureListener { 	protected void paint(Graphics g) { … } 	public void gestureAction( Object container,  GestureInteractiveZone zone, GestureEvent event) { 		... 	} } 18
GestureAction em mais detalhes 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: 	} } 19

Weitere ähnliche Inhalte

Ähnlich wie JavaME no mundo real

Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...
Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...
Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...Alvaro Viebrantz
 
Workshop anypoint service mesh
Workshop   anypoint service meshWorkshop   anypoint service mesh
Workshop anypoint service meshRenato de Oliveira
 
Web Rangers e Power APIs
Web Rangers e Power APIsWeb Rangers e Power APIs
Web Rangers e Power APIsEliezer Bernart
 
Introdução ao OpenLayers
Introdução ao OpenLayersIntrodução ao OpenLayers
Introdução ao OpenLayersFernando Quadro
 
PHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederalPHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederalBruno Fernandes "PorKaria"
 
Aplicações Móveis com J2ME
Aplicações Móveis com J2MEAplicações Móveis com J2ME
Aplicações Móveis com J2MEelliando dias
 
Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#
Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#
Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#Dextra Sistemas / Etec Itu
 
Gerência de redes utilizando o cacti
Gerência de redes utilizando o cactiGerência de redes utilizando o cacti
Gerência de redes utilizando o cactiIsraelCunha
 
Aplicativos Moveis Com J2ME
Aplicativos Moveis Com J2MEAplicativos Moveis Com J2ME
Aplicativos Moveis Com J2MEJoão Longo
 
Chrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosa
Chrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosaChrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosa
Chrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosaJoselito Nascimento
 
Criando serviços com AngularJS
Criando serviços com AngularJSCriando serviços com AngularJS
Criando serviços com AngularJSRodrigo Branas
 
Virtualizacao
VirtualizacaoVirtualizacao
Virtualizacaohome
 

Ähnlich wie JavaME no mundo real (20)

Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...
Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...
Android things, Inteligência Artificial e Máquinas de Doces - Android Dev Con...
 
Workshop anypoint service mesh
Workshop   anypoint service meshWorkshop   anypoint service mesh
Workshop anypoint service mesh
 
Nokia SDK for Java
Nokia SDK for JavaNokia SDK for Java
Nokia SDK for Java
 
Tese de mestrado
Tese de mestradoTese de mestrado
Tese de mestrado
 
JavaME
JavaMEJavaME
JavaME
 
Web Rangers e Power APIs
Web Rangers e Power APIsWeb Rangers e Power APIs
Web Rangers e Power APIs
 
Introdução ao OpenLayers
Introdução ao OpenLayersIntrodução ao OpenLayers
Introdução ao OpenLayers
 
PHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederalPHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederal
 
Aplicações Móveis com J2ME
Aplicações Móveis com J2MEAplicações Móveis com J2ME
Aplicações Móveis com J2ME
 
Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#
Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#
Tdc - Criando uma Minimal API para serviços de Geolocalização com SQL + C#
 
Game API – Java ME Série 40
Game API – Java ME Série 40Game API – Java ME Série 40
Game API – Java ME Série 40
 
Gerência de redes utilizando o cacti
Gerência de redes utilizando o cactiGerência de redes utilizando o cacti
Gerência de redes utilizando o cacti
 
Aplicativos Moveis Com J2ME
Aplicativos Moveis Com J2MEAplicativos Moveis Com J2ME
Aplicativos Moveis Com J2ME
 
Computacao distribuida com rmi
Computacao distribuida com rmiComputacao distribuida com rmi
Computacao distribuida com rmi
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
Chrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosa
Chrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosaChrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosa
Chrome Apps e NodeWebkit: traga seu webapp para o Desktop - #outubrorosa
 
Criando serviços com AngularJS
Criando serviços com AngularJSCriando serviços com AngularJS
Criando serviços com AngularJS
 
Virtualizacao
VirtualizacaoVirtualizacao
Virtualizacao
 
6-RMI.pdf
6-RMI.pdf6-RMI.pdf
6-RMI.pdf
 

Mehr von Awdren Fontão

Sucesso com apps promovendo suas apps tdc 2014
Sucesso com apps promovendo suas apps tdc 2014Sucesso com apps promovendo suas apps tdc 2014
Sucesso com apps promovendo suas apps tdc 2014Awdren Fontão
 
Como publicar app na Windows Phone Store
Como publicar app na Windows Phone StoreComo publicar app na Windows Phone Store
Como publicar app na Windows Phone StoreAwdren Fontão
 
Atalho para o sucesso: Promovendo a sua app
Atalho para o sucesso: Promovendo a sua appAtalho para o sucesso: Promovendo a sua app
Atalho para o sucesso: Promovendo a sua appAwdren Fontão
 
The bug in on the table
The bug in on the tableThe bug in on the table
The bug in on the tableAwdren Fontão
 
Desenvolvimento de Apps - Nokia Lumia & Nokia Asha
Desenvolvimento de Apps - Nokia Lumia & Nokia AshaDesenvolvimento de Apps - Nokia Lumia & Nokia Asha
Desenvolvimento de Apps - Nokia Lumia & Nokia AshaAwdren Fontão
 
Tdc2011 goiânia-web apps-30102011
Tdc2011 goiânia-web apps-30102011Tdc2011 goiânia-web apps-30102011
Tdc2011 goiânia-web apps-30102011Awdren Fontão
 

Mehr von Awdren Fontão (6)

Sucesso com apps promovendo suas apps tdc 2014
Sucesso com apps promovendo suas apps tdc 2014Sucesso com apps promovendo suas apps tdc 2014
Sucesso com apps promovendo suas apps tdc 2014
 
Como publicar app na Windows Phone Store
Como publicar app na Windows Phone StoreComo publicar app na Windows Phone Store
Como publicar app na Windows Phone Store
 
Atalho para o sucesso: Promovendo a sua app
Atalho para o sucesso: Promovendo a sua appAtalho para o sucesso: Promovendo a sua app
Atalho para o sucesso: Promovendo a sua app
 
The bug in on the table
The bug in on the tableThe bug in on the table
The bug in on the table
 
Desenvolvimento de Apps - Nokia Lumia & Nokia Asha
Desenvolvimento de Apps - Nokia Lumia & Nokia AshaDesenvolvimento de Apps - Nokia Lumia & Nokia Asha
Desenvolvimento de Apps - Nokia Lumia & Nokia Asha
 
Tdc2011 goiânia-web apps-30102011
Tdc2011 goiânia-web apps-30102011Tdc2011 goiânia-web apps-30102011
Tdc2011 goiânia-web apps-30102011
 

JavaME no mundo real

  • 1. JavaME no mundo real: novasferramentas Java paraSérie 40 da Nokia Awdren Fontão Instituto NOKIA de Tecnologia – INdT Manaus - Amazonas
  • 2. Ovi Loja - Oportunidade global 2 + 175MAparelhosSymbian C/ Qt & Web 500MAparelhosSérie 40 C/ Java ME
  • 4. Série 40 – Mudança de paradigma - I Nokia C3 – Série 40 QWERTY Wi-Fi Aplicativos Plano de Dados E-mail Java ME MIDP 2.1 4
  • 5. Série 40 – Mudança de paradigma - II Nokia X3 -02 Touch screen Wi-Fi Aplicativos Câmera de 5mpx E-mail Java ME MIDP 2.1 5
  • 7.
  • 9.
  • 10. Licença Registrada: 50000 requisições/IP em 24 hs (c/ ads)
  • 11. Licença Premium será anunciada em breve8
  • 12. Mostrando um Mapa import com.nokia.maps.map.MapCanvas; public class MapMIDlet extends MIDlet { protected void startApp() throws MIDletStateChangeException { Display display = Display.getDisplay(this); MapCanvasmapCanvas = new MapCanvas( display ); display.setCurrent(mapCanvas); } protected void destroyApp(boolean unconditional) throws MIDletStateChangeException { } protected void pauseApp() { } } 9
  • 13. Mostrando Objetos em um Mapa // 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 ); 10
  • 14. Fazendo uma Busca // 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].getDisplayPosition(), 10, null ); map.addMapObject( marker ); } 11
  • 15. Criando Rotas // 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); 12
  • 16. Mapas no Série 40 Demo 13
  • 18.
  • 22. Drag
  • 23. Drop
  • 25.
  • 26.
  • 27.
  • 28. GestureAction em mais detalhes 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: } } 19
  • 30. On-Device Debugging for Series 40 21
  • 31.
  • 32. Funciona em dispositivos com a versão Série 40 6th Edition e6th Edition FP1
  • 33.
  • 34. Suporte de monitoramento a nível de usuário
  • 35. Aplicações anexadas ao depurador remotamente
  • 36. Sobre conexão IP ou Bluetooth
  • 37.
  • 38. Alcance o próximobilhão de usuários developers.nokia.com/pt/
  • 40. Até 20 de setembro de 2011 developers.nokia.com/pt/create4millions/
  • 41. Obrigado! Awdren Fontão awdren.fontao@indt.org.br @awdren