Мегатрекер внешнее управление датчиками
По умолчанию Мегатрекер автоматически управляет интерфейсами прослушивания данных акселерометра и ГНСС. Однако в сложных сценариях разработчикам может потребоваться вручную управлять включением и выключением этих интерфейсов для более точного управления энергопотреблением или контроля разрешений.
Перед началом
- Ознакомьтесь с концепцией и рабочим процессом Мегатрекера
Логика ограничений внешнего управления
При создании сессии MegaTrackerConfigs можно настроить интерфейсы прослушивания датчиков через MegaTrackerSensorOptions.
| Имя параметра | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
| isAcceExternalControl | boolean |
false |
Управляется ли акселерометр внешне (разработчиком). |
| isGeoExternalControl | boolean |
false |
Управляются ли данные ГНСС внешне (разработчиком). |
Совет
Сценарии применения: если ваше приложение, помимо функций Мега, само не подписывается напрямую на данные датчиков, рекомендуется оставить значение по умолчанию false, чтобы Мега обрабатывал автоматически.
Когда указанные параметры установлены в true, разработчик должен строго соблюдать следующий порядок вызовов:
- Процесс запуска
Перед вызовом start(options) необходимо вручную включить соответствующее прослушивание датчиков:
Акселерометр: вызов wx.startAccelerometer.
ГНСС: вызов wx.startLocationUpdate.
Процесс остановки
После вызова stop() можно отключить соответствующее прослушивание датчиков:
Акселерометр: вызов wx.stopAccelerometer.
ГНСС: вызов wx.stopLocationUpdate.
Осторожно
Предупреждение о конфликте: если установлено значение 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 для включения прослушивания.