Начало работы
Инициализация SDK
-
Обратитесь в службу поддержки 2ГИС для получения ключа доступа. Обязательно укажите
appIdприложения, для которого будет создан ключ. Подробнее см. в разделе Получение ключей доступа. -
Добавьте полученный файл ключа
dgissdk.keyвassetsприложения. -
Вызовите метод initialize() объекта DGis, указав контекст приложения:
import 'package:dgis_mobile_sdk_map/dgis.dart' as sdk;
class SomeApp extends StatelessWidget {
final sdkContext = sdk.DGis.initialize();
}Важно
Contextможет быть создан только в единственном экземпляре. -
Дополнительно вы можете указать настройки журналирования LogOptions и настройки HTTP-клиента HttpOptions, например таймаут запроса:
import 'package:dgis_mobile_sdk_map/dgis.dart' as sdk;
class SomeApp extends StatelessWidget {
final sdkContext = sdk.DGis.initialize(
logOptions: const sdk.LogOptions(
customLevel: sdk.LogLevel.verbose,
systemLevel: sdk.LogLevel.verbose,
),
httpOptions: const sdk.HttpOptions(
timeout: Duration(seconds: 5),
),
);
}
Vendor Config
Для переопределения некоторых настроек работы SDK используется файл в формате VendorConfig, который передается при инициализации SDK.
Существует несколько способов создать экземпляр класса VendorConfig:
VendorConfigFromAsset— файл необходимо расположить в каталогеassetsисходного кода приложения и указать имя файла в конструкторе.VendorConfigFromFile— файл необходимо расположить в файловой системе устройства и указать абсолютный путь до него.VendorConfigFromString— в конструктор необходимо передать строку с содержимым файла формата JSON.
Созданный экземпляр VendorConfig передается в метод DGis.initialize() параметром vendorConfig.
Работа с офлайн-данными
Мобильный SDK (версия Full) позволяет работать с данными карты, справочника и навигатора офлайн из предзагруженных пакетов. Это может быть полезно в условиях плохой связи или при её полном отсутствии.
Чтобы настроить работу в режиме офлайн:
- Убедитесь, что ваш ключ доступа содержит необходимые права для работы с офлайн-данными. Вы можете запросить права на офлайн-данные всех компонентов (карта, справочник, построение маршрутов) или выбрать только необходимые.
- Скачайте файлы с данными для территорий, где необходима офлайн-работа приложения, через TerritoryManager.
-
Настройте компоненты SDK для работы с предзагруженными данными:
- Карта: создайте источник данных и укажите нужный режим работы.
- Справочник: используйте нужный метод для создания справочника объектов.
- Построение маршрутов: по умолчанию настроен гибридный режим. Подробнее см. документацию о маршрутах.
Язык приложения
Чтобы установить язык приложения, передайте список локалей (Locale) в методе overrideLocales() класса LocaleManager.
В зависимости от выбранной локали меняется язык звуковых оповещений в навигаторе.
Пример установки англоязычной локали:
import 'package:dgis_mobile_sdk_map/dgis.dart' as sdk;
// Создание объекта Locale с указанием языка и региона
final locale = sdk.Locale(language: sdk.Language("en"), region: sdk.Region("EN"));
// Установка локали для приложения
sdk.getLocaleManager(sdkContext).overrideLocales([locale]);
Доступные значения языков (параметры language и region соответственно):
ru-RU— русский;en-EN— английский;ar-AE— арабский.