?? positioningrunner.java
字號:
/*
* PositioningRunner.java
*
*/
package com.sonyericsson.example;
import javax.microedition.lcdui.TextField;
import javax.microedition.location.Location;
import javax.microedition.location.LocationException;
import javax.microedition.location.LocationProvider;
/**
*
*/
public class PositioningRunner implements Runnable {
private volatile boolean running = true;
private final PositioningListener plistener;
private final TextField t1;
private LocationProvider lp;
private long subscrStart = 0;
private long timeToFirstFix = 0;
/** Creates a new instance of PositioningRunner */
public PositioningRunner(TextField t1) {
this.t1 = t1;
t1.setMaxSize(180);
plistener = new PositioningListener();
lp = LocationProviderAdapter.getLocationProvider();
}
public void init() {
t1.setString("Acquiring GPS fix");
subscrStart = System.currentTimeMillis();
lp.setLocationListener(plistener, 1, -1, -1);
running = true;
}
public void quit() {
running = false;
lp.setLocationListener(null, -1, -1, -1);
}
public void run() {
StringBuffer sb;
boolean firstFixTimeSaved = false;
while (running) {
sb = new StringBuffer("");
Location l = plistener.waitForLocation();
if (l.isValid()) {
if (!firstFixTimeSaved) {
timeToFirstFix = (System.currentTimeMillis() - subscrStart);
firstFixTimeSaved = true;
}
sb.append("TimeToFirstFix: " + timeToFirstFix + "ms\n");
sb.append(Utils.locationToString(l));
} else {
sb = new StringBuffer("Acquiring GPS fix");
}
t1.setString(new String(sb));
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -