Если вы хотите добавить в свой проект вместо Google Maps API 2GIS, вам понадобятся следующие действия:
Шаг 1: Регистрация в 2GIS API
Перед тем как начать использовать 2GIS API, вам необходимо зарегистрироваться на сайте разработчиков 2GIS (https://help.2gis.ru/developers/new/) и получить доступный вам ключ API.
Шаг 2: Добавление зависимостей
Добавьте зависимости 2GIS API в свой проект. Для этого вам понадобится включить следующие строки в файле "build.gradle" вашего проекта:
dependencies { implementation 'ru.dgis.sdk:sdk-core:2.3.0' implementation 'ru.dgis.sdk:sdk-map:2.3.0' }
Если вы используете Maven, добавьте следующие строки в файл "pom.xml":
<dependencies> <dependency> <groupId>ru.dgis.sdk</groupId> <artifactId>sdk-core</artifactId> <version>2.3.0</version> </dependency> <dependency> <groupId>ru.dgis.sdk</groupId> <artifactId>sdk-map</artifactId> <version>2.3.0</version> </dependency> </dependencies>
Шаг 3: Инициализация карты
Вам нужно инициализировать карту 2GIS. Например, если вы используете JavaFX, вы можете добавить следующий код в вашу инициализацию приложения:
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.stage.Stage; import ru.dgis.sdk.coordinates.GeoPoint; import ru.dgis.sdk.coordinates.GeoPointBounds; import ru.dgis.sdk.map.MapView; import ru.dgis.sdk.map.MapOptions; import ru.dgis.sdk.map.MapOptions.GeoCenterMode; import ru.dgis.sdk.map.MapOptions.MapRotationMode; import ru.dgis.sdk.map.MapOptions.GeoPointBoundsMode; public class MainApp extends Application { @Override public void start(Stage primaryStage) throws Exception { MapOptions mapOptions = new MapOptions( new GeoPoint(55.751244, 37.618423), GeoCenterMode.CENTER, 15, GeoPointBoundsMode.LIMIT, MapRotationMode.NO_ROTATE ); MapView mapView = new MapView(mapOptions); BorderPane root = new BorderPane(); root.setCenter(mapView); Scene scene = new Scene(root, 800, 600); primaryStage.setTitle("2GIS Map"); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
Этот код создаст и отобразит карту 2GIS внутри JavaFX-приложения, инициализируя ее с центром в Москве (координаты 55.751244, 37.618423), масштаб 15 и без возможности вращения карты.
Шаг 4: Добавление маркеров и объектов на карту
Чтобы добавить маркеры и объекты на карту 2GIS, вам понадобится работать с комикс. Вот пример кода, показывающий, как добавить маркер на карту:
import ru.dgis.sdk.geometry.GeoPoint; import ru.dgis.sdk.map.MapMarker; import ru.dgis.sdk.map.MapObjectHolder; import ru.dgis.sdk.map.MapView; MapView mapView = ... // получаем MapView из своего приложения MapObjectHolder mapObjectHolder = mapView.getMap().getMapObjectHolder(); GeoPoint markerLocation = new GeoPoint(latitude, longitude); MapMarker marker = new MapMarker(markerLocation); mapObjectHolder.add(marker);
Вместо latitude
и longitude
вы должны указать координаты вашего маркера.
Шаг 5: Дополнительная функциональность
2GIS API предлагает множество других возможностей, таких как отображение путевых точек, определение маршрутов, работа с геокодированием и т. д. Вы можете ознакомиться с официальной документацией 2GIS API (https://help.dgis.ru/api/) для получения полного списка функций и примеров использования.
Оживлять карту 2GIS вместо Google Maps API несложно, но требует некоторых дополнительных действий. Надеюсь, эта информация будет полезной для вас при добавлении 2GIS API в ваш проект на Java.