J2ME, J2SE y Bluetooth: Conexión PC con Celular Diego González Barrientos 01 de Junio de 2007.

Post on 23-Jan-2016

222 views 0 download

Transcript of J2ME, J2SE y Bluetooth: Conexión PC con Celular Diego González Barrientos 01 de Junio de 2007.

J2ME, J2SE y Bluetooth:Conexión PC con Celular

Diego González Barrientos

01 de Junio de 2007

Introducción

En la primera presentación, se presento un entorno de simulación de programas realizados con J2ME para dispositivos móbiles.

Se explicó a grandes rasgos Bluetooth y J2ME.

Se explicaron los códigos para búsqueda de dispositivos y servicios.

Se mostraron ejemplos de conexiones simuladas entre dispositivos con Bluetooth.

Corrección a presentación 1

Pasos para que funcione WTK Paso1: Instalar JDK 1.5 o superior Paso2: Instalar WTK 2.5 CLDC

Objetivos

Presentar el simulador Impronto Presentar Bluecove que permitirá conexión

Celular-PC Presentar java.comm como método

alternativo a Bluecove para conectar Celular-PC

Problemas WTK

No permite simulación de dispositivos que no contengan perfil MIDP y configuración CLDC.

Es decir no permite simulación de conexiones bluetooth entre PC’s o PC-Celular, etc..

Conclusión, no soporta J2SE sino que sólo J2ME.

Idea de la presentación

Presentar emulador que soporte tanto J2SE y J2ME: Instalación Ejemplos

Presentar 2 formas de conexión exitosa entre PC y celular a través de bluetooth

Simulador J2SE y J2ME

Impronto Simulator Emulador diseñado por la empresa

Rococosoft Distribuido de forma gratuita Basta con enviar correo con datos y motivos

Envian licencia y acceso a descarga simulator-install.jar

Para instalar se requiere jre para ejecutar .jar, doble click y listo.

Para compilar ejemplos se requiere jdk 1.5 o superior

Configurando Variables de Entorno para Impronto Antes de compilar los ejemplos se deben

configurar las variables de entorno PATH y JAVA_HOME

PATH con el directorio C:\Rococo\ImprontoSimulator\ant\bin

Y JAVA_HOME con el directorio del jdk, en este caso: C:\Archivos de programa\Java\jdk1.6.0_01

Compilando los ejemplos

Se debe abrir una línea de comandos En ésta se debe ir al directorio C:\Rococo\

ImprontoSimulator\ant\examples Escribir ant y presionar enter Con lo anterior se compilan los ejemplos que

vienen en la instalación del emulador Ahora en la línea de comandos nos movemos

a la carpeta C:\Rococo\ImprontoSimulator\ant\examples

Escribimos manager y presionamos enter

Corriendo Aplicación “Echo Demo” para J2SE En la línea de comando nos movemos al

directorio C:\Rococo\ImprontoSimulator\examples\echo\bin

Escribimos start echo-server y presionamos enter

Corriendo Aplicación “Echo Demo” para J2SE Configuramos un nombre amistoso Por último escogemos Server->start

Corriendo Aplicación “Echo Demo” para J2SE

Ahora en la línea de comandos start echo-client Se configura nombre amigable y Client->Select Server

Corriendo Aplicación “Echo Demo” para J2SE

Finalmente Client->Start

Corriendo Aplicación “Echo Demo” para J2ME Se siguen pasos similares para correr el

ejemplo echo-midp En cambio se ejecuta echo.bat tanto para

cliente como servidor Por último se pueden efectuar combinaciones

entre echo y echo-midp con el fin de demostrar que Impronto simula conexiones entre j2me-j2se

Ultimas palabras sobre Impronto

En el manager se pueden configurar datos de un dispositivo como el major type y el minor, si es visible o no, tipos de servicios y seguridad.

Las configuraciones de los perfiles de un dispositivo se almacenan en un archivo xml

Conclusiones sobre Impronto

Impronto permite simular conexiones entre PC y celulares, cosa que no cumple el WTK de Sun

Para mayor información del uso de esta simulador referirse al documento ImprontoUserGuide.pdf que viene en la instalación de éste.

Estableciendo conexión Bluetooth real PC - Celular Se presentaran dos formas exitosas de

establecimiento de conexión bluetooth real entre PC – celular.

Para realizar lo anterior se basará en la información obtenida de la página www.benhui.net

Primera Forma

Requerimientos Computador con Windows XP SP2 Adaptador Bluetooth USB Un SDK para el desarrollo del MIDlet. Ej: WTK

2.5 Bluecove Stack es una implementación de

Bluetooth para Windows, permite controlar por software el dispositivo Bluetooth USB

Descargar ejemplos para J2SE y J2ME desde la página de bluecove

Celular con soporte MIDP y Bluetooh

Instalando Bluecove

Descargarlo de la página, tanto .jar como archivo fuente

Incluir bluecove.jar al classpath Una forma de hacer lo anterior es copiando el

archivo bluecove.jar a la carpeta lib del jdk o la carpeta lib del jre o a la carpeta lib/ext del jre

Ahora a correr el ejemplo … Pero antes, compilar la librería intelbth.dll, que se

incluye dentro de los archivos fuentes de bluecove a la carpeta Windows/system32

Cargando el Cliente en el Celular

Se descargan el .jad y .jar de la página de bluecove

Este corresponde al código de prueba de bluecove

Se debe subir el programa al celular

Cargando el Servidor en el PC

Se debe descargar el ejemplo de la página de bluecove

Insertar dispositivo Bluetooth USB en el PC Ejecutar ejemplo en el PC Ejecutar ejemplo en el Celular Listo Resultado: 0 fallas => prueba exitosa Implica que bluecove esta funcionando OK

Comentarios

Existen dos ejemplos más con bluecove que se mostrarán en clases

Con estos ejemplos se demuestra que bluecove permite comunicación J2ME-J2SE

Además se dispone de los códigos para analizarlos y ver como implementan la aplicación dada

Segunda Forma de Conectar PC con Celular vía Bluetooth Requerimientos

Los mismos que el primer caso, excepto que en este no se usa bluecove.

En cambio se usa javax.comm (comunicación por puerto serial)

OBS: El paquete para Windows se encuentra descontinuado, por lo cual se debe buscar en la página de sun, pues no se encuentra en la dirección puesta

Descargar código fuente para el cliente de la página de Benhui

Cargando el Cliente en el Celular

Primero que nada se debe compilar código fuente de cliente en el WTK 2.5 (tópico descrito en la primera presentación)

Esto con el fin de generar el .jad y .jar Se debe subir el programa al celular El ejemplo representa un cliente que se

comunica vía puerto serial

Instalando el paquete javax.comm

Una vez descargado el paquete, se debe proceder a instalar.

Copiar comm.jar y javax.comm.properties a la carpeta lib del jdk, a la carpeta lib del jre y a la carpeta lib/ext del jre.

Copiar win32comm.dll a la carpeta bin del jdk y a la carpeta bin del jre

Ejemplo SerialDemo

Compilar el ejemplo SerialDemo que viene con el paquete.

Si la instalación salio OK, el ejemplo compilará sin problemas.

El ejemplo se compila con Jgrasp

Si se ejecuta, aparecerá la siguiente ventana.

Corriendo el ejemplo Se debe tener el

USB Bluetooth conectado y el celular con Bluetooth activado

Abrir el gestor del dispositivo Bluetooth en el PC y agregar puerto COM

OBS: Estos pasos dependen del administrador de dispositivo Bluetooth

Corriendo el ejemplo (2)

Las opciones del dispositivo Bluetooth deben estar configuradas así:

Corriendo el ejemplo (3)

Al correr el ejemplo nuevamente, veremos como tenemos como opción de puerto COM a COM4, al escogerla y presionar open port

La clave de paso, es una clave que ambos dispositivos deberán ingresar, Ej: 1111

Una vez la clave se ingresa en ambos dispositivos la comunicación se ha autorizado

Resultado de Ejemplo

Una vez se estableció la conexión, en el celular se debe abrir la aplicación y buscar servicios

Una vez se encuentra el PC con bluetooth, este se debe escoger

Al escogerlo el programa manda error (obviamente no es la idea, algo malo hay)

Y se cierra

Conclusiones

En esta presentación se ha introducido una nueva herramienta que permite emular conexiones bluetooth entre dispositivos con soporte J2SE y J2ME

Se han presentado dos diferentes formas de establecer conexión entre celulares

El mejor caso claramente fue Bluecove, que permitió en 4 ejemplos demostrar su buen funcionamiento. Además se disponen códigos para estudiar su funcionamiento y generar una aplicación propia.

Conclusiones (2)

Para el segundo caso, se tiene el código pero la operación no termina exitosamente.

Además en éste caso, se debe configurar previamente el puerto COM que se comunicará con un dispositivo en particular (Este es un problema particular del dispositivo Bluetooth).

Queda pendiente para la última sesión, una aplicación con código manipulado, que permita comunicar exitosamente un celular con un PC, con cierto propósito.

OBS: Llama la atención la dificultad que represento buscar programas con una conexión exitosa entre PC y celular vía bluetooth dada la filosofía de este último.