Hi
I am not so good in j2me, and i have some sample code which can extract the information like long and lat,
This application runs properly on Emualator,but when i instlled this application on my phone its not working.
Can some please Help me out..
I am Pasting my code here.please try it once..
Thanks
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.location.*;
public class MyLocation extends MIDlet implements CommandListener
{
private Display display;
private Form form;
private Command cmdExit, cmdOK;
private StringItem si;
public MyLocation()
{
display = Display.getDisplay(this);
form = new Form("Location Api test");
cmdExit = new Command("Exit", Command.EXIT, 5);
cmdOK = new Command("OK", Command.OK, 1);
si = new StringItem("Geo Location", "Click OK");
form.append(si);
form.addCommand(cmdOK);
form.addCommand(cmdExit);
form.setCommandListener(this);
}
public void startApp()
{
display.setCurrent(form);
}
public void pauseApp()
{
}
public void destroyApp(boolean flag)
{
notifyDestroyed();
}
public void commandAction(Command c, Displayable d)
{
if (c == cmdOK)
{
Retriever ret = new Retriever(this);
ret.start();
}
else if (c == cmdExit)
{
destroyApp(false);
}
}
public void displayString(String string)
{
si.setText(string);
}
}
class Retriever extends Thread
{
private MyLocation midlet;
public Retriever(MyLocation midlet)
{
this.midlet = midlet;
}
public void run()
{
try
{
checkLocation();
}
catch (Exception ex)
{
ex.printStackTrace();
midlet.displayString(ex.toString());
}
}
public void checkLocation() throws Exception
{
String string;
Location l;
LocationProvider lp;
Coordinates c;
Criteria cr = new Criteria();
cr.setHorizontalAccuracy(500);
lp = LocationProvider.getInstance(cr);
// Request the location, setting a one-minute timeout
l = lp.getLocation(60);
c = l.getQualifiedCoordinates();
if (c != null)
{
// Use coordinate information
double lat = c.getLatitude();
double lon = c.getLongitude();
string = "\nLatitude : " + lat + "\nLongitude : " + lon;
}
else
{
string = "Location API failed";
}
midlet.displayString(string);
}
}

Reply With Quote


