(JSR 179)是用来开发定位服务(Location-Based Service)的J2ME可选包。MIDLet可以调用它来获得移动设备当前所在的物理位置和坐标
下面的代码说明了如何获得移动设备的物理位置
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.location.*;
public class locationMidlet extends Midlet implements CommandListener {
Command Exit = new Command("Exit",Command.EXIT,0);
public locationMidlet() {}
public void startApp() {
Form f=new Form("请等待...");
f.append("正在获取位置信息...");
f.addCommand(Exit);
f.setCommandListener(this);
Display.getDisplay(this).setCurrent(f);
try {
Criteria c=new Criteria();
c.setHorizontalAccuracy(1000);
c.setVerticalAccuracy(1000);
c.setPreferredPowerConsumption(Criteria.POWER_USAGE_LOW);
LocationProvider lp=LocationProvider.getInstance(c);
Location loc=lp.getLocation(60);
QualifiedCoordinates qc=loc.getQualifiedCoordinates();
f.append("Alt: "+qc.getAltitude());
f.append("Lat: "+qc.getLatitude());
f.append("Long: "+qc.getLongitude());
} catch(Exception e) {
f.append("Exception: "+e);
}
}
public void pauseApp() {}
public void destroyApp(boolean destroy) {}
public void commandAction(Command c, Displayable s) {
if (c == Exit) {
destroyApp(true);
notifyDestroyed();
}
}
}
本文介绍如何使用JSR179规范中的API来实现J2ME平台上的定位服务开发。通过示例代码展示了如何获取设备的地理位置信息,包括经度、纬度和海拔等。
5897

被折叠的 条评论
为什么被折叠?



