Problemas conhecidos e limitações do plug-in wechat mini program mega
Este artigo apresenta problemas conhecidos e limitações ao usar o plug-in Mega para mini programas.
Problemas conhecidos do wechat
Defeitos atuais confirmados no xr-frame ou VisionKit do WeChat. Quando ocorrem, causam falha na funcionalidade AR. Por favor, esteja atento aos cenários de gatilho durante o desenvolvimento.
Detecção de plano anormal do wechat
Em circunstâncias específicas (como grandes paredes brancas na imagem, câmera obstruída por longos períodos, etc.), a detecção de planos fornecida pelo WeChat pode apresentar estado anormal. Neste estado, o MegaTracker não funciona normalmente.
Manejo de referência Tratamento de anomalias do rastreador AR planar.
Tempo de inicialização da session longo
A AR Session precisa aguardar a conclusão da inicialização da detecção de planos do WeChat para finalizar sua inicialização. Em alguns casos, a inicialização da detecção de planos do WeChat leva mais tempo.
Para entender por que a AR Session precisa aguardar a inicialização do ARTracker do xr-frame, consulte Como o MegaTracker funciona no xr-frame.
- Referência de estado: Documentação de estado do rastreador AR do mini programa wechat.
- Exemplo de escuta:
<xr-ar-tracker id="xrARTracker" mode="Plane" bind:ar-tracker-state="handleARTrackerState"></xr-ar-tracker>
handleARTrackerState({detail}) {
if (detail.value.state == xrFrameSystem.EARTrackerState.Detected) {
console.log('Plano agora detectado pelo ARTracker do XR-Frame.');
}
}
worldPosition do nó não é atualizado imediatamente no quadro atual
Neste exemplo, trs.worldPosition não é atualizado prontamente:
public onTick(delta, data) {
const trs = this.el.getComponent(xrFrameSystem.Transform);
// WorldPosition do nó antes da atualização
console.log(`World Position antes da atualização: ${trs.worldPosition.x}, ${trs.worldPosition.y}, ${trs.worldPosition.z}`);
// LocalPosition do nó antes da atualização
console.log(`Local Position antes da atualização: ${trs.Position.x}, ${trs.Position.y}, ${trs.Position.z}`);
trs.position.x += 0.1;
trs.position.y += 0.1;
trs.position.z += 0.1;
// WorldPosition do nó não atualizado
console.log(`World Position após atualização: ${trs.worldPosition.x}, ${trs.worldPosition.y}, ${trs.worldPosition.z}`);
// LocalPosition do nó atualizado
console.log(`Local Position após atualização: ${trs.Position.x}, ${trs.Position.y}, ${trs.Position.z}`);
}
Durante o desenvolvimento, é recomendado usar sempre LocalTransform, ou seja, el.getComponent(xrFrameSystem.Transform).position e el.getComponent(xrFrameSystem.Transform).rotation.
Anomalia na alternância de orientação da tela
Se "auto" for inserido em window na configuração global app.json do mini programa wechat.
Se o dispositivo sair do mini programa no modo paisagem e retornar no modo retrato, ocorrerá anomalia na imagem AR.
Portanto, nunca use "auto" em aplicativos de mini programa AR.
Restrições de uso
Requisitos rígidos para a operação da funcionalidade. Não atendidos, a funcionalidade fica indisponível, mas pode ser evitada ajustando configurações ou ambiente.
Restrições de modelo de dispositivo
Dispositivos executando o plug-in Mega para mini programas precisam suportar pelo menos a interface de plano VisionKit V1 do wechat. Para resultados ideais, recomenda-se usar dispositivos compatíveis com a interface de plano VisionKit V2 do wechat.
Lista de modelos compatíveis: Consulte Lista de suporte para interface de plano AR V2.
Método rápido de verificação:
- Digitalize o código QR da amostra oficial do mini programa wechat.

- Após entrar no mini programa, navegue até Interface > Capacidade visual VisionKit > AR de plano horizontal-v2 para verificar rapidamente se o dispositivo atual é compatível.
- Digitalize o código QR da amostra oficial do mini programa wechat.
Se precisar usar serviços Mega em dispositivos não compatíveis com VisionKit, consulte Melhores práticas para cenários de navegação para usar o produto de navegação AR Vision+ compatível com quase todos os dispositivos.
Configuração forçada do PlaneMode
Devido a limitações no suporte de algumas interfaces do WeChat, planeMode deve ser definido como 1.
<xr-scene ar-system="modes:Plane; planeMode: 1" bind:ready="handleReady">
Limitações da funcionalidade GPS
Alinhamento de Block via GPS ainda não é suportado.
Posicionamento de dados de anotação via GPS ainda não é suportado.