Table of Contents

Мегатрекер внешнее управление датчиками

По умолчанию Мегатрекер автоматически управляет интерфейсами прослушивания данных акселерометра и ГНСС. Однако в сложных сценариях разработчикам может потребоваться вручную управлять включением и выключением этих интерфейсов для более точного управления энергопотреблением или контроля разрешений.

Перед началом

Логика ограничений внешнего управления

При создании сессии MegaTrackerConfigs можно настроить интерфейсы прослушивания датчиков через MegaTrackerSensorOptions.

Имя параметра Тип Значение по умолчанию Описание
isAcceExternalControl boolean false Управляется ли акселерометр внешне (разработчиком).
isGeoExternalControl boolean false Управляются ли данные ГНСС внешне (разработчиком).
Совет

Сценарии применения: если ваше приложение, помимо функций Мега, само не подписывается напрямую на данные датчиков, рекомендуется оставить значение по умолчанию false, чтобы Мега обрабатывал автоматически.

Когда указанные параметры установлены в true, разработчик должен строго соблюдать следующий порядок вызовов:

  • Процесс запуска

Перед вызовом start(options) необходимо вручную включить соответствующее прослушивание датчиков:

После вызова stop() можно отключить соответствующее прослушивание датчиков:

Осторожно

Предупреждение о конфликте: если установлено значение false (управление Мега), нельзя вызывать нативные интерфейсы остановки датчиков WeChat во время работы Сессии, это приведет к прерыванию данных.

const megaTrackerSensorOptions: easyar.MegaTrackerSensorOptions = {
    isAcceExternalControl: false,
    isGeoExternalControl: true
};
const megaTrackerConfigs: easyar.MegaTrackerConfigs = {
    access: apiKeyAccess,
    options: megaTrackerSensorOptions
};

session = megaComponent.createSession(megaTrackerConfigs);

Этот пример демонстрирует, как внешне управлять включением и выключением прослушивания геолокационных данных WeChat. Перед вызовом start(options) необходимо вызвать wx.startLocationUpdate для включения прослушивания.