| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
semagu Recien nacido

Registrado: 17 Abr 2007 Mensajes: 1
|
Publicado: Mie 18/04/2007 Asunto: Midlet no compatible con Windows Mobile 5!! |
|
|
Hola,
Estoy desarrollando un Midlet que lea de los puertos COM de mi Pocket PC datos de una conexión Bluetooth.
Lo he probado en una HTC con Windows Mobile 5 y me dice que esa aplicación Java no es compatible con ese teléfono. Alguien sabe que estoy haciendo mal?
Tambien lo he intentado hacer en una QTEK 2020i con Windows Mobile 2003, pero necesito el Perfil de Puerto Serie Bluetooth (BSPP), y creo que esta no lo tienen porque ni siquiera me detecta el dispositivo bluetooth.
Espero que alguien me pueda ayudar, llevo ya semanas pegandome con esto y lo tengo que terminar ya!! Os lo agradezco mucho!!
Muchas gracias.
Aqui os paso el código del MIDLET:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.microedition.io.Connector;
import javax.microedition.io.CommConnection;
public class HelloWorld extends MIDlet implements CommandListener {
private Command exitCommand;
private Display display;
private Form screen;
private String COM_entrante ="COM4"; // A lo mejor en lugar de com7 habrá que poner sólo '7'
private String COM_saliente ="COM4";
public HelloWorld() {
// Obtenemos el objeto Display del midlet.
display = Display.getDisplay(this);
// Creamos el comando Salir.
exitCommand = new Command("Salir", Command.EXIT,2);
// Creamos la pantalla principal (un formulario)
screen = new Form("Lectura de ID");
screen.append(new StringItem("","Iniciando programa."));
// Añadimos el comando Salir e indicamos que clase lo manejará
screen.addCommand(exitCommand);
screen.setCommandListener(this);
conectarPuertoCOM();
}
private void conectarPuertoCOM(){
// Realizamos la conexión por el puerto específicado
CommConnection commConn;
boolean seguir = true;
screen.append(new StringItem("","Vamos a conectar con el puerto"+COM_saliente));
try {
// Abrimos conexion saliente para enviar el comando
commConn = (CommConnection)Connector.open("comm:"+COM_saliente+";baudrate=9600");
//, Connector.READ_WRITE, true);
screen.append(new StringItem("","Conexión establecida. Vamos a escribir"));
// Enviamos el comando C00
OutputStream oStream = commConn.openOutputStream();
String sMessage = "C00";
oStream.write(sMessage.getBytes());
// Cerramos la conexión
oStream.close();
commConn.close();
} catch (IOException e) {
screen.append(new StringItem("","Error enviando el comando"));
e.printStackTrace();
}
screen.append(new StringItem("","Vamos a conectar con el puerto"+COM_entrante));
try{
// Abrimos la conexion entrante para leer los datos del lector RFID
commConn = (CommConnection)Connector.open("comm:"+COM_entrante+";baudrate=9600");
screen.append(new StringItem("","Conexión establecida. Vamos a leer datos"));
InputStream iStream = commConn.openInputStream();
StringBuffer sb = new StringBuffer();
while(seguir==true) {
int c = iStream.read();
if(c != '\r')
screen.append(new StringItem("",( sb.append( (char)c) ).toString()));
else seguir = false;
}
// Cerramos la conexión
iStream.close();
commConn.close();
screen.append(new StringItem("","Programa finalizado correctamente!"));
} catch (IOException e) {
screen.append(new StringItem("","Error recibiendo datos"));
e.printStackTrace();
}
}
public void startApp() throws MIDletStateChangeException {
// Seleccionamos la pantalla a mostrar
display.setCurrent(screen);
}
public void pauseApp() {
}
public void destroyApp(boolean incondicional) {
}
public void commandAction(Command c, Displayable s) {
// Salir
if (c == exitCommand) {
destroyApp(false);
notifyDestroyed();
}
}
} |
|
| Volver arriba » |
|
 |
apm Recien nacido

Registrado: 25 Sep 2008 Mensajes: 22
|
Publicado: Jue 25/09/2008 Asunto: |
|
|
Hola,
Tengo exactamente el mismo problema que tú y no encuentro nada por la red. ¿Has hecho algún progreso?
Gracias. Un saludo. |
|
| Volver arriba » |
|
 |
intre VIP


Registrado: 19 Mar 2004 Mensajes: 1030 Ubicación: En algún lugar de las Rias Baixas...
|
Publicado: Jue 25/09/2008 Asunto: |
|
|
| Yo tengo una Qtek 2020i (alias HTC Alpine) y sí que tiene el perfil puerto serie en bluetooth. Eso sí, de programación java ni idea. |
|
| Volver arriba » |
|
 |
apm Recien nacido

Registrado: 25 Sep 2008 Mensajes: 22
|
Publicado: Vie 26/09/2008 Asunto: Midlets para Java. |
|
|
Hola,
Ayer, puede que descubrise la solución al problema que teniamos. El problema está relacionado con los perfiles y configuraciones de J2ME. En concreto mi Qtek s200 acepta el perfil MIDP 2.0 y configuración CLDC 1.1.
Creo que basta con saber que configuración acepta cada dispositivo, que sepa yo existen para MIDP : 1.0, 2.0 y 2.1 y para configuración CLDC 1.0 y 1.1.
Un saludo. |
|
| Volver arriba » |
|
 |
Miguel Angel MG VIP


Registrado: 27 Ago 2006 Mensajes: 1228 Ubicación: Calvià (I. Baleares)
|
Publicado: Sab 27/09/2008 Asunto: |
|
|
Pues la respuesta la tienes tu mismo...
Configura para Midlet 1.0 y la configuracion 1.0 y sera compatible con muchos mas dispositivos, y luego saca una version 2.0 compatible con los dispositivos mas modernos  |
|
| Volver arriba » |
|
 |
apm Recien nacido

Registrado: 25 Sep 2008 Mensajes: 22
|
Publicado: Lun 29/09/2008 Asunto: Midlets para Java. |
|
|
Pero ¿con la configuración MIDP 1.0 y CLDC 1.0 no tendré menos recursos ó la aplicación no será tan potente como con configuraciónes más elevadas?
Saludos. |
|
| Volver arriba » |
|
 |
Miguel Angel MG VIP


Registrado: 27 Ago 2006 Mensajes: 1228 Ubicación: Calvià (I. Baleares)
|
Publicado: Mar 07/10/2008 Asunto: |
|
|
Pudiera ser... pero seria mas compatible con mayor numero de dispositivos.
Solo has de mirar si con esas especificaciones te valen para lo que tu quieres, que ssupongo que si (yo de esto, NPI), y tendras un programa compatible practicamente con cualquier plataforma (No siempre la misma version del Midlet funciona en todas las plataformas, especialmente con los Symbian de las series 40, 60 y sus susodichas generaciones). |
|
| Volver arriba » |
|
 |
apm Recien nacido

Registrado: 25 Sep 2008 Mensajes: 22
|
Publicado: Mar 07/10/2008 Asunto: Midlets para Java. |
|
|
| Tienes toda la razón, creo que lo realmente bueno es llegar a un punto medio entre configuraciones y dispositivos. |
|
| Volver arriba » |
|
 |
|