如何在Yandex MapKit 3.4.0上获取用户的当前位置和位置更新

时间:2019-08-14 10:06:58

标签: android yandex yandex-mapkit

我在应用程序中使用Yandex MapKit。目前,我需要获取用户当前位置并在该位置上为相机设置动画。问题在于文档确实很差,并且最新版本的地图似乎不赞成互联网上的大多数答案。如何获取当前位置和位置更新?

1 个答案:

答案 0 :(得分:1)

我找到了一个简单的解决方案。地图套件3.0.4似乎已经更新了api方法。

        MapKit mapKit = MapKitFactory.getInstance();

    mapKit.createLocationManager().requestSingleUpdate(new LocationListener() {
        @Override
        public void onLocationUpdated(@NonNull Location location) {
            Log.d("TagCheck", "LocationUpdated " + location.getPosition().getLongitude());
            Log.d("TagCheck", "LocationUpdated " + location.getPosition().getLatitude());
            mapView.getMap().move(
                    new CameraPosition(location.getPosition(), 14.0f, 0.0f, 0.0f),
                    new Animation(Animation.Type.SMOOTH, 1),
                    null);

        }

        @Override
        public void onLocationStatusUpdated(@NonNull LocationStatus locationStatus) {

        }
    });

此代码将触发设备位置。

不要忘记在setContentview之前包含MapKitFactory.setApiKey(MAPKIT_API_KEY);MapKitFactory.initialize(this);或在片段中返回视图。