Table of Contents

Controle externo de sensores do MegaTracker

Por padrão, o MegaTracker gerencia automaticamente as interfaces de escuta de dados do acelerômetro e do GNSS. No entanto, em alguns cenários de aplicativos complexos, os desenvolvedores podem precisar controlar manualmente a abertura e o fechamento dessas interfaces para obter um gerenciamento de energia mais refinado ou controle de permissões.

Antes de começar

Lógica de restrição de controle externo

Ao criar uma sessão MegaTrackerConfigs, você pode configurar as interfaces de escuta do sensor por meio de MegaTrackerSensorOptions.

Nome do parâmetro Tipo Valor padrão Descrição
isAcceExternalControl boolean false Se o acelerômetro é controlado externamente (pelo desenvolvedor).
isGeoExternalControl boolean false Se os dados GNSS são controlados externamente (pelo desenvolvedor).
Dica

Cenário de aplicação: Se o seu aplicativo não assina diretamente os dados do sensor além das funcionalidades do Mega, é recomendável manter o valor padrão false, que será tratado automaticamente pelo Mega.

Quando os parâmetros acima são definidos como true, os desenvolvedores devem seguir estritamente a seguinte ordem de chamada:

  • Fluxo de inicialização

Antes de chamar start(options), você deve garantir que o monitoramento do sensor correspondente tenha sido ativado manualmente:

Após chamar stop(), você pode desligar o monitoramento do sensor correspondente:

Cuidado

Aviso de conflito: Se definido como false (gerenciado pelo Mega), não chame a interface nativa do WeChat para parar o sensor durante a execução da sessão, caso contrário, causará interrupção dos dados.

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

session = megaComponent.createSession(megaTrackerConfigs);

Este exemplo demonstra como controlar externamente a ativação e desativação do monitoramento de dados de localização do WeChat. Antes de chamar start(options), você precisa chamar wx.startLocationUpdate para ativar o monitoramento de dados de localização do WeChat.