Я использую Яндекс MapKit в своем приложении. В настоящее время мне нужно получить текущее местоположение пользователей и анимировать камеру в этом месте. Проблема в том, что документация действительно плохая, и большинство ответов в Интернете кажутся устаревшими в последней версии карты. Как я могу получить текущее местоположение и обновления местоположения?
Я нашел одно простое решение. Набор карт 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) {}});
этот код будет определять местоположение устройства.
не забудьте включить MapKitFactory.setApiKey (MAPKIT_API_KEY);
и MapKitFactory.initialize (this);
перед setContentview или возвратом просмотреть по фрагментам.
Как предоставляется доступ к местоположению
Сайты и приложения запрашивают доступ к местоположению y наше устройство, чтобы лучше отвечать на поисковые запросы и предоставлять пользователям актуальную информацию (например, местный прогноз погоды). Это местоположение можно определить по IP-адресу устройства, радиосигналу GPS, через ближайшую доступную точку доступа Wi-Fi и по номеру Cell ID.
Вы можете разрешить или запретить доступ к твое местонахождение. Выберите тип своего устройства и браузер из списков ниже:
Рабочий стол | Мобильное устройство | |
Яндекс.Браузер Google Chrome Mozilla Firefox Opera Internet Explorer Safari |
Android iOS Windows Phone |