initialize static method

Context initialize({
  1. HttpOptions httpOptions = const HttpOptions(),
  2. LogOptions logOptions = const LogOptions(),
  3. PersonalDataCollectionConsent dataCollectConsent = PersonalDataCollectionConsent.granted,
  4. KeySource? keySource,
  5. VendorConfig? vendorConfig,
  6. LocationProvider? locationProvider,
  7. HeadingProvider? headingProvider,
})

Необходимо вызвать этот метод до начала работы с SDK. SDK Context инициализируется один раз, и при последующих вызовах возвращается созданный объект. При Hot Restart Context не пересоздается. Для того, чтобы поменять какие-то его параметры, нужен полный restart приложения. httpOptions задает настройки сетевого клиента. logOptions определяет параметры логирования. dataCollectConsent согласие на сбор данных и обработку данных. Источник ключа keySource используется для работы с сервисами SDK. Для переопределения конфигурации SDK нужно передать vendorConfig. Если передать null, то будет использоваться 'dgissdk.key' файл из assets. Для установки источника геопозиции необходимо передать реализацию locationProvider. Если передать null, то будет использоваться источник по умолчанию. Для установки источника направления необходимо передать реализацию headingProvider. Если передать null, то будет использоваться источник по умолчанию. Результатом инициализации SDK является sdkContext, необходимый для работы сервисов SDK.

Implementation

static Context initialize({
  HttpOptions httpOptions = const HttpOptions(),
  LogOptions logOptions = const LogOptions(),
  PersonalDataCollectionConsent dataCollectConsent =
      PersonalDataCollectionConsent.granted,
  KeySource? keySource,
  VendorConfig? vendorConfig,
  LocationProvider? locationProvider,
  HeadingProvider? headingProvider,
}) {
  _sdkContext ??= makeSystemContext(
    keySource ?? KeySource.fromAsset(const KeyFromAsset('dgissdk.key')),
    httpOptions,
    logOptions,
    dataCollectConsent,
    vendorConfig ?? VendorConfig.none(),
    locationProvider,
    headingProvider,
  );
  return _sdkContext!;
}