Ayuda con excepcion de Criteria API jsr179
Hola A tod@.
Estoy realizando una conexion con el gps de un movil,funciona y compila bien cuando lo hago directamente en el startApp()
pero cuando paso todos los procedimientos de conexion a un metodo compila y funciona en el emulador, pero en el movil me salta una excepcion....
ava.lang.securityExcepcion Application not autorized to access the restricted api.
A que se debe??
Esta seria la forma que se ejecuta bien en el emulador y el movil, pero si paso el contenido del try al metodo getData() salta la excepcion
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.location.*;
public class HelloMIDlet extends MIDlet implements CommandListener {
private Form form;
public TextField txtLongitud;
public TextField txtLatitud;
Command Exit = new Command(\"Salir\",Command.EXIT,0);
Command Buscar = new Command(\"Buscar\",Command.EXIT,0);
public Display display;
public HelloMIDlet() {
display = Display.getDisplay(this);
form=new Form(\"Buscando localizacion\");
txtLongitud = new TextField(\"Longitud: \",null,40,0);
txtLatitud = new TextField(\"Latitud: \",null,40,0);
form.append(txtLongitud);
form.append(txtLatitud);
form.addCommand(Buscar);
form.addCommand(Exit);
form.setCommandListener(this);
}
public void startApp() {
display.setCurrent(form);
try {
Criteria cr=new Criteria();
cr.setHorizontalAccuracy(500);
cr.setVerticalAccuracy(500);
LocationProvider lp=LocationProvider.getInstance(cr);
Location loc=lp.getLocation(-1);
QualifiedCoordinates qc=loc.getQualifiedCoordinates();
txtLongitud.setString(String.valueOf(qc.getLongitude()));
txtLatitud.setString(String.valueOf(qc.getLatitude()));
} catch(Exception e) {
form.append(\"Exception: \"+e);
}
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable s) {
if (c == Exit) {
destroyApp(true);
notifyDestroyed();
}else if (c==Buscar){
getData();
}
}
public void getData(){
}
}
Estoy realizando una conexion con el gps de un movil,funciona y compila bien cuando lo hago directamente en el startApp()
pero cuando paso todos los procedimientos de conexion a un metodo compila y funciona en el emulador, pero en el movil me salta una excepcion....
ava.lang.securityExcepcion Application not autorized to access the restricted api.
A que se debe??
Esta seria la forma que se ejecuta bien en el emulador y el movil, pero si paso el contenido del try al metodo getData() salta la excepcion
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.location.*;
public class HelloMIDlet extends MIDlet implements CommandListener {
private Form form;
public TextField txtLongitud;
public TextField txtLatitud;
Command Exit = new Command(\"Salir\",Command.EXIT,0);
Command Buscar = new Command(\"Buscar\",Command.EXIT,0);
public Display display;
public HelloMIDlet() {
display = Display.getDisplay(this);
form=new Form(\"Buscando localizacion\");
txtLongitud = new TextField(\"Longitud: \",null,40,0);
txtLatitud = new TextField(\"Latitud: \",null,40,0);
form.append(txtLongitud);
form.append(txtLatitud);
form.addCommand(Buscar);
form.addCommand(Exit);
form.setCommandListener(this);
}
public void startApp() {
display.setCurrent(form);
try {
Criteria cr=new Criteria();
cr.setHorizontalAccuracy(500);
cr.setVerticalAccuracy(500);
LocationProvider lp=LocationProvider.getInstance(cr);
Location loc=lp.getLocation(-1);
QualifiedCoordinates qc=loc.getQualifiedCoordinates();
txtLongitud.setString(String.valueOf(qc.getLongitude()));
txtLatitud.setString(String.valueOf(qc.getLatitude()));
} catch(Exception e) {
form.append(\"Exception: \"+e);
}
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable s) {
if (c == Exit) {
destroyApp(true);
notifyDestroyed();
}else if (c==Buscar){
getData();
}
}
public void getData(){
}
}