⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 positioningrunner.java

📁 主要用于基站定位的java实现
💻 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 + -