黑莓风暴中的GPS Lat Lon问题

时间:2011-10-06 10:05:22

标签: blackberry

我在我的应用程序中编写以下代码。 它将在模拟器中成功运行但是当我试图在我的设备中运行时它会给出Lat& Lon(0.0,0.0)。 有什么问题。

我的代码是。

public class GetLatLon extends TimerTask{
public static Timer timer;
private double longitude;
private double latitude;

public GetLatLon(int duration) {
    timer = new Timer();
    try {
        // TODO: update criteria with desired location distances, etc
        LocationProvider.getInstance(new Criteria()).setLocationListener(
                new MyLocationListener(), 1, 1, 1);
    } catch (Exception e) {
        System.err.println(e.toString());
    }

    timer.schedule(this, 0, 10000);
}

public void run() {
    System.out.println("Lattitude :-"+ latitude);
    System.out.println("Longitude :-"+ longitude);       
}

public double getLongitude() {
    return longitude;
}

public void setLongitude(double longitude) {
    this.longitude = longitude;
}

public double getLatitude() {
    return latitude;
}

public void setLatitude(double latitude) {
    this.latitude = latitude;
}

private class MyLocationListener implements LocationListener {
public void locationUpdated(LocationProvider provider, Location location) {
    if (location != null && location.isValid()) {
        QualifiedCoordinates qc = location.getQualifiedCoordinates()
                     try {
        GetLatLon.this.longitude = qc.getLongitude();
        GetLatLon.this.latitude = qc.getLatitude();
        } catch (Exception e) {
             System.err.println("criccomini " + e.toString());
        }
        } else {
            System.err.println("criccomini location not valid");
        }
    }

    public void providerStateChanged(LocationProvider provider, int newState) {

    }
}

}

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

我也遇到过9550 Storm-2的同样问题。 我认为您面临的问题是由于您的设备GPS值无法正常启动。尝试使用此工具:

http://appworld.blackberry.com/webstore/content/12255

这将启动GPS值(Plz不要关闭此工具只需按红色键将其发送到后台)。启动GPS值后,尝试运行您的应用程序。

我希望问题能够得到解决。 ;)