【问题标题】:GPS emulator tracksGPS 模拟器轨道
【发布时间】:2010-12-01 18:02:16
【问题描述】:

我正在使用 android 模拟器 ddms 来模拟使用 gpx 文件的运动。 gpx 文件中有大约 1000 个条目。但是,我发现我的 onLocationChanged 方法在整个文件的过程中只被触发了几次。我的代码如下...

LocationManager locationManager = (LocationManager)    this.getSystemService(Context.LOCATION_SERVICE);         

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 1, myListener);

myListener = new LocationListener(){
public void onLocationChanged(Location location){
    double mylat = location.getLatitude();
    double mylon = location.getLongitude();  
    ...
    }
...
}

我对 requestLocationUpdates 设置为 1000 的理解是,它应该每 1 秒请求一次位置更新,前提是该位置距离之前的位置超过 1m。它是否正确?如果是这样,为什么我只能从 gpx 文件中检索一些纬度/经度对?我不是要检索近一千个吗? (GPS 数据来自正在跑步的人,因此运动持续不断。)

【问题讨论】:

    标签: android android-emulator


    【解决方案1】:

    我在使用 gpx、kml 或手动输入 lat/long 坐标的模拟器位置时运气不佳。根据我的经验,在 requestLocationUpdates 中设置位置和距离最小值在真实硬件上效果很好,但在模拟器中却不行。

    如果使用 gpx 文件仅用于测试目的,请尝试将时间和位置约束设置为 0 和 0,以查看它现在是否在模拟器中注册了所有 1000 个点。

    【讨论】:

    • 这实际上非常非常有帮助。当我将它设置为 0,0 时,我得到了所有的分数。所以...对于其他阅读本文的人:遵循 Marc 的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    • 2020-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多