Geo Fix命令不会通过高度

时间:2010-07-20 17:45:40

标签: android android-emulator android-2.2-froyo

在Android 2.2仿真器上,“geo fix”命令似乎无法正常工作。模拟器响应“OK”,并在我的程序中正确调用onLocationChanged()。但是,Location对象似乎并不完整 - 它可以很好地记录纬度和经度,但它不包含高度读数:hasAltitude()返回false

任何想法为什么?

示例模拟器命令:

geo fix -74 40.75 500
geo fix -77 39 400.0

代码段:

public void onLocationChanged(Location loc) {
    System.out.println("onLocationChanged Called");
    if (loc.hasAltitude()) {
        double newalt = loc.getAltitude();
        System.out.println("new altitude: " + newalt);
        gps[ALTITUDE] = newalt;
    } else {
        System.out.println("No altitude fix");
    }
    gps[LONG] = loc.getLongitude();
    System.out.println(gps[LONG]);
    gps[LAT] = loc.getLatitude();
    System.out.println(gps[LAT]);
}

示例输出:

onLocationChanged Called
No altitude fix
-74.012333333333333333
40.756666666666666667
onLocationChanged Called
No altitude fix
-77.012833333333333335
39.006499999999999996

1 个答案:

答案 0 :(得分:1)

这是模拟器中的错误,已在https://code.google.com/p/android/issues/detail?id=24809

报告