首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是实时跟踪GPS定位的最佳方法,而不是在时间环上调用地形图函数?

什么是实时跟踪GPS定位的最佳方法,而不是在时间环上调用地形图函数?
EN

Stack Overflow用户
提问于 2014-07-09 17:37:09
回答 2查看 1.6K关注 0票数 1

我开发了一个实时GPS定位跟踪系统,该系统将与GPS设备集成的移动设备将定位信息发送到数据库中的web服务器,并通过调用函数周期性绘制地图中的数据,在特定的时间间隔上反复调用函数,在Google中绘制位置信息。

在用户端,我们可以查看位置更新,如绘图仪、闪烁和更改Google中的位置。

有没有其他最好的方法来显示谷歌地图上的实时全球定位系统?

有什么方法可以让绘图仪不眨眼地移动,就像不断地流过地图一样?

任何一段代码都是非常感谢的&谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-18 11:47:54

我建议您将位置历史存储在数据库中,使其持续时间较短,并将其命名为位置帧。现在,您有一个从和协调位置,以移动您的策划者在地图上。当绘图仪接近上一帧的目的地时,通过设置新帧的应用频率来更新帧。在这个逻辑上建立程序。希望它有所帮助:)

票数 1
EN

Stack Overflow用户

发布于 2014-07-09 18:22:20

我把这个代码实现到一个服务中,它只得到坐标.他们从来没有被渲染成任何地图..。

代码语言:javascript
复制
private class LocationListener implements android.location.LocationListener {
    Location mLastLocation;

    public LocationListener(String provider) {
        Log.e(TAG, "LocationListener " + provider);
        mLastLocation = new Location(provider);
    }

    @Override
    public void onLocationChanged(Location location) {
        sLat = Double.toString(location.getLatitude());
        sLong = Double.toString(location.getLongitude());
        Speed = Double.toString(location.getSpeed());
        sAlt = Double.toString(location.getAltitude());
        sTime = Double.toString(location.getTime());
        Log.e(TAG, "onLocationChanged: " + location + localTime);
        mLastLocation.set(location);
    }

    @Override
    public void onProviderDisabled(String provider) {
        Log.e(TAG, "onProviderDisabled: " + provider);
    }

    @Override
    public void onProviderEnabled(String provider) {
        Log.e(TAG, "onProviderEnabled: " + provider);
    }

    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
        Log.e(TAG, "onStatusChanged: " + provider);
    }
}

LocationListener[] mLocationListeners = new LocationListener[]{
        new LocationListener(LocationManager.GPS_PROVIDER),
        new LocationListener(LocationManager.NETWORK_PROVIDER)
};

@Override
public IBinder onBind(Intent arg0) {
    return null;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    Log.e(TAG, "onStartCommand");
    super.onStartCommand(intent, flags, startId);
    return START_STICKY;
}

@Override
public void onCreate() {

    Log.e(TAG, "onCreate");
    initializeLocationManager();
    try {
        mLocationManager.requestLocationUpdates(
                LocationManager.NETWORK_PROVIDER, LOCATION_INTERVAL, LOCATION_DISTANCE,
                mLocationListeners[1]);
    } catch (java.lang.SecurityException ex) {
        Log.i(TAG, "fail to request location update, ignore", ex);
    } catch (IllegalArgumentException ex) {
        Log.d(TAG, "network provider does not exist, " + ex.getMessage());
    }
    try {
        mLocationManager.requestLocationUpdates(
                LocationManager.GPS_PROVIDER, LOCATION_INTERVAL, LOCATION_DISTANCE,
                mLocationListeners[0]);
    } catch (java.lang.SecurityException ex) {
        Log.i(TAG, "fail to request location update, ignore", ex);
    } catch (IllegalArgumentException ex) {
        Log.d(TAG, "gps provider does not exist " + ex.getMessage());
    }
    TelephonyManager mngr = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
    IMEI = mngr.getDeviceId();
}

@Override
public void onDestroy() {
    Log.e(TAG, "onDestroy");
    super.onDestroy();
    if (mLocationManager != null) {
        for (int i = 0; i < mLocationListeners.length; i++) {
            try {
                mLocationManager.removeUpdates(mLocationListeners[i]);
            } catch (Exception ex) {
                Log.i(TAG, "fail to remove location listners, ignore", ex);
            }
        }
    }
}

private void initializeLocationManager() {
    Log.e(TAG, "initializeLocationManager");
    if (mLocationManager == null) {
        mLocationManager = (LocationManager) getApplicationContext().getSystemService(Context.LOCATION_SERVICE);
    }
}

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24660339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档